Skip to content

Send Voice ​

Send voice messages (audio recordings) to a chat.

Usage ​

The Message facade's sendVoice method may be used to send a voice message to a chat.

php
use NjoguAmos\Waha\Facades\Message;
use NjoguAmos\Waha\Dto\MessageVoiceData;

$data = new MessageVoiceData(
    chatId: '123456789@c.us',
    file: 'https://example.com/voice.opus',
);

/** @var \Saloon\Http\Response $response */
$response = Message::sendVoice(data: $data);
php
use NjoguAmos\Waha\Facades\Message;
use NjoguAmos\Waha\Dto\MessageVoiceData;

$data = new MessageVoiceData(
    chatId: '123456789@c.us',
    file: 'data:audio/ogg;base64,base64-encoded-data...',
);

/** @var \Saloon\Http\Response $response */
$response = Message::sendVoice(data: $data);
php
use NjoguAmos\Waha\Facades\Message;
use NjoguAmos\Waha\Dto\MessageVoiceData;

$data = new MessageVoiceData(
    chatId: '123456789@c.us',
    file: 'https://example.com/voice.opus',
    reply_to: 'false_1111@c.us_AAA',
);

/** @var \Saloon\Http\Response $response */
$response = Message::sendVoice(data: $data);

Voice File Format

WhatsApp accept only file with OPUS encoding and packed in OGG container.

If you have a file in a different format (like mp3) you can use the convert: true option to have WAHA convert it for you automatically.

Response ​

The response returned by the sendVoice method is an instance of Saloon\Http\Response. You may use the json method to retrieve the response as an array:

php
/** @var \Saloon\Http\Response $response */

$response->status(); // 201
$response->json();   // ["id" => "false_123456789@c.us_BAE6A33293978B16", "timestamp" => 1629200000, ...]
php
use NjoguAmos\Waha\Facades\Message;
use NjoguAmos\Waha\Dto\MessageVoiceData;

$data = new MessageVoiceData(
    chatId: '123456789@c.us',
    file: 'https://example.com/voice.opus',
);

/** @var \Saloon\Http\Response $response */
$response = Message::sendVoice(data: $data);
$json = $response->json();

Engines ​

WEBJSWPPNOWEBGOWS
➕➕➕➕

References ​

Released under the MIT License.