nymea-remoteproxy/docs/remote-connection-basic-flo...

41 lines
1.2 KiB
Plaintext

title Remote tunnel proxy
nymea->proxy: TunnelProxy.RegisterServer(serverUuid, serverName)
note over proxy: Register the server using the uuid
nymea<-proxy: TunnelProxyErrorNoError
note over nymea, proxy: Protocol from now on SLIP\nThe proxy is client 0x0000
note over nymea, proxy: SLIP encoded data: 2 Bytes address + data
proxy<-client: TunnelProxy.RegisterClient(clientUuid, clientName, serverUuid)
note over proxy: Search server with given uuid
note over proxy: Server: Assign address for this client socket (0x0001)
proxy->nymea: SLIP:0x0000: ProxyTunnel.ClientConnected (address: 0x0001)
proxy->client: TunnelProxyErrorNoError
note over client: Connected\nAny incomming and outgoing data will\nbe from the connected nymea instance\nuntil disconnected.
note over nymea, client: Connected: The client can now communicate with nymea directly.\nThe proxy will not interpret any data from the client, and from the server only\nthe transmission frame (SLIP + 2 bytes of address)
proxy<-client: "request data"
nymea<-proxy: SLIP:0x0001 "request data"
nymea->proxy: SLIP:0x0001 "response data"
proxy->client: "response data"
nymea->proxy: SLIP:0x0001 "notification data"
proxy->client: "notification data"