37,738
社区成员
发帖
与我相关
我的任务
分享sub Digest::base::add;
sub Digest::base::clone;
sub Digest::base::new;
sub Digest::base::digest;
sub Cache::Cache::get_default_expires_in;
sub Cache::Cache::get_identifiers;
sub Cache::Cache::set_object;
sub Cache::Cache::Clear;
sub Cache::Cache::set_auto_purge_on_set;
sub Cache::Cache::remove;
sub Cache::Cache::get_auto_purge_interval;
sub Cache::Cache::set_namespace;
sub Cache::Cache::get;
sub Cache::Cache::get_object;
sub Cache::Cache::clear;
sub Cache::Cache::Size;
sub Cache::Cache::size;
sub Cache::Cache::set;
sub Cache::Cache::get_namespace;
sub Cache::Cache::set_auto_purge_interval;
sub Cache::Cache::new;
sub Cache::Cache::get_auto_purge_on_get;
sub Cache::Cache::Purge;
sub Cache::Cache::get_namespaces;
sub Cache::Cache::get_keys;
sub Cache::Cache::purge;
package Asterisk::Connections;
sub BEGIN {
require strict;
do {"strict"->import};
}
use lib ("/usr/local/fourloop/lib/perl", "/usr/local/webadmin/lib");
use Data::Dumper;
use AGI::UserInfo;
use Asterisk::AstMan;
use Regexp::Common ("net");
use Socket;
BEGIN {
${^WARNING_BITS} = "TUUUUUUUUUQU"
}use strict "refs";
require Exporter;
our(@ISA) = "Exporter";
our(@EXPORT_OK) = ("GetZapChannelStatus", "GetSipPhoneStatus", "GetSipProviderStatus", "GetIAXProviderStatus");
our(%EXPORT_TAGS) = ("all", (\@EXPORT_OK));
sub GetZapChannelStatus {
my $var1 = "Asterisk::AstMan"->login;
$$var1{"errstr"} and return(undef, $$var1{"errstr"});
my $var2 = [];
$var1->command(
{"Action", "ZapShowChannels"},
sub {
(my $var3 = shift(@_));
(my $var4 = $$var3{"Event"});
if (($var4 eq "ZapShowChannels")) {
($$var3{"Signalling"} =~ s/FXO/ZZZ/);
($$var3{"Signalling"} =~ s/FXS/FXO/);
($$var3{"Signalling"} =~ s/ZZZ/FXS/);
push(@$var2, $var3);
}
return(($var4 ne "ZapShowChannelsComplete"));
}
);
return ($var2, undef);
}
sub GetSipPhoneStatus {
my $db = shift(@_);
my $var5 = q[select a.account_id,s.name as name, v.first_name || ' ' || v.last_name as cidname, s.useragent as useragent, s.regseconds as regseconds, s.ipaddr as ipaddr from sip_buddies s, phone_values v, accounts as a where s.account_id = v.account_id and v.account_id = a.account_id];
my($var6, $var7) = $db->query("sql", $var5);
$var7 and return(undef, $var7);
my $var8 = [];
while ((my $var9 = $var6->fetchrow_hashref)) {
my $var10 = int($$var9{"regseconds"});
if ($var10) {
if (($var10 < time)) {
$$var9{"state"} = "Timeout";
} else {
($$var9{"