要約

  • RFC 3149ではCall Agentが機能キー番号を解釈し、ラベルやランプ、hook状態、XML画面を制御できたが、キーイベントは機能実行の証明ではなかった。
  • 画面状態は電話のシグナリングと非同期になり得るため、disp/という別endpointを持ち、共有キーはXML層が先に処理した。
  • 音量、受話器とスピーカーの切替、ミュートとランプはローカルに残り、外部の呼制御知能には物理的な境界があった。

押されたキーは番号として報告された

MGCPはGatewayの外にMedia Gateway Controller、すなわちCall Agentを置いた。基本のアナログ線なら接続と信号で足りたが、業務電話には保留、転送、会議、メッセージ、可変キー、LCD、ソフトキー、スピーカー、ミュートがある。

RFC 3149はKY、BP、XMLの三packageを追加した。KYはキー・表示灯・ラベル、BPは強制off-hook/on-hookとbeep、XMLは画面要求と利用者入力を扱った。ただし電話が送るのは「hold」ではなくキー番号である。番号と機能の対応はCall Agentに保存された。

機種ごとに配置が違う。ある機種の1番が保留でも、別機種では転送かもしれない。したがってNTFYは番号の報告を証明するだけで、利用者の意図には当時の対応表が必要である。実際の保留にはさらに遠隔判断、信号、呼状態、媒体状態が要る。

履歴には機種、firmware、対応表の版、番号、RQNT/NTFY、判断、結果を別々に残す。現在の表で過去の番号を読み直してはならない。

ラベルとランプは表示結果だった

Call Agentはキーの灯を点滅・点灯でき、隣のLCDへ自由文ラベルを設定できた。同じハードウェアを用途に合わせられる一方、表示と機能がずれる面も生まれた。

対応表が変わっても古い文字が残る、信号が受理されても機能が失敗する、利用者が隣のキーを読む、といった場合がある。文字、灯、キー通知、呼機能は近接していても別の証拠である。

仕様は冗長通信を避ける最小の低層イベントを目標にした。押下だけ必要ならreleaseは送らない。これは効率的だが、protocol logだけでは指の全動作や利用者が見た面を再現できない。

画面は別のendpointになった

表示状態がシグナリングと非同期になり得るため、RFCは電話名にdisp/を付けた別MGCP endpointを期待した。分離は単なる命名ではなく、二つの状態時計を保存する方法だった。

着信中に画面が即時voice mail転送を提示する例では、選択がXML postを作り、ringing timeoutを取消し得る。表示、押下、post、取消し、呼状態変更、相手側結果は順に観測する必要がある。

Call Agentはdeckとcardを指定し、変数を埋め、入力を受け取った。cardには文字、選択、入力、timer、遷移がある。通常電話と共用するキーはXML層が先に受け、消費しなければ電話層へ渡す。

優先順位は配送規則であり、成功の保証ではない。どの層でキーが止まったかは分かっても、正しい画面、post到達、呼状態までは証明しない。

機種名は能力証明ではなかった

全キーを探索する代わりに、実験的X-UAがメーカーと機種を一意にする文字列を要求した。Call Agentはそれを能力profileへ結び付けた。

しかし文字列はhardware attestationではない。未対応なら無視され、firmwareとずれ、profileが古いこともある。物理キー、画面寸法、配線、音声機能を証明しない。

未知のX-parameterは処理全体を失敗させず無視する。応答なしは標準レイアウトではなく不確実性である。安全な限定fallbackが必要になる。

利用者の手はネットワークを待たなかった

第4節はローカルに残るものを列挙した。ringing、受話器、speakerの音量はGateway内で実装する。speaker使用中、利用者は受話器を上げて切り替え、再びspeakerへ戻れる。その間Call Agentとは対話しない。マイクmuteと任意のlampもローカルである。

これは外部知能の否定ではなく限界である。変化する業務意味は中央、即時の音声hardware操作は端末に置かれた。仕様に記載のない低遅延や障害耐性を断定する必要はない。

ローカルも自動的な真実ではない。押下、software state、lamp、実際の音声遮断は異なる。媒体を観測して初めてmuteの結果が分かる。

遠隔要求を利用者が取り消せた

BPはspeakerを強制off-hook/on-hookにし、beepを鳴らせた。PCで番号を選び電話を起動する連携も想定した。しかし利用者は受話器を置いて強制off-hookを否定できた。

遠隔要求、Gateway受理、物理状態、呼確立、利用者反応は別の時計である。controllerの命令は最終状態ではなかった。

Security節が「base MGCPを超える新事項なし」としたことも、安全の保証ではない。XML、mapping、hook信号の認証や権限は基本protocolと配備に依存する。password modeは画面を隠すだけで、転送暗号化を証明しない。

IESG Noteは非IETF protocolの情報文書であり、同じ領域にStandards TrackのMegaco/H.248があるとした。文書地位は実行事実を消さず、後の一斉移行も証明しない。

動作が中央の名前を訂正した

中央機能が落ちてもローカルmuteは残り得る。Call Agentの更新だけで同じplastic keyの意味が変わる。XML画面が転送済みを示しても呼出しが続くことがある。

キー1がholdと呼ばれてもmediaが流れ続ければ結果はholdではない。mute lampが点いて音声が出れば表示と現実が矛盾する。disp/と電話endpointが違うなら、両方を保存する。

物理ボタンは小さな権限境界だった。中央は命名と調整をできるが、端末から報告を受けるだけで全動作を所有しない。

出典