2.3 KiB
2.3 KiB
Track 14 Browser Softphone Runbook
Preconditions
ASTERISK_WEBRTC_ENABLED=1ASTERISK_WEBRTC_WS_URLpoints to the Asterisk WSS endpointASTERISK_BROWSER_SIP_MAP_JSONcontains a mapping for the operator app user- Asterisk
http.conf,rtp.conf, andpjsip.conffromdeployment/asterisk/are applied on the lab VM - The operator workstation trusts the QA certificate used by Asterisk WSS
- Chrome or Edge is used for
/operator
Browser config contract
Bridge route:
/proxy/asterisk-bridge/asterisk/browser-softphone/config
Expected config fields:
enabledws_urlsip_uriauthorization_usernamepassworddisplay_nameice_serversoperator_extension
If the logged-in app user has no browser SIP mapping, the route returns 403.
QA startup flow
- Open
/operatorin Chrome or Edge. - Log in with a user that has:
- operator role access
- a browser SIP mapping in
ASTERISK_BROWSER_SIP_MAP_JSON
- Click
Подключить browser softphone. - Allow microphone access.
- Confirm the
Browser Softphoneblock reachesЗарегистрирован.
Inbound QA call flow
- Place a lab call from
1001to7000. - Wait for the incoming browser banner.
- Click
Answer. - The browser tries to auto-claim the live call.
- If auto-claim does not happen because matching is ambiguous, click
Принять в работуmanually. - Click
Hang upin the browser block orЗавершитьin the live-call block. - Confirm the call moves to
Только что завершённые. - Confirm the recording is available in
/supervisor.
Coexistence notes
MicroSIP/Zoiperremains supported in QA.- Browser softphone does not replace the accepted Track 11/12 control-path.
- Browser
Hang upstill uses the accepted bridge hangup route when a live call match exists.
Common failures
Browser softphone config missing
- Check
ASTERISK_BROWSER_SIP_MAP_JSON - Check that the app user name matches the mapping key exactly
WSS registration fails
- Check Asterisk
http.conf - Check that the workstation trusts the QA certificate
- Check
ASTERISK_WEBRTC_WS_URL
Browser answer works but auto-claim does not
- The current rule requires exactly one active ringing call for the operator extension
- If more than one candidate exists, use manual
Принять в работу