開発/設計

目的

  • シーケンスの差分を吸収するための動作定義をする

実装方針

  • 本モジュールをモジュールをコントロールするオブジェクトに対して、インジェクションでいるような形とする
  • 機能単位のAPIとして(機能API)、詳細なコントロールメッセージを指定できるようにする。
  • また、返り値として、コントロールメッセージを返す。これにより、コール側のモジュールがどのような動作をすればよいかを得る。

定義方法

実装クラス

機能

通話

  • 通話に関する機能
    • イニシャル
    • Re-INVITE

セッションタイマー

  • セッションタイマーに関する機能
    • UPDATE/Re-INVITE変換

保留

  • 保留に関する機能

DTMF

  • DTMFに関する機能
    • みなし、RTP、INFO変換
    • DTMFによるシーケンス操作

RTP

  • RTPに関する機能
    • Codec変換

ポイント

機能の粒度の調整

  • どこまでを「機能」として、どこまでを「動作モード」とするか
    • 一発目のリクエストで判定できる単位を「機能」として定義

Stackレベルの操作が必要な場合

  • タイマー値の変更
    • トランザクションタイマーの変更
  • CANCELの操作
    • Confirmedダイアログ以降にCANCELをする