sipcallnotify uses the pjsua2 library to register with a sip provider, make a call, play a recorded message, then hang up
Usage:
./sipcallnotify [-t ] [-r ] [-m ] [-p ] [-u ] [-o ] [-c ] [-s ] [--] [--version] [-h]
Where:
-t , --timeout max call time in seconds
-r , --repeat number of times to play media file
-m , --mediafile path of .wav file
-p , --password password from sip provider
-u , --user username from sip provider
-o , --port sip port
-c , --calluri call uri (sip:#-###-###-####@sip.anveo.com:5010)
-s , --sipprovider sip provider domain name
--, --ignore_rest Ignores the rest of the labeled arguments following this flag.
--version Displays version information and exits.
-h, --help Displays usage information and exits.
Make a sip call and play a notification message
Building
Dependencies
pjsip: http://www.pjsip.org/download.htm
Extract source tar to a sibling directory of sipcallnotify source
Build pjsip with ./configure --disable-video && make dep && make
tclap: https://sourceforge.net/projects/tclap/files/
Extract source tar to a sibling directory of sipcallnotify source
No building necessary
libasound2-dev should be installed from your distribution repo
Make
cd sipcallnotify && make
Notes
The mediafile must be a 16 bit mono PCM
Alsa is required on the host system. You can use a dummy sound card if the machine doesn't have sound hardware
modprobe snd-dummy
The user running sipcallnotify must be a member of the audio group. Add the user, then log out/in for the change to take affect.
Linux x64 binary compiled on Ubuntu 16.04 available at http://unser.jfath.net/public/sipcallnotify