Skip to main content

Processing

This service follows the following steps:

info

The steps described here are highly simplified. To get a full understanding of this service, take a look at the "knowing more" series on the ASE website.

  1. It opens a webRTC connection to the passthrough server as defined in its service.yaml
  2. It opens read streams from all available services, as passed by roverd. For each service, it creates a new ZMQ subscriber socket
  3. In the main loop, it iterates over all the opened subscriber sockets in a non-blocking fashion (using ZMQ DONTWAIT).
    • If there is data available, it will be wrapped in a DebugOutput message which is tagged with the metadata of the service that produced the original data. This message is then serialized and split up into one or more segmentation messages to stay within the maximum UDP packet size. Then it will be sent to the passthrough server.
  4. If it receives a TuningState message from the passthrough server, it will write this message to its transceiver stream, as defined in its service.yaml