Linphone

Configuring Linphone

The configuration details are stored in a text file. If you are using the command line version of Linphone ("linphonec") the configuration file is stored here: "/home/username/.linphonerc". In this example "username" would be replaced by your username, for example if my username is "adam" then I would find the linphonec configuration file in this location: "/home/adam/.linphonerc".

The configuration of the non-command line version (the version with a Graphic User Interface), is done through the interface. However all the settings are stored in a file too, you don't have to touch this file but if you are curious you can find it here: "/home/username/.gnome2/linphone".

If appropriate configuration file doesn't exist, it will be created after starting Linphone. In case of linphonec, the file will be copied from "~/.gnome2/linphone if it exists.

The variables and format is the same for each. The below details each variable:

[NET] 

All settings regarding the local network go here, this includes the speed of the connection and the IP number of the NAT should there be one. 

con_type

It's a setting to tell linphone how much bandwidth it can use:
0=analog 28k modem
1=56k modem
2=128k modem
3=minimum ADSL modem
4=unlimited (Ethernet)

con_type is deprecated and no more used by linphone>=1.4.0, in favour of upload_bw and download_bw.

use_nat

0=don't use the NAT setting
1=use the NAT setting

nat_address

This value can be used to override contact header IP. This is usefeul to supress automatival too "smart" IP address selection if you have more IPs. Put the IP number of the NAT router here.

download_bw

The bandwidth you have available for incoming data. This is noted in kbit/sec. A setting of "0" means unlimited bandwidth. Specific allocations of bandwidth may exclude the use of codecs that require more bandwidth than the setting chosen. Has similar purpose as the con_type. Different codecs are offered in SDP when different bandwidth is available.

upload_bw 

The bandwidth you have available for outgoing data. This is noted in kbit/sec. A setting of "0" means unlimited bandwidth. Specific allocations of bandwidth may exclude the use of codecs that require more bandwidth than the setting chosen. Has similar purpose as the con_type. Different codecs are offered in SDP when different bandwidth is available.

use_stun

STUN is used by Linphone for traversing NAT routers. STUN stands for Simple Traversal of UDP through NATs (Network Address Translation).  Linphone can be a STUN client, in which case it will send a request to an external STUN server. The STUN server then tells Linphone the public IP address of the NAT router. It also reports to Linphone which port was opened by the NAT device for incoming traffic. Linphone then uses this information for connecting with a VoIP server or other soft phones. 

0=use STUN
1= don't use STUN 

stun_server

The address of the STUN server to use. The format will look something like this:
stun.me.com

[SIP]

All details regarding your SIP configuration go here.  SIP has two kinds of addresses:

  1. SIP Address of Record (AOR). This is the address people use to call you, the format looks like an email address.
  2. SIP Contact Address is the temporary address and is determined by what IP address you currently have, the device name, and the port number you are using for SIP. This address is usually temporary and stored in memory. When you register with a SIP server, the server maps this address onto your SIP Address of Record (AOR).  

sip_port

The port on your computer that is used for SIP traffic (default is "5060")

guess_hostname

0=don't guess the hostname of your computer
1=guess the hostname of your computer (use this if you don't know it)

contact

Put here the SIP Address of Record for your account. The format should be:
sip:accountname@siprovider  

inc_timeout

This is the timeout setting for incoming calls. If you do not make it to answer an incoming call after the time set here then linphone will timeout. The setting is measure in seconds and the default is "15" (seconds). 

use_info

0 = don't use SIP INFO messages for DTMFs
1 = use use sip info messages for DTMFs

use_ipv6

Essentially there are not enough IP Addresses. An IP Address is the group of numbers that identifies you on the internet, they look something like this: "192.168.0.123". Because there are not enough combinations of these number groups to account for every device that needs to connect to the internet a new way of addressing is being developed, this is called "IPv6".  An IPv6 address might look something like this: "E2D6:0000:0000:0000:01B4:7BD8:D0A3:1220"

If  you are in a IPv6 network then you can use these addresses instead of the more common IPV4. Linphone is not able to combine different IP protocols at the same time (e.g. SIP over IPv4 and RTP over IPv6).
0 = don't use IPv6
1 = use IPv6

default_proxy

Linphone has a section in the config file for storing different registration server information. These are numbered (starting at zero). Put the number here for the index of the registration setting you wish to use. "-1" means do not use a proxy.

[rtp]

audio_rtp_port

The port number used by the RTP protocol for audio (default 7078)

video_rtp_port

The port number used by the RTP protocol for video (default 9078)

audio_jitt_comp

Number of milliseconds of audio buffered before playing, measured in seconds (default 60).

video_jitt_comp

Number of milliseconds of video buffered before playing, measured in seconds (default 60)

[sound]

playback_dev_id=ALSA: default device
ringer_dev_id=ALSA: default device
capture_dev_id=ALSA: default device
rec_lev=80
play_lev=80
ring_lev=80
source=m
local_ring=/usr//share/sounds/linphone/rings/oldphone.wav
remote_ring=/usr//share/sounds/linphone/ringback.wav
echocancelation=0

[video]

enabled=0
show_local=0

[audio_codec_0]

mime=PCMU
rate=8000
enabled=1

[proxy_0]

reg_proxy=sip:papercuptelephone.org
reg_identity=sip:adam@papercuptelephone.org
reg_expires=900
reg_sendregister=1
publish=0