Sending Chat Messages

Platform Support

PlatformAvailableSupported RecipientsLimitations
Zoomeveryone, host, everyone_except_host4096 character limit
Google Meeteveryone500 character limit
Microsoft Teamseveryone4096 character limit
Slack Huddleseveryone
Cisco Webex

📘

Note about Microsoft Teams

The Teams chat window may not be available for bots by default, due to the organization's settings.

For bots to be able to send chat messages in Teams calls, they must have access to the chat. To have access to the chat, one of two things must happen:

  1. The tenant has configured their meeting chat settings to allow anyone to chat.
  2. The tenant allows authenticated users to chat and you're using Signed-In Microsoft Teams Bots.

How to send chat messages

There are two ways to have bots send chat messages:

  1. Providing an automatic chat configuration when Creating a Bot
  2. Calling the Send Chat Message endpoint

Providing an automatic chat configuration


When creating a bot, you can provide a chat object in the Create Bot request body with two parameters that act as hooks for automatically sending chat messages:

  • on_bot_join
  • on_participant_join

Note that you can provide one without the other, or both if you prefer.

Send a message when the bot joins: chat.on_bot_join

ParameterValueDescription
send_toZoom: "host" | "everyone" |"everyone_except_host"

Meet: "everyone"

Teams: "everyone"
Who the message will be sent to.
messagestringThe message content to send.

Send a message when a participant joins the call: chat.on_participant_join

ParameterValueDescription
exclude_hostbooleanWhether or not to trigger this message when the host joins.
messagestringThe message content to send.

Using the Send Chat Messages endpoint


For more control over when bots send chat messages, Recall also provides an endpoint to send chat messages.

Keep in mind that this endpoint has the same platform limitations outlined above.

Send a chat message to a specific participant (Zoom only)

Using the Send Chat Message endpoint also has the benefit of being able to send chat messages as DM's to specific participants.

Example: Send a message via DM to a specific Zoom participant

  1. First, you need the ID of the participant you'd like to send the DM to. For example, you can get this from the meeting_participants array in the Retrieve Bot response:

    "meeting_participants": [
          {
            "id": 16778240,
            "name": "John Doe",
            "events": [
              {
                "code": "join",
                "created_at": "2024-03-26T20:10:56.499605Z"
              }
            ],
            "is_host": true,
            "platform": "desktop",
    				...
          },
          ...
        ],
    
  2. Now, to send a DM to John Doe, I can use his ID when calling Send Chat Message:

    curl --request POST \
         --url https://us-east-1.recall.ai/api/v1/bot/3487f343-7ba6-4fe1-9462-08638b2ee51f/send_chat_message/ \
         --header 'Authorization: {TOKEN}' \
         --header 'accept: application/json' \
         --header 'content-type: application/json' \
         --data '
    {
      "to": "16778240",
      "message": "Hello! I am a virtual meeting assistant that will be taking notes during this call."
    }
    '
    
  3. The participant will then receive the message as a DM: