Как обработать RTP-сессию в формах Xamarin для Android и IOS? - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь создать приложение, которое позволит зарегистрированному клиенту сделать аудиозвонок другому зарегистрированному клиенту с помощью Wi-Fi (для него не требуется inte rnet).

Мне удалось успешно зарегистрироваться и совершить звонок, используя SIP.

После ответа на звонок я не знаю, как обрабатывать поток RTP и подключать его к микрофону и динамику телефона (Android и IOS) для выполнения обычных функций вызова.

Я использую библиотеку Xamarin и SIP Sorcery. Я новичок в Xamarin и разработке мобильных приложений.

Ниже приведена часть кода, чтобы объяснить себя немного лучше:

    async Task Call()
    {
        Console.WriteLine("Start of Calling section");

        rtpSession = new RTPMediaSession((int)SDPMediaFormatsEnum.PCMU, AddressFamily.InterNetwork);

        // May be somthing like this to connect audio devices to RTP session.
        //get microphone
        //get speaker
        //ConnectAudioDevicesToRtp(rtpSession, microphone, speaker);

        // Place the call and wait for the result.
        bool callResult = await userAgent.Call(DESTINATION, ssid, userName, registerPassword, domainHost, rtpSession);

        if (callResult)
        {
            Console.WriteLine("Call attempt successful. Start talking");
            //I am reaching to this point and need help with how to move forward from here to support audio calling functionality for both Android and IOS
        }
        else
        {
            Console.WriteLine("Call attempt failed.");
        }

    }

Буду признателен за любую помощь или направление. Спасибо.

...