Wanna be a real VoIP nerd? :-) Let’s use Linphone from a command line!
1. ‘linphonec’ – enter the CLI.
2. ‘help’ – list available commands. Now it’s time to create a profile and connect to PBX
3. ‘help proxy’ – show help.
3.1. ‘proxy add’ – and press Enter. Answer to the appeared questions (just look at listing below):
linphonec> proxy add Adding new proxy setup. Hit ^D to abort. Enter proxy sip address: 10.1.51.13 Your identity for this proxy: sip:1301@10.1.51.13 Do you want to register on this proxy (yes/no): yes Specify register expiration time in seconds (default is 600): Expiration: 0 seconds Specify route if needed: No route specified. -------------------------------------------- sip address: route: identity: sip:1301@10.1.51.13 register: yes expires: 0 registered: no -------------------------------------------- Accept the above proxy configuration (yes/no) ?: yes Proxy added. linphonec> Password for 1301 on "pbx.secretcompany.com": MeGaSeCuRePaSs linphonec> Unregistration on sip:10.1.51.13 done. linphonec>
Yes, the message ‘Unregistration on sip:10.1.51.13 done.’ seems strange, but tcpdump shows that everything is OK.
3.2. Now we may list our proxies:
linphonec> proxy list ****** Proxy 0 - this is the default one - ******* sip address: route: identity: sip:1301@10.1.51.13 register: yes expires: 0 registered: no linphonec>
4. Let’s call via default proxy:
linphonec> call 79991234567 Establishing call id to <sip:79991234567@10.1.51.13>, assigned id 1 Contacting <sip:79991234567@10.1.51.13> linphonec> Call 1 to <sip:79991234567@10.1.51.13> in progress. linphonec> Remote ringing. linphonec> Early media. linphonec> Call 1 with <sip:79991234567@10.1.51.13> early media. Call 1 with <sip:79991234567@10.1.51.13> connected. Call answered by <sip:79991234567@10.1.51.13>. linphonec> Media streams established with <sip:79991234567@10.1.51.13> for call 1 (audio).
We may look active calls with ‘calls’ command.
This is how it looks like while ringing:
linphonec> calls Call states Id | Destination | State | Flags | ------------------------------------------------------------------------ 2 | sip:79991234567@10.1.51.13 | OutgoingEarlyMedia |
And this is how it looks like during an established call:
linphonec> calls Call states Id | Destination | State | Flags | ------------------------------------------------------------------------ 2 | sip:79991234567@10.1.51.13 | StreamsRunning |
If you want to terminate a call, just type ‘terminate’ and press Enter.
If you have some troubles with sound and your PC is behind NAT, play with following parameters: ‘firewall’ and ‘nat’. Maybe you need ‘firewall none’ (it helped me at previous linphonec setup with one-way sound).
5. You may quit linphonec with ‘quit’ command. And these are history log, call log and configuration file in your home directory:
lexus@lexus:~$ ls -lh .linph* -rw------- 1 lexus lexus 162 нояб. 24 15:10 .linphonec_history -rw------- 1 lexus lexus 2,5K нояб. 24 15:10 .linphonerc
6. Read the documentation for more information.