📞 日本語ドキュメント
English →

📞Layer 1: Voice Edge

電話の入口(HGW / Asterisk / bridge)。現状運用と Phase C v2 の違い。

電話の物理的な入口(Voice Edge)。ひかり電話 HGW で着信を受け、Asterisk から AudioSocket で bridge.py に渡し、OpenAI Realtime で判定します。

構成図

HGW(ひかり電話) SIP REGISTER 内線 Asterisk 20 LTS pjsip / dialplan bridge.py AudioSocket :9092 / μlaw↔PCM OpenAI Realtime classify_call AMI DBPut :5039 verdict 書込 AstDB aegis_verdict/${UNIQUEID} spam → Hangup(21) fail-safe allow → Dial(ALLOW_DESTINATION) 正常転送 unknown/空 → Dial(HUMAN_PEER) fail-open(C-2(b))
図: 実線=音声経路(μlaw 8k ↔ PCM 24k)、破線=verdict の戻し(bridge→AMI→AstDB→dialplan)。dialplan が verdict で 3 分岐する。

現状運用 と Phase C v2 の違い

現状運用(v1) Phase C v2(実機テスト前)
ハード 既存機材 新品 Raspberry Pi
OS Raspbian 9 Ubuntu 24.04 LTS
Asterisk Asterisk 11 Asterisk 20 LTS
SIP chan_sip chan_pjsip
音声連携 (旧経路) chan_audiosocket → bridge.py
設置 ChatVoice 経由 deploy.sh / verify.sh / systemd
fail の倒し方(重要)

spam は Hangup(fail-safe=遮断)、判定不能・障害は 人へ取次(fail-open=業務継続)。 全切断(fail-closed)は採用していません(C-2(b) で廃止)。詳細は用語集へ。

主要パラメータ

  • AudioSocket: 127.0.0.1:9092(μlaw 8kHz ↔ PCM16 24kHz リサンプル)
  • AMI: 127.0.0.1:5039Action: DBPut で AstDB に verdict 書込)
  • dialplan placeholder: <ALLOW_DESTINATION>(allow 転送先) / <HUMAN_PEER>(fail-open 取次先)