piermesh/docs/run.md

89 lines
2.0 KiB
Markdown
Raw Normal View History

2024-07-28 11:21:15 +00:00
# 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
2024-07-29 03:47:27 +00:00
`Siph.network.Network`
2024-07-28 11:21:15 +00:00
: Layered graph etwork representation
#### *async* action_sendCatch(data: dict)
Get catch and return the data to a peer
#### SEE ALSO
`Bubble.router.Router`
2024-07-28 11:21:15 +00:00
: 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
2024-07-29 03:47:27 +00:00
#### *async* monitor()
Monitor and log ram and cpu usage
#### *async* spongeListen()
2024-07-28 11:21:15 +00:00
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
#### toLog
We store logs to be processed here
#### SEE ALSO
`logPassLoop`
: Loop to handle logging to file and TUI