我已经创建了一个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 :(得分:1)
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/