開発/コミュニティー/定例ミーティング
内容 †
SIProp †
SIProp新構造(予定) †
変更理由 †
- 諸般の事情により、雷電から、MultiProtocol処理部分を切り離すことになったたため。
構造解説 †
(新追加)App層 †
- B2BUAを直接使う層。
- 実質、UAとして動作し、別のアプリとの仲介を行う。
- 基本的には、プロトコルかイベントレベルで操作を行う。
- セッションの管理などはしない方向。必要な場合は、B2BUA層を使うのが、好ましいが簡易的なDialogは用意する
- 本質的には、B2BUA層と同じものであるが、特殊パターンとして別層化した。本来は、無くても問題ない層である。
(新構造)B2BUA層 †
- 下位のUA層(コマンド)を利用して、複雑なシーケンス処理を行う層。
- SIP-UA to SIP-UA の B2BUA処理(SingleProtocolB2BUA)
- ごく普通のB2BUA
- 対SIP-UA のみなどの UA処理(SingleProtocolUA)
- 上記からRelationInfo処理をのぞいて、UA to UAで動くようにしたもの。
- SIP-UA to Jabber-UA の B2BUA処理(MultiProtocolB2BUA)
- 雷電でやる予定だったもの。一部は、App層へ。この対応のため、構造が変わっています。
(今まで通り)UA層 †
- プロトコルを処理する。ヘッダーなどの変更変換。
- 今まで通りの位置づけ。
- 実体は、パケット処理関数の集合体で、全然UAじゃないので、さらに、名前の微妙感が加速中。。。(w
新B2BUA層の詳細 †
- 大きな変更点の解説。
- B2BUAは、EngineとStateCalculatorとModuleの3つの構造になりました。
(新追加)B2BUAEngine †
- SIP的なDialogやUAのリレーション(どこのUAとどこのUAが接続状態か?)を処理・管理する。
- これが、上記で記述したものの処理ごとに用意されています。これを差し替えると、B2BUAの基本動作として、どう動作するかが変化します。
- SIP-UA to SIP-UA の B2BUA処理
- 対SIP-UA のみなどの UA処理
- SIP-UA to Jabber-UA の B2BUA処理
(新追加)B2BUAStateCalculator †
- ステート分岐をチェックして、必要なbit立てを行う。
- B2BUAは、ステートマシンなわけですが、ステート分岐のifとswitch と実際のステート処理(これは次のModuleが担当)を、分けたかったの用意したものです。
(今まで通り)B2BUAModule †
- ステート処理、シーケンス処理をする部分。(上記2つのものは、この中で呼び出す部分を追加。)
- 例:Call状態で、Inviteが来たら、486 Busy Hereを返す処理。とかいうのを記述する部分です。