Discovery
- Send Device::GetService as a UDP broadcast to port 56700 with the Frame tagged field set to one (1).
- All devices on LAN should respond back with one or more Device::StateService messages.
- Clients can then send further messages directly to individual devices or broadcast them.


Request with acknowledgement
- Discover devices as above.
- Set the source field with a unique 32-bit number, it does not have to be globally unique.
- Use the wrap around sequence as a message id.
- Set the ack_required field to 1
- Send message and it is acknowledged with Device::Acknowledgement having same source and sequence.


Request with response
- Discover devices as above.
- Set the source field with a unique 32-bit number, it does not have to be globally unique.
- Use the wrap around sequence as a message id.
- Set the res_required field to 1
- Send message and a corresponding semantic reply is sent back having same source and sequence.


Request with acknowledgement and response
- This is a mix of the above 2 workflows.
- The device sends back an acknowledgment initially and then a corresponding semantic reply.


Updated less than a minute ago