new more complicated mesh code
This commit is contained in:
parent
a84a19ec0d
commit
740b896d18
5 changed files with 109 additions and 36 deletions
|
@ -33,12 +33,13 @@ class MeshMessageType(CEnum):
|
|||
|
||||
MESH_SIGNIN = "MESH_SIGNIN", 0x03
|
||||
MESH_LAYER_ANNOUNCE = "MESH_LAYER_ANNOUNCE", 0x04
|
||||
MESH_ADD_DESTINATIONS = "MESH_ADD_DESTINATIONS", 0x05
|
||||
MESH_ADD_DESTINATION = "MESH_ADD_DESTINATION", 0x05
|
||||
MESH_REMOVE_DESTINATIONS = "MESH_REMOVE_DESTINATIONS", 0x06
|
||||
MESH_ROUTE_REQUEST = "MESH_ROUTE_REQUEST", 0x07
|
||||
MESH_ROUTE_RESPONSE = "MESH_ROUTE_RESPONSE", 0x08
|
||||
MESH_ROUTE_TRACE = "MESH_ROUTE_TRACE", 0x09
|
||||
MESH_ROUTING_FAILED = "MESH_ROUTING_FAILED", 0x0a
|
||||
MESH_SIGNIN_CONFIRM = "MESH_SIGNIN_CONFIRM", 0x0b
|
||||
|
||||
CONFIG_DUMP = "CONFIG_DUMP", 0x10
|
||||
CONFIG_HARDWARE = "CONFIG_HARDWARE", 0x11
|
||||
|
@ -101,9 +102,9 @@ class MeshLayerAnnounceMessage(discriminator_value(msg_type=MeshMessageType.MESH
|
|||
layer: Annotated[PositiveInt, Lt(2 ** 8), CDoc("mesh layer that the sending node is on")]
|
||||
|
||||
|
||||
class MeshAddDestinationsMessage(discriminator_value(msg_type=MeshMessageType.MESH_ADD_DESTINATIONS), BaseModel):
|
||||
class MeshAddDestinationMessage(discriminator_value(msg_type=MeshMessageType.MESH_ADD_DESTINATION), BaseModel):
|
||||
""" downstream node announces served destination """
|
||||
addresses: Annotated[list[MacAddress], MaxLen(16), VarLen(), CDoc("adresses of the added destinations",)]
|
||||
address: Annotated[MacAddress, CDoc("address of the added destination",)]
|
||||
|
||||
|
||||
class MeshRemoveDestinationsMessage(discriminator_value(msg_type=MeshMessageType.MESH_REMOVE_DESTINATIONS), BaseModel):
|
||||
|
@ -134,6 +135,11 @@ class MeshRoutingFailedMessage(discriminator_value(msg_type=MeshMessageType.MESH
|
|||
address: MacAddress
|
||||
|
||||
|
||||
class MeshSigninConfirmMessage(discriminator_value(msg_type=MeshMessageType.MESH_SIGNIN_CONFIRM), BaseModel):
|
||||
""" Confirm signin from root node """
|
||||
address: MacAddress
|
||||
|
||||
|
||||
class ConfigDumpMessage(discriminator_value(msg_type=MeshMessageType.CONFIG_DUMP), BaseModel):
|
||||
""" request for the node to dump its config """
|
||||
pass
|
||||
|
@ -307,12 +313,13 @@ MeshMessageContent = Annotated[
|
|||
EchoResponseMessage,
|
||||
MeshSigninMessage,
|
||||
MeshLayerAnnounceMessage,
|
||||
MeshAddDestinationsMessage,
|
||||
MeshAddDestinationMessage,
|
||||
MeshRemoveDestinationsMessage,
|
||||
MeshRouteRequestMessage,
|
||||
MeshRouteResponseMessage,
|
||||
MeshRouteTraceMessage,
|
||||
MeshRoutingFailedMessage,
|
||||
MeshSigninConfirmMessage,
|
||||
ConfigDumpMessage,
|
||||
ConfigHardwareMessage,
|
||||
ConfigBoardMessage,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue