検索
AND検索
OR検索
トップ
|
リロード
|
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
開発/設計/議論/制御モジュール・コントローラ部の機能 をテンプレートにして作成
Main Menu
TOP
Readme
Contents
Download
最新の20件
2008-07-09
支援団体
2007-12-12
SIProp/PJ体制
2007-09-09
ダウンロード
2007-08-30
開発/コミュニティー/勉強会
過去ニュース
FrontPage
2007-08-28
開発/イベント
2007-08-16
yusuke
hirotaka
sakukawa
masaxmasa
yamaz
ikeda
noritsuna
連絡帳
掲示板
2007-07-16
開発/コミュニティー/勉強会/2007/07/15
2007-05-25
開発/コミュニティー/勉強会/2007/05/25
2007-05-11
メンバー
2007-05-07
開発/サブプロジェクト
Total:0/Today:0
開始行:
[[開発/設計/議論]]
*議論の目的 [#tf5dce46]
-制御モジュール
-コントローラ部
--制御モジュールコントロール
--スクリプト(Router)~
に、どのような機能を持たせるべきかを決定するための場所で...
*制御モジュール・コントローラ部の位置付け [#cd3f0fa6]
**制御モジュールの本質 [#sd5e26b4]
B2BUAにおいて、重要なコアとなる部分です。~
B2BUAとして考えるのであれば、これ以外の部分は不要でありま...
***理由 [#j1567183]
-制御モジュール≒UA
であるため、これがあれば、B2BUAとして動作させることが出来...
ただし、この場合は、柔軟性がほとんどなくなる点が、「SIPro...
なり、他の部分が必要となる理由となります。
**コントローラ部の存在理由 [#o48c6449]
下記のような役割を持たせたいために存在しています。
-制御モジュールを動的に呼び出す
--DIのような使い方を想定しています
-制御モジュールの処理結果の評価を行う
--制御モジュールの制御(コントロール)を行うことを想定して...
制御モジュールを複数制御するような場合に使用します
***「制御モジュールを動的に呼び出す」の概要 [#oc1a2f87]
例えば、A-UA制御モジュールというものがあり、これに、
A-UA.Call()
という通話用のメソッドがあった場合と仮定します。~
そして、A-UAが、Ver.2.0になって、通話機能が変化してしまっ...
A-UA.CallForV2()
A-UA.CallForV1()
というものを用意するようなことを想定します。(別モジュー...
てもよい。)
このような場合に、スクリプト部で、条件分けをして、メソッ...
ョンをさせるために使用します。
例:
if(userAgent == "v1") {
injection A-UA.CallForV1() in A-UA.Call();
} else if(userAgent == "v2"){
injection A-UA.CallForV2() in A-UA.Call();
} else {
injectionList A-UA.CallForV1() in A-UA.Call();
injectionList A-UA.CallForV2() in A-UA.Call();
}
※最後の「else句」は、1つにインジェクションが絞れない場合...
***「制御モジュールの処理結果の評価を行う」の概要 [#m654f...
上記の「else句」部分のように、制御モジュールが並列起動と...
モジュールのコントロールをしなければなりませんので、その...
めのものとなります。~
そして、この部分は、非常に複雑となるため、スクリプトでは...
となります。(スレッド動作も必要となるため、JavaScriptでは...
ん。)
例:
var result = A-UAv1.Call();// A-UAv2.Call()も同様にして...
// B2BUAモード
if(result == "B2BUA") {
A-UA.Send();
// パケットをスルーするだけモード
} else if(result == "THROW"){
A-UA.Sleep();
// それ以外。終了させる
} else {
A-UA.Stop();
}
具体的には、
A-UAコントロール部
というコントロール部があり、その内部で、
A-UAv1制御モジュール
A-UAv2制御モジュール
をコントロールするような構成となります。
**制御モジュール・コントローラ部のまとめ [#a86a5396]
簡単に言うと、一番べた〜と実装した場合が、最初に書いた
制御モジュールのみ
という構成となります。ただし、これでは、柔軟性がほとんど...
そして、制御モジュールから、設定可能部分をすべてスクリプ...
スクリプト+制御モジュール
という構成となります。~
しかし、すべての制御をスクリプトで書くのは、現実的ではな...
は、
制御モジュールコントロール+スクリプト+制御モジュール
という構成を取っています。~
すなわち、スクリプトと制御モジュールが対極に位置している...
*議論の論点 [#yc9bf9b7]
-制御モジュール
-コントローラ部
--制御モジュールコントロール
--スクリプト(Router)
上記の3機能に対して、どのように機能を割り振るかを決定しま...
**上記3機能が持つ具体的な機能 [#v0f69474]
-ダイアログの管理
--トランザクション管理
-シーケンスの管理
--ルーティング情報
--ステート状態
-メッセージの変換
--ヘッダーの追加、削除
--ヘッダーの変更
-各ダイアログの連携
-制御モジュール並列化制御
*結論 [#t1f97055]
FirstVersionでは、
制御モジュール+制御モジュールコントロール
という、単純な構成として、実装し、具体的な機能要件が見え...
**制御モジュールで持つべき機能 [#j758fb94]
-UAとして、必要な動作の管理
--ダイアログの管理
--トランザクション管理
--シーケンスの管理
--ステート状態
**制御モジュールコントロール [#ode2f5de]
-制御モジュール並列化制御
-B2BUAとして、UAをコントロールする機能
--ルーティング情報
--ヘッダーの追加、削除
--各ダイアログの連携
--制御モジュール並列化制御
**スクリプトで持つべき機能 [#gc2e23f4]
-ヘッダーによる機能の振り分け(メソッドの振り分け?)
--FirstVersionでは、分離可能な状態としておいて、次期バー...
*参考資料 [#vd8076be]
-[[クラスローダーフレームワーク:http://japan.internet.com...
終了行:
[[開発/設計/議論]]
*議論の目的 [#tf5dce46]
-制御モジュール
-コントローラ部
--制御モジュールコントロール
--スクリプト(Router)~
に、どのような機能を持たせるべきかを決定するための場所で...
*制御モジュール・コントローラ部の位置付け [#cd3f0fa6]
**制御モジュールの本質 [#sd5e26b4]
B2BUAにおいて、重要なコアとなる部分です。~
B2BUAとして考えるのであれば、これ以外の部分は不要でありま...
***理由 [#j1567183]
-制御モジュール≒UA
であるため、これがあれば、B2BUAとして動作させることが出来...
ただし、この場合は、柔軟性がほとんどなくなる点が、「SIPro...
なり、他の部分が必要となる理由となります。
**コントローラ部の存在理由 [#o48c6449]
下記のような役割を持たせたいために存在しています。
-制御モジュールを動的に呼び出す
--DIのような使い方を想定しています
-制御モジュールの処理結果の評価を行う
--制御モジュールの制御(コントロール)を行うことを想定して...
制御モジュールを複数制御するような場合に使用します
***「制御モジュールを動的に呼び出す」の概要 [#oc1a2f87]
例えば、A-UA制御モジュールというものがあり、これに、
A-UA.Call()
という通話用のメソッドがあった場合と仮定します。~
そして、A-UAが、Ver.2.0になって、通話機能が変化してしまっ...
A-UA.CallForV2()
A-UA.CallForV1()
というものを用意するようなことを想定します。(別モジュー...
てもよい。)
このような場合に、スクリプト部で、条件分けをして、メソッ...
ョンをさせるために使用します。
例:
if(userAgent == "v1") {
injection A-UA.CallForV1() in A-UA.Call();
} else if(userAgent == "v2"){
injection A-UA.CallForV2() in A-UA.Call();
} else {
injectionList A-UA.CallForV1() in A-UA.Call();
injectionList A-UA.CallForV2() in A-UA.Call();
}
※最後の「else句」は、1つにインジェクションが絞れない場合...
***「制御モジュールの処理結果の評価を行う」の概要 [#m654f...
上記の「else句」部分のように、制御モジュールが並列起動と...
モジュールのコントロールをしなければなりませんので、その...
めのものとなります。~
そして、この部分は、非常に複雑となるため、スクリプトでは...
となります。(スレッド動作も必要となるため、JavaScriptでは...
ん。)
例:
var result = A-UAv1.Call();// A-UAv2.Call()も同様にして...
// B2BUAモード
if(result == "B2BUA") {
A-UA.Send();
// パケットをスルーするだけモード
} else if(result == "THROW"){
A-UA.Sleep();
// それ以外。終了させる
} else {
A-UA.Stop();
}
具体的には、
A-UAコントロール部
というコントロール部があり、その内部で、
A-UAv1制御モジュール
A-UAv2制御モジュール
をコントロールするような構成となります。
**制御モジュール・コントローラ部のまとめ [#a86a5396]
簡単に言うと、一番べた〜と実装した場合が、最初に書いた
制御モジュールのみ
という構成となります。ただし、これでは、柔軟性がほとんど...
そして、制御モジュールから、設定可能部分をすべてスクリプ...
スクリプト+制御モジュール
という構成となります。~
しかし、すべての制御をスクリプトで書くのは、現実的ではな...
は、
制御モジュールコントロール+スクリプト+制御モジュール
という構成を取っています。~
すなわち、スクリプトと制御モジュールが対極に位置している...
*議論の論点 [#yc9bf9b7]
-制御モジュール
-コントローラ部
--制御モジュールコントロール
--スクリプト(Router)
上記の3機能に対して、どのように機能を割り振るかを決定しま...
**上記3機能が持つ具体的な機能 [#v0f69474]
-ダイアログの管理
--トランザクション管理
-シーケンスの管理
--ルーティング情報
--ステート状態
-メッセージの変換
--ヘッダーの追加、削除
--ヘッダーの変更
-各ダイアログの連携
-制御モジュール並列化制御
*結論 [#t1f97055]
FirstVersionでは、
制御モジュール+制御モジュールコントロール
という、単純な構成として、実装し、具体的な機能要件が見え...
**制御モジュールで持つべき機能 [#j758fb94]
-UAとして、必要な動作の管理
--ダイアログの管理
--トランザクション管理
--シーケンスの管理
--ステート状態
**制御モジュールコントロール [#ode2f5de]
-制御モジュール並列化制御
-B2BUAとして、UAをコントロールする機能
--ルーティング情報
--ヘッダーの追加、削除
--各ダイアログの連携
--制御モジュール並列化制御
**スクリプトで持つべき機能 [#gc2e23f4]
-ヘッダーによる機能の振り分け(メソッドの振り分け?)
--FirstVersionでは、分離可能な状態としておいて、次期バー...
*参考資料 [#vd8076be]
-[[クラスローダーフレームワーク:http://japan.internet.com...
ページ名: