fluttium_protocol

Last updated:

0 purchases

fluttium_protocol Image
fluttium_protocol Images
Add to Cart

Description:

fluttium protocol

The protocol for the communication between the runner and the driver of Fluttium.

The protocol is used to communicate from the Fluttium runner to the Fluttium driver. It exists out
of three parts: Message, Emitter and the Listener.
The Message describes a single message being send from the runner to the driver. It has a type
that indicates what type of message it is and depending on that type it's data is different:

start: String the step that is starting
done: String the step that is done
fail: List<String> with the step and the reason
store: List<dynamic> with the file name and then list of bytes.

The Emitter then handles emitting a message from the runner to the driver. The message can contain
quite a bit of data, for instance storing a screenshot, and for that reason the Emitter emits the
message in chunks. Firstly it emits a start object:
{"type": "start"}
copied to clipboard
After that it will emit one or more data chunks that make up the Message:
{"type": "data", "data": "... data ..."}
copied to clipboard
Each data chunk's data should be stored until the done object has been received:
{"type": "done"}
copied to clipboard
Once the done object has been received the data can be parsed as JSON and passed to the
Message.fromJson constructor.
Listening to the data from an Emitter can be done by applying the logic above, or by using the
Listener which expects a Stream of raw utf8 bytes. It assumes that any prefix to the messages,
like flutter: added by Flutter, are removed by the one using the listener.
Once the listener has successfully constructed an emitted message it will add it to the messages
stream.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.