Real-time questions management

Imatge
Question mark (https://openclipart.org/detail/280803/slightly-styled-question-mark)

Creation of a Drupal 8 platform allowing to moderate in real time questions asked during a programme:

  • Questions asked from a remote website are sent via web service (REST calls making use of the interface provided by JSON API).
  • When a new question is created, Drupal notifies a websocket server (in that case built upon Ratchet) thanks to the ZMQ asynchronous messaging library.
  • Questions are displayed in real time on the admin interface (websocket), which makes heavy use of JavaScript to re-order, archive, remove them, or send questions onto the set or highlight them. Again, AJAX calls rely on JSON API (from now on packaged in Drupal 8 core).
  • The display on the set is updated in real time by listening to new messages coming through another websocket (Web Application Messsaging Protocol or WAMP, which is a PubSub protocol).