Шлюз RTMP-SIP

Discussion in 'RTMP SIP Gateway' started by Oleg Neverin, Nov 28, 2014.

  1. Oleg Neverin

    Oleg Neverin New Member

    Мы рассматриваем возможность использования вашего продукта для перекодирования сигнала с SIP на RTMP через сервер Wowza. Настроить приложение не получается. При попытке подключения к нашему провайдеру SIP через клиент PhoneJS.html мы получаем ошибку - что-то о серийном номере в файле flashphoner.properties. Я так понимаю нужно активировать пробную лицензию через activation.sh упомянутый в документации. Однако в комплекте такого крипта нет. Подскажите пожалуйста, как заставить приложение работать? У нас грядет большой проект и нужно иметь рабочую демку к тому моменту. И еще. Т.к. вы уже работали с Wowza, можете подтвердить что мы можем использовать их паблишер вместе с вашим плагином?
  2. Max

    Max Administrator Staff Member

  3. Oleg Neverin

    Oleg Neverin New Member

    Суть такая. Push-паблишер должен "скушать" поток от Wowza и push-ить его через RTMP на клиента. Плагин просто загружает пару модулей в Application.xml. Мы же хотим использовать ваш шлюз RTMP-SIP чтобы сделать SIP-звонок, который можно было бы вытолкнуть через RTMP нужным нам образом.
  4. Max

    Max Administrator Staff Member

    Можете дать ссылки на документацию по Wowza или иную?
    Пока не совсем понимаю, что значит "нужным нам образом".
    Имеете в виду программу или железо? Есть какие-то спецификации?
    Flashphoner использует серверный паблишер Wowza.
    Когда Flashphoner получает поток через SIP, он транслирует его сервере Wowza используя серверный паблишер Wowza.
    Затем флэш-клиент подключается к потоку и проигрывает его. Это я описал, как все работает.
    Вы говорите о некоем третьем приложении - "нужным нам образом". Я пока не понял, о каком приложении здесь идет речь, и как мы можем подключить полученный поток к этому приложению.
    Единственный способ, который пока приходит в голову - это "нужное вам" приложение создает RTMP подключение к серверу Wowza и проигрывает поток. Этот метод проверен и работает.
  5. Oleg Neverin

    Oleg Neverin New Member

    Прошу прощения, если выразился непонятно. Пожалуйста посмотрите вот жту ссылку по плаигну push паблишера Wowza. Упрощенно, это небольшой плагин, который берет транслируемый поток и также направляет его, например, на CDN.
    http://www.wowza.com/addons/push-publishing
  6. Max

    Max Administrator Staff Member

    Ага, теперь понятно, спасибо.
    охоже, у вас есть все что нужно для трансляции потока с помощью паблишера wowza.
    Имя потока INCOMING_{callId}
    В логах вы должны будете его увидеть
    callId можно получить из уведомления talk().
    См. класс RtmpClient.java
    https://github.com/flashphoner/flas...src/com/flashphoner/phone_app/RtmpClient.java
    Что касается проблемы со звуком.
    Похоже какие-то сетевые проблемы.
    Пожалуйста, отправьте дамп pcap: tcpdump udp -s 2048 -w log.pcap га почту helpdesk@flashphoner.com
    Last edited: Dec 6, 2014
  7. Oleg Neverin

    Oleg Neverin New Member

    Первым делом хочу поблагодарить за то, что помогает нам разобраться с программой.
    Мы отключили iptables, чтобы исключить проблемы с этой стороны - все заработало, но только один раз. После этого звук снова пропал для всех звонков. Сервер находится в нашем DMZ окружении для целей тестирования.
    Мы пытаемся использовать Freecall SIP Service для решения задачи, но если вам удастся заставить надежно работать какой-то другой сервис, который в используете для тестирования, то можем попробовать его в качестве SIP-сервиса. Порка что у нас с этим проблемы. В целом SIP-сервис, который мы используем довольно надежен по отношению к другим видам подключений, например linphone для iPhone. Так или иначе, пожалуйста дайте знать, если у вас возникнут проблемы с его подключением.
  8. Max

    Max Administrator Staff Member

    Мы тестировали вызовы голосового меню (Jet airlines). К сожалению, проблему со звуком воспроизвести не удалось.
    Вы не могли бы собрать дамп трафика по этому вопросу с помощью tcpdump на вашем сервере?
    tcpdump -i any -w log.pcap
  9. Oleg Neverin

    Oleg Neverin New Member

    Проблема со звуком при использовании нашего аккаунта Freecall не решилась. Можно ли протестировать с вашим SIP сервисом, который вы использовали когда делали реализацию работы с паблишером. Хочется посмотреть как будет работать. Во всяком случае, мы убедимся, что то что мы делаем вообще в принципе возможно. А пока разберемся с проблемой со звуком.
  10. Max

    Max Administrator Staff Member

    Какой у вас браузер и версия Flash Player?
    Исходя из логов, аудио траффик проходит через шлюз RTMP SIP, но клиент его не проигрывает.
  11. Oleg Neverin

    Oleg Neverin New Member

    Начинаю дуать, что отсутствующий звук может быть связан с флэш-плагином для браузера. Мне удалось заставить аудио работать через Freecall SIP Service, однако я не могу получить созданный RTMP поток где-то помимо PhoneJS.html flash плеера... Информация полученная через трейс WireShark разнится с данными при получении потока через PhoneJS.html.
  12. Oleg Neverin

    Oleg Neverin New Member

    Я также попробовал подключить модули и свойства PushPublisher в conf/phone_app/Application.xml и посмотреть, сможет ли паблишер хотя бы отправить поток, и и это тоже не сработало. Если удастся получить подтверждение, что RTMP поток уходит с Wowza, то я смогу проанализировать путь от Pushpublisher обратно до WOWZA.
  13. Max

    Max Administrator Staff Member

    Чтобы разрешить другому приложению получать доступ к потоку, нужно установить параметр
    Code:
    allow_third_party_connections=true
    в файле conf/phone_app/flashphoner-client.properties и перезапустить Wowza
    В этом случае вы сможете воспроизвести поток из другого приложения.
  14. Oleg Neverin

    Oleg Neverin New Member

    Я добавил этот атрибут в файл flashphoner-client.properties и перезапустился, но поток все равно невозможно отдать наружу, неважно, с указанием директории _definst_ в урле или без. Думаю, копать нужно где-то здесь. Что-то мне подсказывает, что то, что блокирует воспроизведение потока может также блокировать получение потока pushpublisher-ом и отдачу его клиенту.
  15. Oleg Neverin

    Oleg Neverin New Member

    Спасибо, что посмотрели наш слусай. Опция THIRD_PARTY_CONNECTION может быть причиной того, что PushPublisher не может взять исходящий RTMP поток и отдать его, т.к. он не может подключиться к потоку. И комментарий по поводу проблемы со звуком. Мы заметили, что необходимо полностью закрыть браузер (любой) после завершения звонка, чтобы следующий звонок имел бы звук. Если браузер не закрывать, любой последующий звонок после первого будет уже без звука. С вашей стороны не было ничего подобного?
    В конечно итоге мы хотим использовать PushPublisher для отсылки RTMP-потока на CDN, можно ли попросить вас включиться в диалог, который мы ведем с Wowxa по данному вопросу?
  16. Max

    Max Administrator Staff Member

    Если вы хотите подключить паблишер к phone_app, то он не будет подключаться к приложению Wowza, т.к. параметр THIRD_PARTY_CONNECTION является обязательным.
    Если вы подключаете паблишер к другому приложению, то все должно работать.
  17. Oleg Neverin

    Oleg Neverin New Member

    Снова хочу поблагодарить вас за содействие. Шаги по воспризведению ошибки со звуком вы описали правильно. Я сейчасю тестирую это на разных SIP серверах, а также проверяю вызов голосового меню. На данный момент я протестировал работу в браузере Chrome 39.0.21.
  18. Oleg Neverin

    Oleg Neverin New Member

    Поток похоже достигает приложения, и даже push паблишер получает и отправляет его, но ни поток прямо с сервера, ни он же при проирывании с CDN не имеют звука. Но я могу подключиться к каждому потоку.
  19. Max

    Max Administrator Staff Member

    Для того, чтобы реализовать отсылку на CDN, вам потребуется отредактировать ModulePushPublishSimpleExample.java.
    Last edited: Dec 6, 2014

Share This Page