Всем привет !
хочу создать типа подобие номеронабирателя с использованием AMI HTTP
когда запуская с веб браузера все работает 1 - авторизация , 2 сама звонилка (все пример)
http://ЙП:8088/rawman?action=login&username=ЛОГИН&secret=ПАСС
http://ЙП:8088/rawman?action=Originate&Channel=SIP/to2121/155137&Context=from-internal&Exten=10001&Priority=1&Callerid=155137
Написал код на PHP - типа открываем страницу и пошла звонить где такой же запрос - и авторизация работает а звонилка НЕТ
Ответ: Response: Error
Message: Permission denied
вот код
<?php
// Настройки подключения к AMI HTTP
$ami_host = 'http://127.0.0.1:8088/rawman';
$ami_username = 'ЛОГИН';
$ami_secret = 'ПАСС';
// Данные для звонка
$trunk_name = 'to2121';
$external_number = '155137';
$internal_extension = '10001';
// Функция для выполнения HTTP-запроса
function send_request($url) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
));
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
// Авторизация в AMI
$login_url = "$ami_host?action=login&username=$ami_username&secret=$ami_secret";
$login_response = send_request($login_url);
echo htmlspecialchars($login_response);
// Проверка успешности авторизации
if (strpos($login_response, 'Success') !== false) {
// Инициируем звонок на внешний номер через указанный транк
$originate_url = "$ami_host?action=Originate&Channel=SIP/$trunk_name/$external_number&Context=from-internal&Exten=$internal_extension&Priority=1&Callerid=$external_number";
$originate_response = send_request($originate_url);
echo htmlspecialchars($originate_url);
// Вывод результата на странице
echo '<h1>Звонок инициирован!</h1>';
echo '<pre>';
echo htmlspecialchars($originate_response);
echo '</pre>';
} else {
// Вывод ошибки авторизации
echo '<h1>Ошибка авторизации!</h1>';
echo '<pre>';
echo htmlspecialchars($login_response);
echo '</pre>';
}
?>