Websocket protocol
Websocket protocol used is very simple:
The client open the connection
The client send his unique id
The server starts pushing program output in lines
This is a simple diagram with possible codes:
(Client) (Server)
open() ----------->
send(unique_id) ----------->
Start the pushing
notifications with
the output of the
task
<-----------
<-----------
...
<----------- close()
Status Codes
1000: all ok
1002: terminated because too much time passed after the connection without sending a unique ID
1008: invalid unique id or an elaboration was already performed for that id
1011: analysis of files failed. Check your files
1016: elaboration not possible. Passed too much time from unique id creation and request of elaboration