在服务器web映射目录下 例如在elastix系统下就是/var/www/html目录下
添加originate.php文件
originate.php内容是
$errno=1;
$port ='5038';
$server= '192.168.1.111'; //服务器ip地址
$errstr='连接错误,请联系管理员!';
$timeout=60;
$socket = fsockopen($server,$port, $errno, $errstr, $timeout);
if( $socket == false) {
echo $errstr;
die ($errno.':'.$errstr);
} else {
echo "Socket_OK";
fputs($socket, "Action: loginrn");
fputs($socket, "Username: adminrn");
fputs($socket, "Secret: adminrnrn");
echo "User_Login";
while($c = fgets($socket, 4096))
{
echo $c ."n";
}
fputs($socket, "Action: Originatern");
fputs($socket, "Channel: SIP/8002rn");
fputs($socket, "Callerid: 8002rn");
fputs($socket, "Timeout: 30000rn");
fputs($socket, "Exten: 8021rn");
fputs($socket, "Context: from-internalrn");
fputs($socket, "Priority: 1rn");
fputs($socket, "Async: yesrnrn" );
echo "Send_Command_OK";
}
?>
编写完毕,给Originate赋予最高权限
这样就可以http://192.168.1.111/originate.php 就可以实现8002对8021的呼叫了
这是呼叫的实现,其他的类似,就是Action不同参数不同而已
asterisk协会群小李写的...
http://www.voip-info.org/wiki/view/Asterisk+cmd+Dial 使用dial指令是采用L(x[:y][:z])参数 x - 限制时长,单位ms y - 剩余告警时长,单位ms x - 重复告警次...)



