Bayonne-Server
view release on metacpan or search on metacpan
lib/Bayonne/Server.pm view on Meta::CPAN
373839404142434445464748495051525354555657
my
$self
= {
hostid
=>
undef
,
userid
=>
"server"
,
secret
=>
undef
,
@_
,
};
$self
->{_session} = LWP::UserAgent->new(
env_proxy
=> 1,
timeout
=> 30);
return
bless
$self
,
$class
;
};
sub
xmlreply($$) {
my
(
$self
,
$query
) =
@_
;
my
$host
=
$self
->{hostid};
my
$user
=
$self
->{userid};
my
$secret
=
$self
->{secret};
my
$session
=
$self
->{_session};
if
(
index
(
$host
,
":"
) < 1) {
$host
.=
":8055"
;};
my
$reply
=
undef
;
lib/Bayonne/Server.pm view on Meta::CPAN
60616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
if
(
$secret
) {
$request
->authorization_basic(
$user
,
$secret
);};
my
$response
=
$session
->request(
$request
);
my
$parser
= XML::Simple->new();
if
(
$response
->is_success()) {
$reply
=
$parser
->XMLin(
$response
->{_content});};
return
$reply
;
};
sub
reload($) {
my
(
$self
) =
@_
;
my
$reply
=
$self
->xmlreply(
"reload.xml"
);
if
(
$reply
) {
return
$reply
->{results}->{result}->{value};};
return
"failure"
;
}
sub
uptime($) {
my
(
$self
) =
@_
;
my
$reply
=
$self
->xmlreply(
"uptime.xml"
);
if
(
$reply
) {
return
$reply
->{results}->{result}->{value};};
return
undef
;
}
sub
status($) {
my
(
$self
) =
@_
;
my
$reply
=
$self
->xmlreply(
"status.xml"
);
if
(
$reply
) {
return
$reply
->{results}->{result}->{value};};
return
undef
;
}
sub
traffic($) {
my
(
$self
) =
@_
;
my
$reply
=
$self
->xmlreply(
"traffic.xml"
);
my
$result
=
undef
;
if
(
$reply
) {
$result
->{timestamp} =
$reply
->{results}->{result}->{timestamp}->{value};
$result
->{active} =
$reply
->{results}->{result}->{activeCalls}->{value};
$result
->{completed}->{incoming} =
lib/Bayonne/Server.pm view on Meta::CPAN
112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
$result
->{completed}->{outgoing} =
$reply
->{results}->{result}->{outgoingComplete}->{value};
$result
->{attempted}->{incoming} =
$reply
->{results}->{result}->{incomingAttempts}->{value};
$result
->{attempted}->{outgoing} =
$reply
->{results}->{result}->{outgoingAttempts}->{value};
}
return
$result
;
}
sub
stop($$) {
my
(
$self
,
$sid
) =
@_
;
my
$result
=
"failure"
;
$sid
= uri_escape(
$sid
);
my
$reply
=
$self
->xmlreply(
"stop.xml?session=$sid"
);
if
(
$reply
) {
$result
=
$reply
->{results}->{result}->{value};};
if
(
$result
) {
return
$result
;};
return
"invalid"
;
}
sub
session($$) {
my
(
$self
,
$sid
) =
@_
;
my
$result
=
"failure"
;
$sid
= uri_escape(
$sid
);
my
$reply
=
$self
->xmlreply(
"status.xml?session=$sid"
);
if
(
$reply
) {
$result
=
$reply
->{results}->{result}->{value};};
if
(
$result
eq
"success"
) {
return
"active"
;};
if
(
$result
) {
return
$result
;};
return
"invalid"
;
}
sub
start($$$$$) {
my
(
$self
,
$target
,
$script
,
$caller
,
$display
) =
@_
;
my
$query
=
"start.xml"
;
if
(
length
(
$caller
) < 1) {
$caller
=
"unknown"
;};
if
(
length
(
$display
) < 1) {
$display
=
$caller
;};
$query
.=
"?target="
. uri_escape(
$target
);
( run in 0.373 second using v1.01-cache-2.11-cpan-a5abf4f5562 )