publish method
Publishes an event to the server.
Implementation
@override
Future publish(String eventName, value) {
return _whenConnected(() {
var c = Completer<Map>();
var requestId = _uuid.v4();
_requests[requestId] = c;
serverSendPort.send(
MessageHandler().encodePublishRequestMessage(
_id,
requestId,
clientId,
eventName,
value,
),
);
return c.future.then((result) {
var (_, clientId) = MessageHandler().decodePublishResponseMessage(
result as Map<String, Object?>,
);
_clientId = clientId;
});
});
}