「Aastra XML」の版間の差分
(→=テキストメッセージ表示(571,9113i)) |
(→テキストメッセージ表示(571,9113i)) |
||
33行目: | 33行目: | ||
softkey3=の部分はon,off,slowflash,fastflashが指定できます。<br> | softkey3=の部分はon,off,slowflash,fastflashが指定できます。<br> | ||
なお、制御できるLEDは、そのキーの設定が'XML'になっているものだけです。他の機能を割り当てている場合にはLEDは制御できません。 | なお、制御できるLEDは、そのキーの設定が'XML'になっているものだけです。他の機能を割り当てている場合にはLEDは制御できません。 | ||
− | ===テキストメッセージ表示( | + | ===テキストメッセージ表示(57i,9113i)=== |
これも割りと簡単です。 | これも割りと簡単です。 | ||
#!/usr/bin/perl | #!/usr/bin/perl | ||
50行目: | 50行目: | ||
<Text>This is Test</Text> | <Text>This is Test</Text> | ||
</AastraIPPhoneTextScreen>'); | </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 <nowiki>'http://電話機のIPアドレス'</nowiki>, | ||
+ | Content_Type => 'application/x-www-form-urlencoded', | ||
+ | Content => | ||
+ | 'xml=<AastraIPPhoneExecute Beep="yes"> | ||
+ | <ExecuteItem URI="Dial:300" interruptCall="no"/> | ||
+ | </AastraIPPhoneTextScreen>'); | ||
+ | ドキュメントではDial: 300のようにコロンの後ろに空白があるのですが、空白が入っていると' 300'にダイヤルしようとしてしまうようです。 | ||
+ | ==ドキュメント== |
2008年2月2日 (土) 01:44時点における版
Aastraの多くの電話機はXMLでの制御をサポートしていますが、機種によってサポートレベルは異なります。
- 9133i
- プログラマブルキー、状態によるXMLの実行
- テキストメッセージの表示
- LEDの制御は行えない
- 57i
- 最上位機種のため、ほぼフルコントロール
- メッセージ表示以外にもグラフィックも可能
- LEDの制御可能
XMLブラウザ
Aastra 57iはXMLブラウザの機能を持っているためXMLでのサービスを使用することができます。デモ用アプリケーションがAAstraから提供されています。
http://www.aastratelecom.com/cps/rde/xchg/SID-3D8CCB73-FF4FABF6/03/hs.xsl/23485.htm
設定方法は簡単でファンクションキーのひとつのTypeをXMLにし、ラベルを指定した後にValueにURLを設定します。
たとえばKey1のTypeをXML、LabelをCNN NewsとしValueに http://65.205.71.13/xml/rss/rss.php?feed=cnn を記述すれば電話機のボタンを押してCNN Newsを見ることができます。
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"/> </AastraIPPhoneTextScreen>');
ドキュメントではDial: 300のようにコロンの後ろに空白があるのですが、空白が入っていると' 300'にダイヤルしようとしてしまうようです。