[Freeswitch-svn] [commit] r7082 - freeswitch/trunk/scripts/scenario
Freeswitch SVN
brian at freeswitch.org
Fri Jan 4 13:24:00 EST 2008
Author: brian
Date: Fri Jan 4 13:24:00 2008
New Revision: 7082
Added:
freeswitch/trunk/scripts/scenario/
freeswitch/trunk/scripts/scenario/attended_transfer.button
freeswitch/trunk/scripts/scenario/blind_transfer.button
freeswitch/trunk/scripts/scenario/offhook.button
freeswitch/trunk/scripts/scenario/phones.cfg
freeswitch/trunk/scripts/scenario/runscenario.pl (contents, props changed)
Log:
These are used to run test scenarios against snom phones for automated testing
Added: freeswitch/trunk/scripts/scenario/attended_transfer.button
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/scenario/attended_transfer.button Fri Jan 4 13:24:00 2008
@@ -0,0 +1,14 @@
+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
+
Added: freeswitch/trunk/scripts/scenario/blind_transfer.button
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/scenario/blind_transfer.button Fri Jan 4 13:24:00 2008
@@ -0,0 +1,11 @@
+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
Added: freeswitch/trunk/scripts/scenario/offhook.button
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/scenario/offhook.button Fri Jan 4 13:24:00 2008
@@ -0,0 +1,8 @@
+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
Added: freeswitch/trunk/scripts/scenario/phones.cfg
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/scenario/phones.cfg Fri Jan 4 13:24:00 2008
@@ -0,0 +1,4 @@
+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
Added: freeswitch/trunk/scripts/scenario/runscenario.pl
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/scenario/runscenario.pl Fri Jan 4 13:24:00 2008
@@ -0,0 +1,59 @@
+#!/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;
+}
More information about the Freeswitch-svn
mailing list