Relay.Calling.PlayAction
This object returned from one of asynchronous play methods that represents a playing currently active on a call.
Methods
getControlId
Return the UUID to identify the playing.
Available In:
Parameters
None
Returns
string
- UUID to identify the action.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
echo $action->getControlId();
});
getPayload
Return the payload sent to Relay to initiate the request. Useful to inspect what you sent to perform this action.
Available In:
Parameters
None
Returns
Object
- Payload sent to Relay.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
print_r($action->getPayload());
});
getResult
Returns the final result of the playing.
Available In:
Parameters
None
Returns
Relay.Calling.PlayResult
- Final result of the playing.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
// .. later in the code since it's an async method
if ($action->isCompleted()) {
$result = $action->getResult();
}
});
getState
Return the current state of the playing.
Available In:
Parameters
None
Returns
string
- Current state of the playing.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
echo $action->getState();
});
isCompleted
Return true
if the playing has finished, false
otherwise.
Available In:
Parameters
None
Returns
Boolean
- True/False accordingly to the state.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
if ($action->isCompleted()) {
}
});
pause
Pause the playback immediately.
Available In:
Parameters
None
Returns
React\Promise\Promise
- Promise object that will be fulfilled with a Relay.Calling.PlayPauseResult
object.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
// For demonstration purposes only..
$action->pause()->done(function($pauseResult) {
if ($pauseResult->successful) {
}
});
});
resume
Resume the playback immediately.
Available In:
Parameters
None
Returns
React\Promise\Promise
- Promise object that will be fulfilled with a Relay.Calling.PlayResumeResult
object.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
// For demonstration purposes only..
$action->pause()->done(function($pauseResult) use ($action) {
// .. later in the code..
$action->resume()->done(function($resumeResult) {
});
});
});
Note: you can avoid the callback hell using these methods in a
Relay.Consumer
.
stop
Stop the action immediately.
Available In:
Parameters
None
Returns
React\Promise\Promise
- Promise object that will be fulfilled with a Relay.Calling.StopResult
object.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) use ($globalAgent) {
if ($globalAgent->isAvailable() === false) {
$action->stop()->done(function($stopResult) {
});
}
});
volume
Control the volume of the playback.
Available In:
Parameters
volume | number | required | Volume value between -40dB and +40dB where 0 is unchanged. |
Returns
React\Promise\Promise
- Promise object that will be fulfilled with a Relay.Calling.PlayVolumeResult
object.
Examples
<?php
$call->playAudioAsync('https://cdn.signalwire.com/default-music/welcome.mp3')->done(function($action) {
// For demonstration purposes only..
$action->volume(5.0)->done(function($volumeResult) {
if ($volumeResult->successful) {
}
});
});