piermesh/docs/run.md

89 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PierMesh service runner
Main method for running the PierMesh service
### *class* run.Node
Class that handles most of the PierMesh data
[🔗 Source](https://git.utopic.work/PierMesh/piermesh/src/branch/main/src/run.py)
#### *async* action_initNodeDH(data: dict)
Initialize diffie hellman key exchange
#### SEE ALSO
[`Cryptography.DHEFern.DHEFern`](/PierMesh/piermesh/src/branch/main/docs/Cryptography/DHEFern.md#Cryptography.DHEFern.DHEFern)
: End to end encryption functionality
#### *async* action_keyDeriveDH(data: dict)
Derive key via diffie hellman key exchange
#### *async* action_map(data: dict)
Map new network data to internal network map
#### SEE ALSO
`Bubble.network.Network`
: Layered graph etwork representation
#### *async* action_sendCatch(data: dict)
Get catch and return the data to a peer
#### SEE ALSO
[`Bubble.router.Router`](/PierMesh/piermesh/src/branch/main/docs/Bubble/router.md#Bubble.router.Router)
: Routing class
#### *async* action_sendToPeer(data: dict)
Send data to a peer connected to the server
* **Parameters:**
**data** (*dict*) Data passed from the filter, this is a generic object so its similar on all actions here
#### SEE ALSO
`Filters.Protocols`
: Protocol based packet filtering
`webui.serve.Server`
: Runs a light Microdot web server with http/s and websocket functionality
`webui.serve.Server.sendToPeer`
: Function to actually execute the action
#### cLog(priority: int, message: str)
Convenience function that logs to the ui and log files
* **Parameters:**
* **priority** (*int*) Priority of message to be passed to logging
* **message** (*str*) Message to log
* **Return type:**
None
#### *async* fListen()
Loop to watch for tasks to do
#### SEE ALSO
`Filters.base.sieve`
: Packet filtering/parsing
### Notes
We use a common technique here that calls the function from our preloaded actions via dictionary entry
#### *async* monitor()
Monitor and log ram and cpu usage
#### toLog
We store logs to be processed here
#### SEE ALSO
`logPassLoop`
: Loop to handle logging to file and TUI