merin_ja писал(а):Ребят, есть ли у кого готовый php скрипт для работы с данным API? Если есть, то поделитесь кому не сложно.
Вот пример отправки голосового сообщения:
- Код: Выделить всё
<?php
function BuildUrlParamsWithSignature(&$params, $password, $exclude = '')
{
ksort($params);
$url = '';
if (!is_array($params))
return $url;
if ($exclude && !is_array($exclude))
$exclude = array($exclude);
foreach($params as $key => $value)
{
if ($exclude && in_array($key, $exclude)) continue;
$url .= $key . "=" . urlencode($value) . "&";
}
$signature = md5($url . "&password=".urlencode($password));
$url .= "signature=" . $signature;
$params['signature'] = $signature;
return $url;
}
$baseurl = "http://api.comtube.com/scripts/api/vmsg.php";
// Создаем массив с параметрами
$params = array();
$params["username"] = "login";
$params["type"] = "json"; // как будет отдан ответ
$params["action"] = "send"; // если надо просто загрузить сообщение, то upload
$params["name"] = "Название отправки или сообщения";
$params["number"] = "79261234567"; // - номер получателя
$params["vmsgfile"] = "@./voicefile.wav";
// формируем строку с параметрами и подписью
$urlparams = BuildUrlParamsWithSignature($params, "пароль", array('numfile', 'vmsgfile'));
$url = $baseurl . "?" . $urlparams;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $baseurl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
$data = curl_exec($ch);
curl_close($ch);
$res = json_decode($data, true);
print_r($res);
?>