2015-05-19 2 views
0

Я создал вызов SIP, прямо сейчас у меня нет звука, т. Е. У меня нет Sound Manager. Вместо этого я хотел бы воспроизвести аудиофайл для получателя. Когда я звоню кому-то, я хочу, чтобы они услышали аудиосообщение. Как отправить файл и заставить его играть?Воспроизведение аудиофайла и воспроизведение по SIP

ContentLengthHeader contentLength = headerFactory.createContentLengthHeader(211); 
ContentTypeHeader contentType = 
    headerFactory.createContentTypeHeader("application", "sdp"); 

String sdpData = "v=0\n" + 
       "o=test 795808818 480847547 IN IP4 "+localIP+"\n" + 
       "s=Audio Call\n" + 
       "u=/audio/play.wav"+ 
       "c=IN IP4 "+localIP+"\n" + 
       "t=0 0\n" + 
       "m=audio 8000 RTP/AVP 0 8 101\n" + 
       "a=rtpmap:0 PCMU/8000\n" + 
       "a=rtpmap:8 PCMA/8000\n" + 
       "a=rtpmap:101 telephone-event/8000\n" + 
       "a=sendrecv"; 

byte[] contents = sdpData.getBytes();   
request.setContent(contents, contentType); 

Если я непосредственно отправлю файл, как это, он будет воспроизводиться? Также можно отправить текст и воспроизвести его по вызову?

+0

Сначала попробуйте что-то, а затем задайте вопрос. – john

+1

Можете ли вы предложить мне направление, которому я могу следовать за этой реализацией? – gourig

ответ

0

SIP используется только для сигнализации, т. Е. Для настройки вызова, для воспроизведения аудиофайла, который необходимо указать для медиасервера. Я бы рекомендовал избегать перехода на более низкие уровни и использовать простой API для этого. RestComm позволит вам это сделать. Теперь есть изображение докеры http://www.telestax.com/docker-image-for-mobicents-restcomm-7-3-0/. RestComm поставляется с несколькими предварительно настроенными демонстрационными примерами, тот, который играет в wav-файл, привязан к номеру 1234, смотрите, как его протестировать здесь http://docs.telestax.com/restcomm-testing-default-demos/

Смежные вопросы