「利用者:Kaoru」の版間の差分
提供: VoIP-Info.jp
細 (→LookupCIDName()相当: Fix conditional) |
|||
(同じ利用者による、間の15版が非表示) | |||
2行目: | 2行目: | ||
=中の人= | =中の人= | ||
− | + | 105いうたらsnomじゃなくてシマノだろ。 | |
+ | |||
+ | 日本語パッチとかrt200eとかメンテ用: http://github.com/kaoru6/asterisk | ||
==config== | ==config== | ||
*extensions.confは読めるがAELで書く派 | *extensions.confは読めるがAELで書く派 | ||
− | *Asterisk | + | *Asterisk 11系前提 |
==手元の機材== | ==手元の機材== | ||
18行目: | 20行目: | ||
*AD-200SE | *AD-200SE | ||
+ | *PR-S300SE | ||
*RTA55i | *RTA55i | ||
+ | |||
+ | ==運用実績== | ||
+ | |||
+ | * NTT東西ひかり電話VoIPアダプタ3個register | ||
+ | * 20端末程度収容 | ||
+ | |||
=下書き= | =下書き= | ||
27行目: | 36行目: | ||
notifyringing=noならラインキー点灯し押せばつながる。 | notifyringing=noならラインキー点灯し押せばつながる。 | ||
− | ==ports/japanese/asterisk16- | + | ==LookupCIDName()相当== |
+ | if ( ${DB_EXISTS(cidname/${CALLERID(num)})} ) { | ||
+ | Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})}); | ||
+ | } | ||
+ | |||
+ | ==Asterisk 1.6.0.x への rt200ne パッチ== | ||
+ | |||
+ | chan_sip.c.rt200ne.091227-00.patch で Bad Request 400連発でregisterできない。 | ||
+ | Expected: Authorization: Digest username="0006", realm="realm", algorithm=MD5, uri="sip:192.168.XXX.XXX" ... | ||
+ | |||
+ | Actual: Authorization: Digest username="0006", realm="realm", algorithm=MD5, uri="domain" ... | ||
+ | |||
+ | とりあえずchan_sip.cを追って修正した。 | ||
+ | Asterisk 1.6.0.27,28に使えるパッチはできたが、ここへの添付方法がよくわからない。 | ||
+ | |||
+ | ==ports/japanese/asterisk16-sounds (FreeBSD)== | ||
+ | |||
+ | cd /usr/ports/japanese/asterisk16-sounds && sudo make install で余裕。 | ||
+ | http://www.freebsd.org/cgi/query-pr.cgi?pr=139448 | ||
+ | |||
+ | ==DAHDI+FreeBSD== | ||
+ | |||
+ | cd /usr/ports/misc/dahdi && sudo make install で余裕。 | ||
+ | http://gihyo.jp/admin/clip/01/fdt/201007/26 | ||
+ | |||
+ | == AELでextensionの名前制御== | ||
+ | |||
+ | AELではswitchの中などで、extensionの名前が意図せずに変わってしまう。 | ||
+ | これはPickup()を使う場合に都合が悪い。 | ||
+ | |||
+ | _0. => { | ||
+ | ... | ||
+ | switch ($FOONUMBER) { | ||
+ | case 911: | ||
+ | jump to911; | ||
+ | break; | ||
+ | ... | ||
+ | } | ||
+ | } | ||
+ | |||
+ | to911 => { | ||
+ | Dial(SIP/234&SIP/456,30,tw); | ||
+ | Congestion(); | ||
+ | } | ||
+ | |||
+ | などとして分岐の無いextensionへjumpさせれば変化しにくくなる。 | ||
+ | 変化したかどうかはael reload後にdialplan showして確認すること。 | ||
+ | 以下のようにPickup()でjumpした先を指定すればいい。 | ||
− | + | *88 => { | |
+ | Pickup(to911); // Dial()部分はto911からは変化しないはず | ||
+ | ... | ||
+ | } |
2017年7月4日 (火) 11:34時点における最新版
目次
中の人
105いうたらsnomじゃなくてシマノだろ。
日本語パッチとかrt200eとかメンテ用: http://github.com/kaoru6/asterisk
config
- extensions.confは読めるがAELで書く派
- Asterisk 11系前提
手元の機材
- snom220
- snom105
- IO-DATA POE-PS
- FXC ES1012VPE
- BUFFALO WLE2-POE-S
- Nortel 460-24T-PWR
- AD-200SE
- PR-S300SE
- RTA55i
運用実績
- NTT東西ひかり電話VoIPアダプタ3個register
- 20端末程度収容
下書き
ラインキー 1番に電話(snom220)
Asterisk 1.6.0でもAsterisk 1.4系列と同様の設定でOK。 notifyringing=yesにするとラインキー点滅する上に押してもつながらないので注意。 notifyringing=noならラインキー点灯し押せばつながる。
LookupCIDName()相当
if ( ${DB_EXISTS(cidname/${CALLERID(num)})} ) { Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})}); }
Asterisk 1.6.0.x への rt200ne パッチ
chan_sip.c.rt200ne.091227-00.patch で Bad Request 400連発でregisterできない。
Expected: Authorization: Digest username="0006", realm="realm", algorithm=MD5, uri="sip:192.168.XXX.XXX" ...
Actual: Authorization: Digest username="0006", realm="realm", algorithm=MD5, uri="domain" ...
とりあえずchan_sip.cを追って修正した。 Asterisk 1.6.0.27,28に使えるパッチはできたが、ここへの添付方法がよくわからない。
ports/japanese/asterisk16-sounds (FreeBSD)
cd /usr/ports/japanese/asterisk16-sounds && sudo make install で余裕。
http://www.freebsd.org/cgi/query-pr.cgi?pr=139448
DAHDI+FreeBSD
cd /usr/ports/misc/dahdi && sudo make install で余裕。
http://gihyo.jp/admin/clip/01/fdt/201007/26
AELでextensionの名前制御
AELではswitchの中などで、extensionの名前が意図せずに変わってしまう。 これはPickup()を使う場合に都合が悪い。
_0. => { ... switch ($FOONUMBER) { case 911: jump to911; break; ... } } to911 => { Dial(SIP/234&SIP/456,30,tw); Congestion(); }
などとして分岐の無いextensionへjumpさせれば変化しにくくなる。 変化したかどうかはael reload後にdialplan showして確認すること。 以下のようにPickup()でjumpした先を指定すればいい。
*88 => { Pickup(to911); // Dial()部分はto911からは変化しないはず ... }