• 追加された行はこの色です。
  • 削除された行はこの色です。
[[開発/設計]]

*目的 [#b46ce2e2]
-シーケンスの差分を吸収するための動作定義をする


*実装方針 [#ea10c186]
-本モジュールをモジュールをコントロールするオブジェクトに対して、インジェクションでいるような形とする
-機能単位のAPIとして([[機能API>開発/設計/オブジェクト/機能API]])、詳細な[[コントロールメッセージ>開発/設計/オブジェクト/コントロールメッセージ]]を指定できるようにする。
-また、返り値として、[[コントロールメッセージ>開発/設計/オブジェクト/コントロールメッセージ]]を返す。これにより、コール側のモジュールがどのような動作をすればよいかを得る。


*定義方法 [#c3ba058f]
-「[[機能API>開発/設計/オブジェクト/機能API]]+[[コントロールメッセージ>開発/設計/オブジェクト/コントロールメッセージ]]」で、「保留条件をc=0とした転送機能」など出来るようにする。
-[[コントロールメッセージ>開発/設計/オブジェクト/コントロールメッセージ]]は、機能に依存する。

*実装クラス [#i1b37dd4]
-[[UAManagerBase:http://www.siprop.org/ja/javadoc/prototype_design/org/siprop/prototype/j2se/ua/UAManagerBase.html]]
-[[UAModuleBase:http://www.siprop.org/ja/javadoc/prototype_design/org/siprop/prototype/j2se/ua/UAModuleBase.html]]


*機能 [#c152d493]
**通話 [#r769a8c9]
-通話に関する機能
--イニシャル
--Re-INVITE

**セッションタイマー [#n8326144]
-セッションタイマーに関する機能
--UPDATE/Re-INVITE変換

**保留 [#fc3653d6]
-保留に関する機能
--

**DTMF [#x9e85c89]
-DTMFに関する機能
--みなし、RTP、INFO変換
--DTMFによるシーケンス操作

**RTP [#z3de819a]
-RTPに関する機能
--Codec変換


*ポイント [#f6f62f9f]
**機能の粒度の調整 [#jd812b51]
-どこまでを「機能」として、どこまでを「動作モード」とするか
--一発目のリクエストで判定できる単位を「機能」として定義

**Stackレベルの操作が必要な場合 [#pdab169b]
-タイマー値の変更
--トランザクションタイマーの変更
-CANCELの操作
--Confirmedダイアログ以降にCANCELをする