Звездочка нажмите, чтобы позвонить

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

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

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

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

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


person lfx    schedule 16.11.2010    source источник


Ответы (2)


Вы можете использовать call files. Только что прочитайте: Автоматический исходящий номер Asterisk.

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

person Michał Niklas    schedule 17.11.2010
comment
Да, именно то, что мне было нужно, не очень красиво, но работает :) Спасибо! - person lfx; 17.11.2010

Вы можете увидеть скрипт вызова, который я написал на 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));

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

person recluze    schedule 02.01.2011