Please provide a valid credit card using the credit card form on
the billing page.
Update Card Details
Channel.nowplaying
The Now Playing API can be used to find out the current position of the
playlist being played on a channel. The result will contain the previous,
current, and next video. Optionally, user defined description and titles
for those items can be requested to be returned as well.
Example Code (PHP)
$request = array(
'command' => 'channel.nowplaying',
'api_key' => 'APX4GKLM0RKQLSP2FBO1ROPKSSW47DZE',
'timestamp' => time(),
'cdn' => 158,
'app' => 'jb-chorigin',
'stream' => 'my_channel_stream_name',
'appinst' => 'live' /* optional */
'user_desc' => 1 /* optional */
'user_title' => 1 /* optional */
);
//Create request signature
$json_request = json_encode($request);
$sig = base64_encode(hash_hmac('sha256', $json_request,
'8fc8c48da81e6a2a06a9556379bf798af508dc0792497c678b4c3532ba8b637f', true));
$request['signature'] = $sig;
$json_request = json_encode($request);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.scaleengine.net/stable/'); // Set the URL
curl_setopt($ch, CURLOPT_POST, true); // Perform a POST
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // If not set, curl prints output to the browser
curl_setopt($ch, CURLOPT_HEADER, false); // If set, curl returns headers as part of the data stream
curl_setopt($ch, CURLOPT_POSTFIELDS, array('json' => $json_request)); //'Json' string or 'PHP' serialized return
//If your PHP host does not have a proper SSL certificate bundle, you will need to turn off SSL Certificate Verification
//This is dangerous, and should only be done temporarily until a proper certificate bundle can be installed
//curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // Turns off verification of the SSL certificate.
//curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Turns off verification of the SSL certificate.
$response = curl_exec($ch); //Execute the API Call
if (!$response) {
die('Failed to connect to ScaleEngine API');
}
//Decode the response as an associative array
$arrResponse = json_decode($response, true);
if ($arrResponse) {
//Operation completed successfully
//TODO Add work here
print_r($arrResponse);
} else {
//Operation failed
echo 'An error occured processing your request:';
print_r($response);
}
Request Fields
command |
[REQUIRED] [string] - API command to execute |
cdn |
[REQUIRED] [int] - The ScaleEngine CDN ID of your
account |
api_key |
[REQUIRED] [string] - The API key provided as part of your
account |
timestamp |
[REQUIRED] [int] - The unix timestamp of your request, used to
prevent authenticated API requests from being replayed |
app |
[OPTIONAL][string] - Application name, defaults to jb-chorigin |
stream |
[REQUIRED] [String] - The name of the channel running an
active playlist |
appinst |
[OPTIONAL] [String] - The name of the ScaleEngine Application
Instance. default value is 'live' |
user_desc |
[OPTIONAL] [Int] - Flag to enable retrieving user set
descriptions for the playlist items. |
user_title |
[OPTIONAL] [Int] - Flag to enable retrieving user set
titles for the playlist items. |
Example Result (JSON)
{
"message": "Now Playing",
"videos": [{
"previous": 'sestore1/username/path/play_first.mp4',
"current":'sestore1/username/path/play_second.mp4',
"next": 'sestore1/username/path/play_third.mp4'
}],
"descriptions": [{
"previous": 'My First Video',
"current":'My Second Video',
"next": 'My Third Video'
}],
"titles": [{
"previous": 'Video 1 title',
"current":'Video 2 title',
"next": 'Video 3 title'
}],
"started_on": "2014-11-10 15:00:00",
"video_id" : 123,
"sort_order": 1,
"channel_id": 100,
"status": "success",
"message": "Now Playing"
"status": "success",
"handle_time":"0.3795 seconds"
}
Result Fields
message |
[string] - Debugging message |
videos |
[Array] - The stream name or path of the VOD.
VOD examples look like like:
sestore3/username/path/filename.mp4
previous |
[String] - The playlist item that last played |
current |
[String] - The currently playing item |
next |
[String] - The next item to be played |
|
descriptions |
[Array] - The user defined descriptions for the playlist item.
This field will only appear if "user_desc" field was sent with the
request.
previous |
[String] - descriptions of the last played item |
current |
[String] - descriptions of currently playing item |
next |
[String] - descriptions of next item to be played |
|
titles |
[String] - The user defined titles for each of the playlist
items. This field will only appear if "user_title" field was sent with
the request.
previous |
[String] - title of the last played item |
current |
[String] - title of currently playing item |
next |
[String] - title of next item to be played |
|
started_on |
[String] - The date and time that the current playlist item was
started.
|
sort_order |
[Int] - The current videos sort order in the playlist.
|
channel_id |
[Int] - The unique ID of the playlist.
|
video_id |
[Int] - The unique ID of the playlist video.
|
status |
[string] - "success" or "failure" |
handle_time |
[float] - The amount of time spent processing your request |