When the voice agent triggers DingTalk OAuth, the user leaves the app to authorize in DingTalk/browser, causing the LiveKit participant to disconnect. The voice-agent then calls DELETE /voice to terminate the session — but the user intends to return after completing OAuth. Fix: mark the session as "oauth_pending" in VoiceSessionController when oauth-trigger fires. If terminateVoiceSession is called while the flag is active (10-min grace), suppress the terminate and return 200 OK so the voice-agent exits cleanly. The session stays alive; when the user returns to the voice screen, voice/start + inject auto-resume it. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| agent-service | ||
| audit-service | ||
| auth-service | ||
| billing-service | ||
| comm-service | ||
| inventory-service | ||
| monitor-service | ||
| notification-service | ||
| ops-service | ||
| presence-service | ||
| referral-service | ||
| version-service | ||
| voice-agent | ||
| voice-service | ||