パナソニック電話機対応
はじめに
本稿では、パナソニック製電話機「KX-UT123」および「KX-UT136」のラインキー着信、呼情報通知およびコールパーキング機能を活用するための方法と、パーク機能に対応するために必要なパッチを紹介します。
お約束
とても重要な事項なので一番最初にお断りしておきます。
Asteriskへの接続方法や、本ページに掲載しているパッチについて、機器メーカーには問い合わせないようお願いします。
また、本ページの記事の内容につきまして個々人の自己責任において実践頂きますよう重ねてお願いします。
Asteriskの使い方、設定の仕方などにつきましてはWeb上に数多く記事がありますので、それらをご参照ください。
対象とするAsteriskバージョン
以下のバージョンで動作を確認しました。
- Asterisk-1.8.11.1
- Asterisk-10.5.1
設定例について
設定例はAsteriskおよびパナソニック電話機について示します。
パナソニック電話機については、その機能を利用するにあたり最低限必要な項目に絞ります。 REGISTに必要な設定など、基本的なものについては電話機の取扱説明書をご参照ください。
プロビジョニング設定の手順
以下、パナソニック電話機のプロビジョニング設定の手順を簡単に示します。
1. 電話機からアクセスできるWebサーバに設定ファイルを配置します。
2. ブラウザでパナソニック電話機にログインします。(以下ブラウザの画面の操作)
3. 上部メニュー[保守] ⇒ 左メニュー[プロビジョニング保守]
4. [プロビジョニング]を[有効]にし、[スタンダードファイルURL]に手順1で配置したファイルのURLを入力
5. [登録]をクリックして設定完了
ラインキー着信
ラインキー機能を割り付けたFFキーで着信を通知させる機能です。
対応電話機
以下の電話機が対応します。
- KX-UT136
設定例
前提
前提条件を以下の通りとします。
- 055-244-7663への着信は内線電話201のFFキー1番に着信させるものとする。
電話機
プロビジョニング方式の設定例を示します。
# Panasonic SIP Phone Standard Format File # LINEKEY_ENABLE="Y" FLEX_BUTTON_QUICK_DIAL1="" FLEX_BUTTON_FACILITY_ACT1="X_PANASONIC_IPTEL_LINE" FLEX_BUTTON_FACILITY_ARG1="17,0552447663" FLEX_BUTTON_LABEL1="0552447663"
- FLEX_BUTTON_FACILITY_ACT1
- FFキー1番をラインキーとしています。
- FLEX_BUTTON_FACILITY_ARG1
- 着信音,ラインキー識別番号を設定しています。
- FLEX_BUTTON_FACILITY_LABEL1
- 記述した内容が着信時に画面表示されます。
Asterisk
extensions.confを以下のように記述します。
[default] exten => 0552447663,1,NoOp(Line Incoming) exten => 0552447663,n,SipAddHeader(P-Called-Party-ID:<sip:${EXTEN}@localhost>) exten => 0552447663,n,Dial(SIP/201) exten => 0552447663,n,Hangup()
SipAddHeaderによってラインキー着信に必要な情報を設定します。
具体的にはP-Called-Party-IDヘッダを設定し、その内容は"<sip:[ラインキー識別番号]@ドメイン>"とします。
ラインキー発信
ラインキーに対応した外線トランクをつかんで発信する機能です。
前述のラインキーによる発信についてはパナソニック電話機が対応していないため、ワンタッチダイヤル機能を利用します。
パナソニック電話機のワンタッチダイヤルは通常即時発信しますが、継続ダイヤルを認めるオプションがあります。この設定をしたFFキーを押したあと、発信したい電話番号を入力することでラインキー発信を実現します。
対応電話機
以下の電話機が対応します。
- KX-UT136
設定例
前提
- 外線1のトランク名をtrunk1とする。
- 外線2のトランク名をtrunk2とする。
- FFキーの13番を押すことで外線1から発信する。
- FFキーの14番を押すことで外線2から発信する。
電話機
ワンタッチダイヤルを割り当てたFFキーの設定値を「外線発信プレフィックス-」とすることで、即時発信を抑止できます。
プロビジョニングによる設定例を以下に示します。
# Panasonic SIP Phone Standard Format File # FLEX_BUTTON_FACILITY_ACT13="X_PANASONIC_IPTEL_ONETOUCH" FLEX_BUTTON_FACILITY_ARG13="1-" FLEX_BUTTON_LABEL13="" FLEX_BUTTON_FACILITY_ACT14="X_PANASONIC_IPTEL_ONETOUCH" FLEX_BUTTON_FACILITY_ARG14="2-" FLEX_BUTTON_LABEL14=""
Asterisk
Asteriskでは外線発信時のプレフィックス判定を入れることで対応します。
extensions.conf
[default] exten => _1X.,1,Dial(SIP/trunk1/${EXTEN:1}) exten => _2X.,1,Dial(SIP/trunk2/${EXTEN:1})
呼情報通知対応
発信側電話機および着信側電話機に、それぞれ通話相手の情報を通知する機能です。
パナソニック電話機ではSIPのP-Asserted-Identityヘッダによる通知を受けるとディスプレイにその情報を表示します。
取次転送やパーク保留解除をした際などに効果を発揮します。
対応電話機
以下の電話機が対応します。
- KX-UT123
- KX-UT136
設定例
前提
電話機
電話機側の設定は不要です。
Asterisk
sip.conf
パナソニック電話機に対応する電話機セクションに「sendrpid=pai」を記述します。
また、各電話機のセクションにcalleridを記述します。
このcalleridで記述した内容が相手側電話機に通知されます。
[201] type=peer host=dynamic secret=secret201 sendrpid=pai callerid=Alice <201> [202] type=peer host=dynamic secret=secret202 sendrpid=pai callerid=Bob <202> [203] type=peer host=dynamic secret=secret203 sendrpid=pai callerid=Charlie <203>
extensions.conf
extensions.confについては特に工夫は必要ありません。
従来通りの発着信ルールを記述します。
[default] exten => _20X,1,Dial(SIP/${EXTEN})
制限事項
外線発信をした際、発信者(=内線側)が取次転送やパーク保留を実行した場合には、転送先やパーク保留解除実行者に外線側の情報が通知されません。
これに関する解決策はいくつか考えられますが、具体的には本稿末尾のお問い合わせ先までお問い合わせください。
コールパーキング対応
パーク機能を割り当てたFFキーやソフトキーによって一発パークできる機能です。
また、パーク機能を割り付けたFFキーにパークプレゼンスを表示し、パーク中のFFキーを押下することで一発ピックアップができるようになります。
対応電話機
以下の電話機が対応します。
- KX-UT123
- KX-UT136
FFキーによるパーク/パークピックアップはKX-UT136が対応します。
KX-UT123とKX-UT136の混在も可能です。
パッチ
http://wiki2.iweave.jp/asterisk/Asterisk-panasonic-patches.tar.gz
ライセンス
本パッチはGPLv2.0に準拠します。
設定例
前提
前提環境を以下の通り定義します。
- パーク実行はINFOメソッドを使用する方式とします。
- パーク実行番号は700とします。
- パークロットは701,702,703,704とします。
- パーク再呼は考えないものとします。
- UT-136はFFキー、ソフトキーの両方を有効にするものとします。
- UT-136のFFキーは21番から24番をパークとし、パークロット番号701から順に割り当てるものとします。
- パークコンテキストはparkedcallsとします。
- 電話機の発信コンテキストはinternalとします。
電話機
KX-UT123
# Panasonic SIP Phone Standard Format File # CALLPARK_KEY_ENABLE="Y" CALLPARK_METHOD="1"
KX-UT136
# Panasonic SIP Phone Standard Format File # CALLPARK_AREAKEY_ENABLE="Y" CALLPARK_KEY_ENABLE="Y" CALLPARK_METHOD="1" FLEX_BUTTON_FACILITY_ACT21="X_PANASONIC_IPTEL_CALLPARK" FLEX_BUTTON_FACILITY_ARG21="701" FLEX_BUTTON_FACILITY_ACT22="X_PANASONIC_IPTEL_CALLPARK" FLEX_BUTTON_FACILITY_ARG22="702" FLEX_BUTTON_FACILITY_ACT23="X_PANASONIC_IPTEL_CALLPARK" FLEX_BUTTON_FACILITY_ARG23="703" FLEX_BUTTON_FACILITY_ACT24="X_PANASONIC_IPTEL_CALLPARK" FLEX_BUTTON_FACILITY_ARG24="704"
Asterisk
features.conf
[general] parkext => 700 parkpos => 701-704 context => parkedcalls parkingtime => 3600 parkinghints => yes
extensions.conf
[default] include => parkedcalls exten => _X.,1,NoOp(Internal Calls) exten => _X.,n,Dial(SIP/${EXTEN}) exten => _X.,n,Hangup()
制限事項
KX-UT136において、ソフトキーによるパーク実行については自己パークと他者パークをFFキーで見分けることはできません。(ソフトキーによるパークは自己バーク、他者パークも赤色表示)
これはAsteriskの実装上の問題であり、電話機側の制御の問題ではありません。
この問題点への対応につきましては検討しております。 解決できた際には追って本ページにてパッチを公開します。
使い方のワンポイント
パークプレゼンスはAsteriskのhint機構を利用しています。 SIPではSUBSCRIBE~NOTIFYの処理で情報通知が行われますが、この通知に必要なサブスクリプション情報がAsteriskのastdbに反映されません。
したがってAsteriskを再起動するとサブスクリプション情報が失われるため、再び電話機からSUBSCRIBEが行われるまでパークプレゼンスが伝達されなくなります。
これに対応するためにはasteriskを改造する、またはsubscription期間を短くするなどの方法が考えられます。 それぞれ一長一短がありますので、ご検討の上ご対応ください。
おわりに
本ページの内容についてご不明な点や他のAsteriskのバージョンへのパッチの移植、本ページで公開したパッチと他のパッチ(例えばナカヨ電話機向けパッチ)との併用になどについては下記お問い合わせ先までご相談ください。
有償にてサポートします。
文責、お問い合わせ先
- 株式会社アイウィーヴ
- 担当
- 小西 康弘(直通電話 055-244-7663)
- 保坂 好宣(直通電話 055-287-7705)