publishPayload method
Future<void>
publishPayload({
- required Map<
String, dynamic> payload, - required PublishOptions options,
override
Implementation
@override
Future<void> publishPayload({
required Map<String, dynamic> payload,
required PublishOptions options,
}) async {
_checkInitialized();
final Map<String, dynamic> parameters = {...payload, ...options.toMap()};
core.logger.d('[$runtimeType] publishPayload, $parameters');
try {
if (options.publishMethod == RelayClient.WC_PROPOSE_SESSION) {
final topic = payload['pairingTopic'];
final message = payload['sessionProposal'];
await messageTracker.recordMessageEvent(topic, message);
} else {
final topic = payload['sessionTopic'];
final message = payload['sessionProposalResponse'];
await messageTracker.recordMessageEvent(topic, message);
}
final _ = await _sendJsonRpcRequest(
id: JsonRpcUtils.payloadId(entropy: 6),
method: _buildWCMethod(options.publishMethod!),
parameters: parameters,
);
} catch (e, s) {
core.logger.e('[$runtimeType], publishPayload: $e, $s');
onRelayClientError.broadcast(ErrorEvent(e));
}
}