Dunque, io oramai mi sono perso tra i vari esempi di web server.
Non ricordo email inviate, in quell'esempio (ma o ricordo male io oppure parliamo di due esempi diversi).
Comunque, sì, il dispositivo può inviare messaggi al server.
"Posto" (bleah) il codice lato client:
'Raises an event on the server. The Event parameter must include an underscore
Public Sub SendEventToServer(Event As String, Data As Map)
Dim m As Map
m.Initialize
m.Put("type", "event")
m.Put("event", Event)
m.Put("params", Data)
Dim jg As JSONGenerator
jg.Initialize(m)
ws.SendText(jg.ToString)
End Sub
Quindi il parametro Event dovrà contenere il nome della routine pubblica sul Server (comprendente un carattere underscore "_") ed il parametro Data i dati da inviare, ad esempio un semplice messaggio di testo.
Ad esempio, dal client:
Private Data as Map : Data.Initialize
Data.Put("message", "Messaggio dal dispositivo")
SendEventToServer("Mia_Routine", Data)
Nel server, in un modulo di classe di "tipo" "server websocket":
Public Sub Mia_Routine(Data as Map)
Log("Client message: " & Params.get("message"))
End Sub