Skip to content

Audio and Transcription

SquadOS handles audio in two different ways:

  • Recording in Hub: your speech is transcribed and appended to the message field. You review the text and only then send it. The recording is not sent as a message.
  • Audio received by the agent: a channel or the API delivers an audio file. SquadOS transcribes it, adds the text to the agent’s context, and keeps the attachment in the conversation history.

Both flows use OpenAI Whisper with the language set to Portuguese, but they differ in availability, storage, and billing.

ContextRecording microphoneCurrent rule
Hub, with an agent selectedYes, when Accept audio is onThe agent setting controls the button
Hub, with no agent selectedYesThe recorder remains available
Conversations, during human interventionYesCurrent limitation: the button may appear even when the agent does not accept audio
Public linkNoVisitors do not have the authenticated session required for transcription
Embedded widgetNoIt uses the same anonymous mode as the public link

The microphone button is separate from the attachment button. The browser file picker accepts images and documents, not audio files. Incoming audio normally arrives through a compatible integration, such as WhatsApp Official or Telegram, or through the API.

  1. In the Hub composer or during human intervention, select Record audio using the microphone icon.
  2. When the browser requests microphone access, choose Allow. The browser, not SquadOS, decides whether that choice is remembered.
  3. Speak while the composer shows the visualizer and duration.
  4. Select Send audio using the paper-plane icon. This control stops the recording and starts transcription; it does not yet send a message to the agent or contact.
  5. Wait for the text to appear in the field, review it, and send the message normally.

To discard a recording that is still running, select Cancel recording using the X. Avoid cancelling after the screen already shows Transcrevendo…: there is a known limitation where an in-flight transcription may finish and insert text after cancellation.

  • The recording must reach 1 second. If you try to finish sooner, you see Record at least 1 second of audio and recording continues.
  • The limit is 120 seconds. At the limit, the browser stops recording and transcription begins automatically.
  • The browser requests mono audio at 16 kHz, with echo cancellation, noise suppression, and automatic gain control when the device supports them.
  • The format is negotiated with the browser among WebM/Opus, WebM, Ogg/Opus, MP4, and MPEG. You do not choose the format.

The transcribed text is appended to the existing draft. If text is already present, leave a trailing space before recording so the first transcribed word does not join the last typed word.

In this flow, the audio exists only to produce the draft: the recorded file is not added to the history, and this flow does not record transcription credits on the conversation. After you send, only the text message is persisted.

When a compatible integration or the API delivers an audio attachment, the pipeline checks the agent setting before processing it.

If Accept audio is on:

  1. the file is preserved in the conversation attachment storage;
  2. Whisper transcribes the content in Portuguese;
  3. the transcription is added to the textual context sent to the model;
  4. processing records a transcription step in the message’s technical history.

If transcription fails, the agent receives the [Áudio não transcrito] marker in its context, and no Whisper credits are charged for that attempt. The file remains available in the history when attachment persistence succeeded.

Under standard platform billing, the estimate shown in the editor is approximately 13 credits per transcribed minute. Billing duration is estimated from the file size and type, so it is not an exact measurement of playback time.

  1. Open Agents and select the agent.
  2. In the editor sidebar, open Multimodal.
  3. In the Audio card, turn off Accept audio.
  4. Fill in User message (when disabled) in Portuguese and English.
  5. Save the attachment settings.

When that agent receives audio through the pipeline, SquadOS returns the configured message instead of transcribing the file. The setting also removes the Hub microphone while that agent is selected. It does not correctly control the human-intervention recorder in the current version.

The Whisper request fixes the language to Portuguese. Words from other languages may be recognized, but there is no language selector for this transcription. Speak close to the microphone, avoid overlapping voices, and review names, numbers, and technical terms before sending.

  • The microphone is missing in Hub: confirm that an agent is selected and Multimodal → Audio → Accept audio is on. Its absence on public links and widgets is expected.
  • Failed to record audio: confirm that the device has a microphone and the browser allows the site to use it. Reload the page after changing permission.
  • Failed to transcribe audio. Please try again.: record again. This message also appears when Whisper detects no speech, even though the service returned without a technical error.
  • The text joined the existing draft: insert the missing space and review the message before sending.
  • Text appeared after cancellation: delete the inserted text. Cancelling during transcription does not stop the in-flight request in the current version.
  • The agent rejected incoming audio: check Accept audio and the rejection messages in both languages.