Я разрабатываю программный телефон VOIP, мне нужно поместить номер порта RTP в часть SDP в мой запрос INVITE. как я могу найти бесплатный номер порта UDP для приема пакетов RTP. Я нашел 2 решения, но не знаю, правильно ли они это делают.Как зарезервировать порт rtp при принятии глотка INVITE-запрос
Решение 1: начните с номера порта UDP (скажем, 7000) и проверьте, свободен ли он, если он не увеличивается на 1 и продолжается до тех пор, пока не будет найден свободный порт. затем откройте сокет UDP на этом порту, чтобы другие вызовы не могли выбрать мой RTP-порт. затем отправьте запрос.
Решение 2: начать с номера порта UDP (скажем, 7000) и посмотреть, бесплатно ли оно, поместить его в SDP и отправить запрос. но когда я получаю OK ответ от другой стороны (через некоторое время), нет никакой гарантии, что номер порта, который я объявил для RTP, по-прежнему доступен. возможно, другой звонок взял это.
Я хотел бы знать, что является лучшим способом для этого.
Спасибо, мне понравилось, и это сработало. –