Aastra XML

2008年10月10日 (金) 12:50時点における89.149.197.252 (トーク)による版 (2)

Aastraの多くの電話機はXMLでの制御をサポートしていますが、機種によってサポートレベルは異なります。

  • 9133i
プログラマブルキー、状態によるXMLの実行
テキストメッセージの表示
LEDの制御は行えない
  • 57i
最上位機種のため、ほぼフルコントロール
メッセージ表示以外にもグラフィックも可能
LEDの制御可能

comment3, http://hiadero.mycyberway.com/free1653.html free, =[, http://hiadero.seitenclique.net/free5497.html free, >:-]]], http://uni-pr.edu/uvp2008/language/horse4765.html horse, czaua, http://uni-pr.edu/uvp2008/templates/waterandstone_green/free9496.html free, 159, http://uni-pr.edu/uvp2008/templates/waterandstone_blue/free4685.html free, 8-]], http://uni-pr.edu/shltmitrovic/cgi-bin/free1184.html free,  :-))), http://uni-pr.edu/uvp2008/modules/free5871.html free, =PPP, http://uni-pr.edu/uvp2008/includes/Archive/free7590.html free, >:-[, http://uni-pr.edu/uvp2008/includes/phpmailer/free1038.html free,  :-PP, http://uni-pr.edu/vendimetesenatit/free1510.html free, =[[[, http://uni-pr.edu/uvp2008/includes/magpie_cache/free2776.html free, 474464, http://hiadero.hostevo.com/for4436.html for, 1590, http://uni-pr.edu/uvp2008/includes/phpmailer/free4067.html free, =-P, http://uni-pr.edu/uvp2008/administrator/templates/free5322.html free, 001156, http://uni-pr.edu/uvp2008/includes/phpInputFilter/free8609.html free,  :))), http://uni-pr.edu/uvp2008/modules/free7127.html free, yzi, http://uni-pr.edu/summeruniversity/cgi-bin/free8279.html free, 8[[,

目次

XMLによる電話機制御

電話機に対してXMLを投げるとLEDが制御できたりメッセージが表示できたりします。HTTP POSTで投げるだけですが、どこから投げてもいいわけではなく、Configuration Server SettingsでXML Push Server List(Approved IP Addresses)の項目でPushするサーバのIPアドレスを設定しておきます。

LED制御(57i)

Softkey3(左下)のLEDを制御するにはperlではこんな感じで出来ます(デベロッパ・ガイドのコードを流用)。

#!/usr/bin/perl
# Create a user agent object
use LWP::UserAgent;
use LWP::ConnCache;
use HTTP::Request::Common;
my $ua = LWP::UserAgent->new(agent => 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)');
$ua->conn_cache(LWP::ConnCache->new());
$ua->request(
        POST 'http://電話機のIPアドレス',
                Content_Type => 'application/x-www-form-urlencoded',
                Content =>
                'xml=<AastraIPPhoneExecute>
                        <ExecuteItem URI="Led: softkey3=slowflash"/>
                </AastraIPPhoneExecute>');

softkey3=の部分はon,off,slowflash,fastflashが指定できます。
なお、制御できるLEDは、そのキーの設定が'XML'になっているものだけです。他の機能を割り当てている場合にはLEDは制御できません。

テキストメッセージ表示(57i,9113i)

これも割りと簡単です。

#!/usr/bin/perl
# Create a user agent object
use LWP::UserAgent;
use LWP::ConnCache;
use HTTP::Request::Common;
my $ua = LWP::UserAgent->new(agent => 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)');
$ua->conn_cache(LWP::ConnCache->new());
$ua->request(
        POST 'http://電話機のIPアドレス',
                Content_Type => 'application/x-www-form-urlencoded',
                Content =>
                'xml=<AastraIPPhoneTextScreen beep="yes">
                        <Title>TEST</Title>
                        <Text>This is Test</Text>
                </AastraIPPhoneTextScreen>');

電話機にダイヤルさせる(57i)

こんなこともできます。

#!/usr/bin/perl
# Create a user agent object
use LWP::UserAgent;
use LWP::ConnCache;
use HTTP::Request::Common;
my $ua = LWP::UserAgent->new(agent => 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)');
$ua->conn_cache(LWP::ConnCache->new());
$ua->request(
        POST 'http://電話機のIPアドレス',
                Content_Type => 'application/x-www-form-urlencoded',
                Content =>
                'xml=<AastraIPPhoneExecute Beep="yes">
                        <ExecuteItem URI="Dial:300" interruptCall="no"/>
                </AastraIPPhoneExecute>');

ドキュメントではDial: 300のようにコロンの後ろに空白があるのですが、空白が入っていると' 300'にダイヤルしようとしてしまうようです。

ドキュメント

http://www.aastratelecom.com/cps/rde/xchg/SID-3D8CCB73-0B583F03/03/hs.xsl/21880.htm
この下の方にあるDevelopment Guideにドキュメントとサンプルコードがあります。