Как правильно реализовать конец конференции twilio в c # /. Netcore? - PullRequest
0 голосов
/ 19 марта 2020

В моей программе есть два исходящих звонка. Когда на первый вызов приходит ответ, этот участник добавляется в конференцию, где startConferenceOnEnter: true и endConferenceOnExit: true.

var dial = new Dial()
                    .Conference(sessionId.ToString(),
                    startConferenceOnEnter: true,
                    endConferenceOnExit: true,
                    waitUrl: new Uri(this.musicUrl),
                    waitMethod: Twilio.Http.HttpMethod.Get,
                    statusCallbackEvent: callbackEvents,
                    statusCallback: new Uri($"{publicUrlBase}/(callback url)")
                );

Затем я инициирую вызов второму участнику, а когда он отвечает, он также добавлено к той же конференции.

var dial = new Dial();
                dial.Conference(sessionId.ToString(), startConferenceOnEnter: true, endConferenceOnExit: true);

Поток до этой точки работает отлично. Я получаю ответный вызов конференции как conference-start

Проблема возникает, когда первый участник или второй участник завершает вызов. Что происходит, когда первый участник завершает вызов, вызов второго участника все еще продолжается. Нет ответа от Twilio. и через некоторое время звонок второго участника также заканчивается, но все равно ответа нет. Когда я проверяю консоль Twilio, оба звонка все еще включены. Мне нужно вручную завершить вызов с помощью почтальона, и только тогда Twilio отправит все обратные вызовы двух участников: выход из конференции, завершение конференции и два завершения вызова.

То же самое происходит, если второй участник заканчивает вызов.

Есть идеи, почему обратные вызовы не срабатывают при завершении вызова? Кроме того, не следует ли завершить конференцию, когда первый участник уходит, потому что для endConferenceOnExit установлено значение true?

Любая помощь в правильном завершении конференции очень ценится. Спасибо.

Редактировать - Я добавил timeLimit до 5 минут в атрибуте набора номера. Когда первый участник завершает вызов, вызов второго участника завершается через 5 минут с причиной окончания конференции клиент оставил разговор

Когда второй участник завершает вызов, звонок первого участника заканчивается через 5 минут. Но причина в том, что клиент покинул разговор . Кроме того, после того, как второй участник заканчивает разговор, я слышу разговор, который у меня только что был с первым участником, непрерывно l oop, пока звонок не закончится.

...