Звездочка нажмите, чтобы позвонить - PullRequest
1 голос
/ 16 ноября 2010

Может быть, некоторые из вас знают, как этого добиться.Я хочу что-то вроде этого:

  1. Нажмите на ссылку / кнопку
  2. Мой телефон звонит, я его поднимаю
  3. Звездочка набирает номер для меня
  4. Телефон получателя звонит

Я использую звездочку 1.2 .

Я пытался набрать , набрать .Но только я могу сделать, это позвонить в одну сторону.

Заранее спасибо.

Ответы [ 2 ]

4 голосов
/ 17 ноября 2010

Вы можете использовать call files. Просто прочитайте: Звездочка с автодозвоном .

Я сделал простой CGI-скрипт, который вызывается через веб-сервер, создает файл вызова (не забудьте использовать временный каталог), а затем перемещает его в /var/spool/asterisk/outgoing, и Asterisk выполняет остальную часть работы. С точки зрения пользователя это работает так, как вы описали. Также не забудьте нормализовать телефонные номера (на моих веб-страницах они могут содержать пробелы, дефисы и т. Д., А в файле вызовов они должны выглядеть как набираемые номера).

1 голос
/ 02 января 2011

Вы можете увидеть скрипт вызова, который я написал на PHP, который открывает файл факса, но он подойдет для ваших нужд. Взгляните на полный сценарий здесь: http://www.csrdu.org/nauman/2010/10/18/web-fax-for-asterisk/

$faxHeader = $_POST["faxHeader"];
$localID = $_POST["localID"];
$email = $_POST["email"];
$dest = $_POST["dest"];

$outbound_route = "@outbound-allroutes";
$outboundfax_context = "outboundfax";

$callfile = "Channel: Local/$dest$outbound_route\n" .
   "MaxRetries: 1\n" .
   "RetryTime: 60\n" .
   "WaitTime: 60\n"  .
   "Archive: yes\n"  .
   "Context: $outboundfax_context \n"  .
   "Extension: s\n" .
   "Priority: 1\n" .
   "Set: FAXFILE=$input_file_tif\n" .
   "Set: FAXHEADER=$faxHeader\n" .
   "Set: TIMESTAMP=" . date("d/m/y : H:i:s",time()) . "\n" .
   "Set: DESTINATION=$dest\n".
   "Set: LOCALID=$localID\n" .
   "Set: EMAIL=$email\n";

// create the call file in /tmp
$callfilename = unique_name("/tmp", ".call");
$f = fopen($callfilename, "w");
fwrite($f, $callfile);
fclose($f);

// $asterisk_spool_folder is usually /var/spool/asterisk/outgoing
rename($callfilename, $asterisk_spool_folder .  "/" . substr($callfilename,4));

Прочтите на странице callfile, почему нам нужно переместить файл, а не открывать и записывать его прямо в папку спулинга звездочки.

...