Skip to main content

CallPlayback

Represents a current or past playback in a call. You can obtain instances of this class by starting a Playback with one of the following methods:

Example

Playing a text-to-speech message and waiting for it to end before proceeding to the next instructions.

import { Voice } from "@signalwire/realtime-api";

const client = new Voice.Client({
project: "<project-id>",
token: "<api-token>",
topics: ["office"],
});

const call = await client.dialPhone({
from: "+YYYYYYYYYY",
to: "+XXXXXXXXXX",
});

const playback = await call.playTTS({ text: "Welcome to SignalWire!" });
await playback.ended();

Properties

id

The unique id for this playback.

Syntax: CallPlayback.id()

Returns: string

Methods

pause

pause(): Promise<CallPlayback> - See CallPlayback for more details.

Pauses the playback.

Returns

Promise<CallPlayback> - See CallPlayback for more details.

Example

const playback = await call.playAudio({
url: "https://cdn.signalwire.com/default-music/welcome.mp3",
});
await playback.pause();

ended

ended(): Promise<CallPlayback> - See CallPlayback for more details.

Returns a promise that is resolved only after this playback finishes playing (or is stopped).

Returns

Promise<CallPlayback> - See CallPlayback for more details.

Example

const playback = await call.playAudio({
url: "https://cdn.signalwire.com/default-music/welcome.mp3",
});
await playback.ended();

resume

resume(): Promise<CallPlayback> - See CallPlayback for more details.

Resumes the playback if it was paused.

Returns

Promise<CallPlayback> - See CallPlayback for more details.

Example

const playback = await call.playAudio({
url: "https://cdn.signalwire.com/default-music/welcome.mp3",
});
await playback.resume();

setVolume

setVolume(volume): Promise<CallPlayback> - See CallPlayback for more details.

Changes the volume of the playback.

Parameters

NameTypeDescription
volumenumberVolume value between -40dB and +40dB.

Returns

Promise<CallPlayback> - See CallPlayback for more details.

Example

const playback = await call.playAudio({
url: "https://cdn.signalwire.com/default-music/welcome.mp3",
});
await playback.setVolume(-20);

stop

stop(): Promise<CallPlayback> - See CallPlayback for more details.

Stops the playback.

Returns

Promise<CallPlayback> - See CallPlayback for more details.

Example

const playback = await call.playAudio({
url: "https://cdn.signalwire.com/default-music/welcome.mp3",
});
await playback.stop();

waitForEnded

waitForEnded(): Promise<CallPlayback> - See CallPlayback for more details.

Returns a promise that is resolved only after this playback finishes playing (or is stopped).

caution

This method is deprecated. See ended instead.