diff --git a/src/api/ngcp-call.js b/src/api/ngcp-call.js index 294da75e..959ea271 100644 --- a/src/api/ngcp-call.js +++ b/src/api/ngcp-call.js @@ -166,7 +166,11 @@ export async function callStart ({ number }) { $outgoingRtcSession = $userAgent.call(number, { eventHandlers: { progress (event) { - callEvent.emit('outgoingProgress', event) + if (event.response.status_code === 183) { + callEvent.emit('outgoingProgress', event) + } else { + callEvent.emit('outgoingRinging', event) + } }, failed (event) { callEvent.emit('outgoingFailed', event) diff --git a/src/boot/ngcp-call.js b/src/boot/ngcp-call.js index 871999e9..e572138e 100644 --- a/src/boot/ngcp-call.js +++ b/src/boot/ngcp-call.js @@ -38,9 +38,15 @@ export default async ({ Vue, app, store }) => { error: errorMessage }) }) - callEvent.on('outgoingProgress', (event) => { + callEvent.on('outgoingRinging', (event) => { store.commit('call/startRinging') }) + callEvent.on('outgoingProgress', (event) => { + store.commit('call/stopRinging') + }) + callEvent.on('outgoingConfirmed', (event) => { + store.commit('call/stopRinging') + }) callEvent.on('outgoingFailed', callFailed) callEvent.on('incomingFailed', callFailed) callEvent.on('outgoingEnded', callFailed)