The capture function (QR code scan) uses a servlet (AtmosphereServlet) to establish a connection to the messaging broker RabbitMQ (https://www.rabbitmq.com/download.html), which must be accessible from the webSignatureOffice server.
The AtmosphereServlet communicates with the browser listening on a channel named like the capture id / adhoc code.
4 "commands" are possible to control the viewer:
the url is built as follows: https://host:8443/atmosphereServlet/adhoc/capture_id?a=2&p=1&f=59675
a = action, p = page, f=signature field id
CODE_REQUESTED (a=1): qrcode disappears and the viewer scrolls to the first field
SIGNED (a=2): the viewer removes the signature field borders and reloads the page, needed parameters f, p
SHOW (a=3): the viewer scrolls to the signature field, needed parameters f
CANCEL (a=4): the viewer cancels the signature process
16:12:38.592 [http-bio-8443-exec-763] INFO TyrService - calling atmosphere servlet:
https://host:8443/atmosphereServlet/adhoc/gossa4a?a=3&f=59675
Flow chart communication frigg <> RabbitMQ Server