Asterisk-1.2の変更点のソースを表示
←
Asterisk-1.2の変更点
移動先:
案内
、
検索
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、以下のグループのいずれかに属する利用者のみが実行できます:
登録利用者
、
管理者
。
このページは編集や他の操作ができないように保護されています。
このページのソースの閲覧やコピーができます。
==インストール要件 == Asterisk 1.2をインストールするためにはZaptel、libpriも1.2系にアップグレードする必要があります。PRIを使用しない場合にはlibpriは不要です。 ==設定ファイル類の変更箇所== 1.2でのextensions.confのコマンド類の変更点を別ページに整備中です。<br> 1.2における主な変更点は以下の通りです。<br> ===extensions.conf=== ====便利な記述方法==== Asterisk 1.2からはextensions.confのプライオリティに'''n'''が使えるようになりました。 exten => 1234,1,Answer exten => 1234,n,MeetMe... このように記述すると n は自動的にインクリメントされた値(ここならば2)が使用されます。このため、従来までのようにNoPを書いておいたり、プライオリティを全て書き直すことなくプライオリティの挿入などが簡単にできるようになりました。<br> さらにこの記述方法ではラベルも使用できます。<br> ("n"はNextの意味らしいです) exten => 201,1,Dial(SIP/201) exten => 201,n,Goto(test) <--飛び先のラベルを書きます exten => 201,n,NoOp exten => 201,n,NoOp exten => 201,n(test),NoOp <--これがラベルです exten => 201,n,NoOp この例は次のように展開されます。 *CLI> show dialplan [ Context 'default' created by 'pbx_config' ] '201' => 1. Dial(SIP/201) [pbx_config] 2. Goto(test) [pbx_config] 3. NoOp() [pbx_config] 4. NoOp() [pbx_config] [test] 5. NoOp() [pbx_config] 6. NoOp() [pbx_config] ただし+101ジャンプの処理等には注意。+101ジャンプ等を行いたい場合には次のように書きます。 exten => 201,1(startdial),Dial(SIP/201) <--ここにラベルをつけておきます exten => 201,n,Goto(test) exten => 201,n,NoOp exten => 201,n,NoOp exten => 201,startdial+101,NoOp <--ラベル+101をPriorityとします こう書くと次のように展開 されます。 *CLI> show dialplan [ Context 'default' created by 'pbx_config' ] '201' => 1. Dial(SIP/201) [pbx_config] 2. Goto(test) [pbx_config] 3. NoOp() [pbx_config] 4. NoOp() [pbx_config] 102. NoOp() [pbx_config] [test] 103. NoOp() [pbx_config] ====Set系アプリケーションが関数に変更==== 全般的にSet系のアプリケーションのが変わっています。<br> 従来は<br> exten => 1000,1,SetLanguage(jp) 1.2からは<br> exten => 1000,1,Set(LANGUAGE()=jp) となり、Set系はSet()で処理するように変更されました。これはアプリケーション・コマンドとして実装されていたものが、関数(function)としての実装に変更されたものが多いためです。<br> ただしAsterisk 1.2では互換性の維持のためSetLanguage()など、従来のアプリケーション・コマンドとして実装されていたSet系もそのまま使えますが、1.4への移行を考えた場合には書き直しておくのが良いでしょう。<br> =====主な変更箇所===== *SetVar Set(Variable=Value) *SetGlobalVar Set(Variable=Value,g) :Setのオプションで"g"をつけます。 *SetCIDNum,SetCIDName Set(CALLERID(num)=value) Set(CALLERID(name)=value) *SetLanguage Set(LANGUAGE()=lang) *DigitTimeout Set(TIMEOUT(digit)=timeout) ===IVRメニューを使用する場合の注意=== 1.0と1.2ではautofallthroughの挙動が変わっています。1.0で使用していたIVRメニューをそのまま使用する場合にはautofallthrough=noを指定してください。 注:1.2の後期バージョンではautofallthroughでは対応できないようです。WaitExtenを使う方式に書き直してください。 ===musiconhold.conf=== Asterisk 1.2では書式が大きく変わっています。従来通りのクラス設定を行い、mpg123で再生を行う場合には以下のように記述します。<br> [default] mode=quietmp3 directory=/var/lib/asterisk/mohmp3 この場合にも互換性維持のため1.0系の書式のままでも動作するようですが、以下のような警告が出力されます。 Oct 3 18:02:55 WARNING[10679] res_musiconhold.c: The old musiconhold.conf syntax has been deprecated! Please refer to the sample configuration for information on the new syntax. 新しい機能としてはファイルからの直接再生モード(mpg123等の外部プレイヤーを使わない)が追加されており、この場合には以下のように記述します。 [default] mode=files directory=/var/lib/asterisk/mohmp3 ただし、この場合には各CODECに対応したファイルを用意しておかなくてはならないようです。Voicemailアプリケーション同様に、.gsm、.wav、.WAVなどを一式用意すれば良いものと考えられます。 ===アプリケーション、ファンクション=== ====Math()==== Set系の変更にともないMath()も関数として実装され書式が変更になっています。<br> 新しい書式では<br> Set(var=${Math(....)}) で記述するようです。(余計わかりにくくなってないか・・?)<br> ====SetCIDNum,SetCIDName==== SetCIDNum、SetCIDNameは廃止予定とされます。かわりに以下のふたつを用います。SetCIDNumに相当するのは上で、SetCIDNameが下です。 Set(CALLERID(number)=value) Set(CALLERID(name)=value) ====Set系の例外==== ただし何でもかんでも、こう変更になったわけではなく例外もあります。 SetMusicOnHold(class) これはこのままです ==プライオリティ・ジャンプ== '''n+101'''ジャンプは『好まれない』使用方法になったようです。処理を分岐させる際にはn+101ジャンプを使うのではなく、アプリケーション・コマンドの実行後の変数を見るようにします。n+101ジャンプを使用したい場合にはextensions.confに priorityjumping=yes を付けるか、あるいは各アプリケーションの'''j'''オプションを使います。<br> ただし、Asterisk 1.2のデフォルトではpriorityjumping=yesです。このため、1.0系の書き方はそのまま1.2で使用することができますが、1.4への移行の際にインパクトが大きくなりますので注意してください。
Asterisk-1.2の変更点
に戻る。
案内メニュー
個人用ツール
アカウント作成
ログイン
名前空間
ページ
議論
変種
表示
閲覧
ソースを表示
履歴表示
その他
検索
VoIp-Info.jp
案内
メインページ
最近の更新
全ページ
おまかせ表示
ヘルプ
要望
広告
サイトコンテンツ
コミュニティ
Asterisk
Asterisk 18
Asterisk 20
Asterisk 22
IP電話機
購入情報
便利ツール
導入事例
回線接続
ベンダー
ひかり電話
セキュリティ
イベント情報
スペシャル
Asterisk pjsip
ABS
黒電話 ハック
ユーザ登録
ログイン/登録
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報