命令行SIP拨号器

有一个简单的命令行SIP拨号程序可以连接到SIP服务器,拨打电话和播放一些媒体文件(WAV / MP3)? 在理想中,我会看起来像这样:

sip-dailer +1xxxxxxxxxx /path/to/message.mp3 

用sipcmd https://github.com/tmakkonen/sipcmd你可以在一行上完成:

 sipcmd -u <login> -c <passwd> -P sip -w <sipproxy> -x "c<phonenum>;ws3000;v<audiofile>;h" 

有一个名为SIPp的免费(GPL)工具(由Debian及其衍生产品作为sip-tester发布 ),可以让你按照这些方法做一些事情。

例如:

 ./sipp -sn uac <IP address> 

告诉它使用内置的UAC场景并将请求发送到指定的IP地址。

一旦呼叫被回答,它可以播放audio,但这需要提供一个原始的RTPstream(通过一个.pcap捕获文件运作良好),你将需要build立自己的“场景”,这涉及到编写/修改一点XML。

如果你已经运行了Asterisk,那么设置一个任务来拨号,然后等待对方回答并播放audio文件并不困难。 但是“有Asterisk运行”并不能回答“简单”的问题。

谷歌build议pjsua 。

linphonec支持remote_ring选项(用来播放远程响铃的wav文件)。 你可以configurationAsterisk。

也许看看http://www.pjsip.org/pjsua.htm 。 虽然我不知道它有一个自动播放选项的传出呼叫,我想你可以摆弄input设备一点点,使之成为可能。

有一个简单的批处理脚本,在这里使用netcat:

https://github.com/rundekugel/callSip.sh

我用它来testing连接和电话。 它调用并挂断,但不包含audio支持。