提交 cb03f74e authored 作者: Brian West's avatar Brian West

These are used to run test scenarios against snom phones for automated testing

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7082 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 7adad0e4
Snom_300,key,CANCEL
Snom_360,key,CANCEL
Snom_370,key,CANCEL
Snom_300,key,ONHOOK
Snom_360,key,ONHOOK
Snom_370,key,ONHOOK,1
Snom_300,number,1006,1
Snom_360,key,OFFHOOK, 1
Snom_360,key,F_HOLD, 1
Snom_360,number,1007,2
Snom_370,key,OFFHOOK,1
Snom_360,key,F_TRANSFER,2
Snom_360,key,ONHOOK
Snom_300,key,CANCEL
Snom_360,key,CANCEL
Snom_370,key,CANCEL
Snom_300,key,ONHOOK
Snom_360,key,ONHOOK
Snom_370,key,ONHOOK,1
Snom_300,number,1006,1
Snom_360,key,OFFHOOK,1
Snom_360,key,F_TRANSFER,1
Snom_360,number,1007,2
Snom_370,key,OFFHOOK,1
Snom_300,key,OFFHOOK
Snom_320,key,OFFHOOK
Snom_360,key,OFFHOOK
Snom_370,key,OFFHOOK
Snom_300,key,ONHOOK
Snom_320,key,ONHOOK
Snom_360,key,ONHOOK
Snom_370,key,ONHOOK
Snom_300,10.0.1.241,1000
Snom_320,10.0.1.242,1002
Snom_360,10.0.1.243,1006
Snom_370,10.0.1.244,1007
#!/usr/bin/perl
#
# Scenario Test Execution.
#
use LWP::UserAgent;
use Data::Dumper;
$| =1;
our $ua = LWP::UserAgent->new;
my $phone = load_config();
if(-f $ARGV[0]) {
run_scenario($ARGV[0]);
} else {
print "No Scenario File?\n";
exit;
}
sub run_scenario($$) {
$file = shift;
open(SCENARIO,"<$file");
@commands = <SCENARIO>;
print Dumper $info;
foreach $command (@commands) {
chomp $command;
my($target, $type, $button, $delay) = split(",",$command);
&push_button($phone->{$target}, "$type", "$button", $delay);
}
}
sub push_button ($$$) {
$info = shift;
$type = shift;
$button = shift;
$delay = shift;
if($delay) {
sleep($delay);
} else {
$delay = 0;
}
print "$info->{name} -> $type => $button with delay $delay\n";
$request = HTTP::Request->new("GET", "http://$info->{ip}/command.htm?$type=$button");
$return = $ua->request($request);
}
sub load_config {
open(CFG,"<phones.cfg");
@phones = <CFG>;
foreach $line (@phones) {
chomp $line;
my($name,$ip,$extension) = split(",", $line);
$phone->{$name} = {name => $name, ip => $ip, extension => $extension}
}
return $phone;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论