サンプル:電話番号を取得するAGIスクリプト

目次
古いバージョンに。もしくは版の一覧へ戻る。

対象としたリビジョンの比較

Shunro によって 2012年 8月 3日, 16:23 に変更された版を Shunro によって 2012年 9月 28日, 13:40 に変更された 現在 の版と比較。

...

#!/usr/bin/perl
use strict;
use Asterisk::AGI;


###########################################
# 2010 Communication Business Avenue, Inc.
# Caller ID Check Script
###########################################

$|=1;

# Setup some variables
my %AGI; my $tests = 0; my $fail = 0; my $pass = 0;
my $astagi = new Asterisk::AGI;

while(<stdin>) {
	chomp;
	last unless length($_);
	if (/^agi_(\w+)\:\s+(.*)$/) {
		$AGI{$1} = $2;
	}
}

sub checkresult {
	my ($res) = @_;
	my $retval;
	$tests++;
	chomp $res;
	if ($res =~ /^200/) {
		$res =~ /result=(-?\d+)/;
		if (!length($1)) {
			print STDERR "FAIL ($res)\n";
			$fail++;
		} else {
			print STDERR "PASS ($1)\n";
			$pass++;
		}
	} else {
		print STDERR "FAIL (unexpected result '$res')\n";
		$fail++;
	}
}

$astagi->say_alpha($AGI{'callerid'});

2012年 8月 3日, 16:23からのバージョン

Shunro(禁止)で変更されたリビジョン

...

#!/usr/bin/perl
use strict;
use Asterisk::AGI;

###########################################
# 2010 Communication Business Avenue, Inc.
# Caller ID Check Script
###########################################

$|=1;

# Setup some variables
my %AGI; my $tests = 0; my $fail = 0; my $pass = 0;
my $astagi = new Asterisk::AGI;

while(<stdin>) {
	chomp;
	last unless length($_);
	if (/^agi_(\w+)\:\s+(.*)$/) {
		$AGI{$1} = $2;
	}
}

sub checkresult {
	my ($res) = @_;
	my $retval;
	$tests++;
	chomp $res;
	if ($res =~ /^200/) {
		$res =~ /result=(-?\d+)/;
		if (!length($1)) {
			print STDERR "FAIL ($res)\n";
			$fail++;
		} else {
			print STDERR "PASS ($1)\n";
			$pass++;
		}
	} else {
		print STDERR "FAIL (unexpected result '$res')\n";
		$fail++;
	}
}

$astagi->say_alpha($AGI{'callerid'});

現在の版

Shunro(禁止)で変更されたリビジョン

...

Powered by MindTouch Core