Skip to content

Sockets

Jacques DAFFLON edited this page Aug 19, 2013 · 10 revisions
Disclaimer

This pages does not reflect the current implementation of the sockets. It only list the future events which will be supported.

Namespaces

This sections list all the server's namespaces and the list of events they handle. It is subject to changes without notice.

Namespaces with the CC indication require the client to be whitelisted and have the canControl field set to true to be granted access. Namespaces with the MV indication have an authentication process which may vary according to the session's settings.

  • CC /ctrl : Namespace which allows for the control of the session. It gets notified of submission events from the /folo namespace. It is also informed of any client connection/disconnection from any namespaces, including itself.
    The /ctrl namespace handle the following events:

    • Server:
      • asq:goto
      • asq:gotosub
      • asq:terminate
    • Client:
      • asq:goto
      • asq:gotosub
      • asq:terminated
      • asq:submitted
      • asq:ctrl-connected
      • asq:folo-connected
      • asq:wtap-connected
      • asq:stat-connected
      • asq:ctrl-disconnected
      • asq:folo-disconnected
    • asq:wtap-disconnected
    • asq:stat-disconnected
  • MV /folo : Gets updated with the current status (position) of the session. It also handle user submissions from the questions asked during the session. It is informed of any connection/disconnection to the '/ctrl' namespace and to itself. The number of clients to this namespace represent the number of viewers in the session.
    The /folo namespace handle the following events:

    • Server:
      • asq:submit
    • Client:
      • asq:goto
      • asq:gotosub
      • asq:terminated
      • asq:ctrl-connected
      • asq:folo-connected
      • asq:ctrl-disconnected
      • asq:folo-disconnected
  • CC /wtap : Similar to /folo except that it does not allow for user submissions and it is not notified of connections/disconnections to its own namespace. (But it does for connections/disconnections from the '/ctrl' &'/folo' namespaces.) It is also not included in the number of viewers of a session.
    The '/wtap' namespace handle the following events:

    • Server:
      • none
    • Client:
      • asq:goto
      • asq:gotosub
      • asq:terminated
      • asq:ctrl-connected
      • asq:folo-connected
      • asq:ctrl-disconnected
      • asq:folo-disconnected
  • CC /stat : Get's updated with the current status (position) of the session. This namespace receives the live updates of the statistics of the namespace. This includes the number of users (from '/folo'), answer to questions, etc...
    The '/ctrl' namespace handle the following events:

    • Server:
      • none
    • Client:
      • asq:goto
      • asq:gotosub
      • asq:terminated
      • asq:submitted
      • asq:ctrl-connected
      • asq:folo-connected
      • asq:ctrl-disconnected
      • asq:folo-disconnected

Events

This sections list all the events and is subject to changes.

  • Server :

    • asq:goto : Request to go to a specific slide.
    • asq:gotosub : Request to go to a specific substep in a slide.
    • asq:submit : Submit a possible answer to a question.
    • asq:terminate : Ask the session to terminate.

    In addition, the server must handle the default connection and disconnect socket events.

  • Client :

    • asq:goto : Go to a specific slide.
    • asq:gotosub : Go to a specific substep in a slide.
    • asq:submitted : Indicate a new submission.
    • asq:terminated : Indicate the session was terminated.
    • asq:ctrl-connected : Indicate a new connection on the /ctrl namespace.
    • asq:folo-connected : Indicate a new connection on the /folo namespace.
    • asq:wtap-connected : Indicate a new connection on the /wtap namespace.
    • asq:stat-connected : Indicate a new connection on the /stat namespace.
    • asq:ctrl-disconnected : Indicate a client disconnected from the '/ctrl' namespace.
    • asq:folo-disconnected : Indicate a client disconnected from the '/folo' namespace.
    • asq:wtap-disconnected : Indicate a client disconnected from the '/wtap' namespace.
    • asq:stat-disconnected : Indicate a client disconnected from the '/stat' namespace.

    In addition, the client must handle the following default socket events:

    • connect
    • connecting
    • disconnect
    • connect_failed
    • error
    • reconnect_failed
    • reconnect
    • reconnecting
Clone this wiki locally