invokeNowait method

void invokeNowait({
  1. required String toolkit,
  2. required String tool,
  3. Content? input,
  4. String? participantId,
  5. String? onBehalfOfId,
  6. Map<String, dynamic>? callerContext,
})

Implementation

void invokeNowait({
  required String toolkit,
  required String tool,
  Content? input,
  String? participantId,
  String? onBehalfOfId,
  Map<String, dynamic>? callerContext,
}) {
  final resolvedInput = input ?? EmptyContent();
  final packedInput = unpackMessage(resolvedInput.pack());
  final request = <String, dynamic>{
    'toolkit': toolkit,
    'tool': tool,
    'participant_id': participantId,
    'on_behalf_of_id': onBehalfOfId,
    'caller_context': callerContext,
    'tool_call_id': _uuid.v4(),
    'arguments': packedInput.header,
  };
  _sendRoomRequestNowait(
    'room.invoke_tool',
    request,
    data: packedInput.payload.isEmpty ? null : packedInput.payload,
    label: '$toolkit.$tool',
    expectResponse: true,
  );
}