В принципе путь автоматизации - это естественность развития человечества
Она везде и всюду окружает нас с самых первых шагов
С одной стороны тяжело, а с другой - это как раз и работа мозга, когда придумываешь сам и пытаешься решить новое на основе уже знающего о мире
#!/usr/bin/php -q
<?php
set_time_limit(100);
ob_implicit_flush(false); // Turn off output buffering
error_reporting(E_ALL ^ E_NOTICE);
date_default_timezone_set("Europe/Moscow");
include_once('phpagi-asmanager.php');
define('USER', 'zabbix');
define('PASSWD', 'Pass123');
/*
In file /etc/asterisk/manager.conf
[zabbix]
secret=Pass123
deny=0.0.0.0/0.0.0.0
permit=127.0.0.0/255.255.255.0
allowmultiplelogin=yes
;displayconnects=yes
read = all,system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message
write = all,system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message
writetimeout=5000
*/
function dump_events($event_code, $data, $server, $port) {
switch($event_code){
case 'successfulauth':
// Ignore
break;
case 'devicestatechange':
// Ignore
break;
case 'challengesent':
// Ignore
break;
default:
on_display($event_code, $data);
}
}
function on_display($event_code, $data) {
$time_now = date('H:i:s');
print($time_now." Received event:\n".$event_code."\nData:\n");
print_r($data);
print("\n");
return 0;
}
//------------------------------------------------------------------------------
$asm=new AGI_AsteriskManager();
if($asm->connect('127.0.0.1:5038', USER, PASSWD)) {
$Ar_Req=$asm->send_request('Events',
array('Eventmask'=>'ON') // All Events on
);
var_dump($Ar_Req);
$asm->add_event_handler('*', 'dump_events'); // Event handler
$asm->wait_response(); // Wait Events
$asm->disconnect();
}
else{
print("Manager not connected\n");
}
exit;

Комментариев нет:
Отправить комментарий