[[開発/コミュニティー/定例ミーティング]]


*ブロック図 [#da029f6c]
全体的なブロック図です。~
Ver.1.0と違いは、
-コンセプト
--美しさより、動くこと
-機能
--各層が、Router-Manager-Moduleの構造から、Manager-Moduleの構造になった
--B2BUAに、Routerの機能を取り込んだ
--SIPropモジュールとして、SIPやHTTPの単位で各層を一纏めに扱うようにした
&ref(SIPropブロック図.png);


*B2BUA部 [#ud4a64f3]
B2BUAに関する物です。各SIPropモジュールへの~
実装自体は、まだ先であるため、概要のみです。
-機能
--Ver.1.0のRouter相当の処理
--各層への指示(ContorolMessageにて行う)
&ref(b2bua.jpg);

*UA部 [#ef115617]
純粋に、UAとして動作させるための機能を提供する。~
極力、機能単位でUAを分割することを想定しておく。
-認証用UA
-REGISTER用UA
-GMail用UA
-etc...
&ref(ua.jpg);

*Stack部 [#l06b565c]
今回は、SIP Stackのみを考慮する。~
設計実装は、masaxmasa
設計実装は、masaxmasa氏が担当。~
Transport層は、[[MINA:http://mina.apache.org/]]を使用する。現在、hirotaka氏が実装中。
**SIP Stack [#d8708035]
UA-TU-Transaction の3層構造。
***UA [#m4647587]
ダイアログに関する操作を
ダイアログに関する操作を実装する。~
実際には、abstractとして定義し、UA層のベースクラスとして使用されるようにする。

***TU [#i1d921d7]
トランザクションに関する操作を実装する。~
大きく、2つの機能に分かれる。
-ヘッダなどのトランザクション内を操作する
--TUのベースクラス内に実装する
-ForkやCancelなどの他トランザクションを操作する
--別の新しい機能を持ったTUとして、実装する


***Transaction [#i8227da4]
ステートマシンに特化した機能のみを提供する。

&ref(stack.jpg);


*Message部 [#r55c0225]
各層共通で使用されるMessageContextクラス。~
Ver.1.0と位置づけなどは、ほとんど代わりがない。~
-FlatMessage
-ControlMessage

&ref(message.jpg);


*その他 [#fe7651a7]
-Queue
--各層を接続するQueue機構を提供する。現在、hirotaka氏が鋭意構成思案中。
-Resolver
--ルーティング情報の解決を行う。Ver.1.0とまったく変わらない位置づけ。
&ref(others.jpg);