sendMessage method

  1. @override
Future<Message> sendMessage(
  1. ConversationHandle conversation,
  2. String messageJson, {
  3. String? extraContextJson,
})
override

Implementation

@override
Future<Message> sendMessage(
  ConversationHandle conversation,
  String messageJson, {
  String? extraContextJson,
}) async {
  if (extraContextJson != null) {
    throw UnsupportedError(
      'Per-message extraContext is not supported by the LiteRT-LM JS SDK. '
      'Use ConversationConfig.extraContext on web.',
    );
  }
  final jsConversation = conversation as _WebConversationHandle;
  final response = await _promiseToFuture<JSObject>(
    jsConversation.conversation.callMethod<JSPromise<JSObject>>(
      'sendMessage'.toJS,
      _parseJson(messageJson),
    ),
  );
  return Message.fromJsonString(_stringifyJson(response));
}