107 lines
4.3 KiB
JSON
107 lines
4.3 KiB
JSON
{
|
|
"record_version": "1.0",
|
|
"recorded_at_utc": "2026-09-17T07:50:38Z",
|
|
"scope": "One packet-captured real outbound attempt per independently selectable SIP line.",
|
|
"code_commit": "e65cfbe",
|
|
"deployment": {
|
|
"region": "cn-beijing",
|
|
"instance_id": "i-2zeimnh6hq53q4srr3o2",
|
|
"public_eip": "123.56.71.98",
|
|
"asterisk_container": "agent-call-asterisk",
|
|
"trunks_loaded": ["provider-primary", "provider-second", "provider-third"],
|
|
"ari_after_fix": "HTTP and WebSocket smoke tests passed; ari.conf installed readable by asterisk (0640)."
|
|
},
|
|
"security": {
|
|
"diagnostic_udp": "source-limited provider SIP/media addresses only",
|
|
"global_udp_open": false,
|
|
"provider_rules_added": [
|
|
"sgr-2ze2gmif9nlbravo9b9x",
|
|
"sgr-2ze2gmif9nlbravo9b9w"
|
|
],
|
|
"observed_first_provider_media_source": "61.132.228.245"
|
|
},
|
|
"ai": {
|
|
"mode": "real",
|
|
"stack": "Bailian ASR + Qwen LLM + CosyVoice TTS",
|
|
"credentials": "runtime environment only; no secret recorded"
|
|
},
|
|
"tests": [
|
|
{
|
|
"line": "first",
|
|
"route_policy_id": "route_policy_sip_first",
|
|
"caller_profile_id": "caller_profile_sip_first",
|
|
"trunk_id": "provider-primary",
|
|
"provider": "61.132.228.221:5060",
|
|
"caller_id": "BD93205882",
|
|
"original_callee": "15003164745",
|
|
"effective_target": "708915003164745",
|
|
"status": "FAIL",
|
|
"reason_code": "CALL_NOT_ANSWERED",
|
|
"sip_exchange": ["INVITE", "100 Trying", "183 Session Progress", "486 Busy Here", "ACK"],
|
|
"rtp_in": 0,
|
|
"rtp_out": 0,
|
|
"ai_turns": 0,
|
|
"recording_valid": false,
|
|
"recording_bytes": 44,
|
|
"report": ".local/agent-call-three-tests/results-20260917/first/call-report.json",
|
|
"pcap": ".local/agent-call-three-tests/results-20260917/first/capture.pcap",
|
|
"pcap_sha256": "e8cf6aa5d5f039cc93cb81db1a390da9f56f249eb92e7ee6d2b6819772aa6034"
|
|
},
|
|
{
|
|
"line": "second",
|
|
"route_policy_id": "route_policy_sip_second",
|
|
"caller_profile_id": "caller_profile_sip_second",
|
|
"trunk_id": "provider-second",
|
|
"provider": "60.171.24.90:5060",
|
|
"caller_id": "mbkq",
|
|
"original_callee": "18625770806",
|
|
"effective_target": "18625770806",
|
|
"status": "FAIL",
|
|
"reason_code": "CALL_NOT_ANSWERED",
|
|
"sip_exchange": ["INVITE", "100 Trying", "404 Not Found", "ACK"],
|
|
"rtp_in": 0,
|
|
"rtp_out": 0,
|
|
"ai_turns": 0,
|
|
"recording_valid": false,
|
|
"recording_bytes": 44,
|
|
"report": ".local/agent-call-three-tests/results-20260917/second/call-report.json",
|
|
"pcap": ".local/agent-call-three-tests/results-20260917/second/capture.pcap",
|
|
"pcap_sha256": "2a799c3c32754dc2cadee7c064076cb94578b08cdc88766f93140ff25d5cc25c"
|
|
},
|
|
{
|
|
"line": "third",
|
|
"route_policy_id": "route_policy_sip_third",
|
|
"caller_profile_id": "caller_profile_sip_third",
|
|
"trunk_id": "provider-third",
|
|
"provider": "160.202.254.79:5060",
|
|
"caller_id": "KQ91526",
|
|
"original_callee": "18625770806",
|
|
"effective_target": "mka75518625770806",
|
|
"status": "FAIL",
|
|
"reason_code": "CALL_NOT_ANSWERED",
|
|
"sip_exchange": ["INVITE", "100 Trying", "480 Temporarily Unavailable", "ACK"],
|
|
"rtp_in": 0,
|
|
"rtp_out": 0,
|
|
"ai_turns": 0,
|
|
"recording_valid": false,
|
|
"recording_bytes": 44,
|
|
"report": ".local/agent-call-three-tests/results-20260917/third/call-report.json",
|
|
"pcap": ".local/agent-call-three-tests/results-20260917/third/capture.pcap",
|
|
"pcap_sha256": "1c5229757cd53b9384f0221b429f4629f0cd60e7f00bcb575b4bf8eb4e0416f8"
|
|
}
|
|
],
|
|
"conclusion": {
|
|
"route_selection": "verified: each task used its intended preloaded trunk",
|
|
"signaling": "verified through provider-specific SIP captures",
|
|
"answer": "not reached on any attempt",
|
|
"rtp": "not exercised because no call reached 200 OK with SDP",
|
|
"llm_asr_tts": "not exercised; no media or AI turns were possible",
|
|
"acceptance": "blocked pending provider-side answer/caller authorization and a post-answer RTP test"
|
|
},
|
|
"notes": [
|
|
"No automatic retry, redial, or trunk failover was performed.",
|
|
"The 486, 404, and 480 responses are provider/pre-answer failures and do not establish a post-answer RTP diagnosis.",
|
|
"The first provider advertised media address 61.132.228.245 in 183 SDP; it was added as a source-limited diagnostic address afterward."
|
|
]
|
|
}
|