What is SIP?
SIP stands for Session Initiation Protocol. It is defined by RFC3261 and provides a method for registering with VoIP service (or 'Dial-tone') providers and initiating/receiving VoIP calls.
Once a 'call' is created, the audio (and optionally video) is sent directly between caller and callee, although it is possible to use SIP proxies - where the call is routed through the proxy.
The audio/video is encoded/compressed using a codec. Different codecs are available within Ekiga, and each provides a compromise between audio quality and bandwidth required.
A SIP number normally looks like an email address, for example, email@example.com. The part before the '@' represents the user, and the part after represents the service provider.
The user part may be either numeric or alphanumeric, depending on the provider. For example, Ekiga.net uses alphanumeric usernames, but each has a numerical alias to enable dialing from a standard telephone key pad.
To dial a number on an application (such as Ekiga), just enter the SIP number. If the provider part is not entered, the application will assume the same provider as the user.
With a telephone keypad it is not possible to enter alphanumerical characters, so it is not possible to enter the provider portion. To make calls to other providers, the user can use a Peering prefix.
Another problem is that unlike a normal telephone, the full 'user' part of the number must be entered before the call is placed and the number can be any number of digits. In this case, the '#' can be used to indicate that the number is complete. Another solution is to set up a dialplan (which interprets numbers as they are typed).
In order to differentiate a SIP number from an email address, the 'sip:' URI should be used, for example sip:firstname.lastname@example.org.
How contact presence (online, offline) works in SIP
The ekiga.net SIP proxy (kamailio) has a table with SIP addresses, their state, and the users who are subscribed to an address.
If the user eugen for example wants to know the user yannick's state, then:
- eugen's Ekiga client sends to ekiga.net a SUBSCRIBE sip:email@example.com
- ekiga.net adds eugen as subscriber for yannick
- ekiga.net sends a NOTIFY to eugen's Ekiga client containing yannick's current state
- each time yannick changes state (or when he registers), his Ekiga client sends to ekiga.net a PUBLISH sip:firstname.lastname@example.org with his new state
- upon reception, kamailio sends to eugen's Ekiga client (and to all of yannick's subscribers) a NOTIFY with the yannick's updated state
- PUBLISH and SUBSCRIBE (as well as REGISTER) are subject to an expiry period. This is why, even if yannick's Ekiga client does not change state for 500 seconds, it will still send a PUBLISH sip:email@example.com to ekiga.net
- if after 10 - 15 minutes ekiga.net does not receive any PUBLISH sip:firstname.lastname@example.org from yannick's Ekiga client, then it marks yannick as offline in its table, and sends to eugen's Ekiga client (and to all of yannick's subscribers) a NOTIFY with yannick's offline message. The same applies for SUBSCRIBE
Where do I find help?
For basic help, please read the manual. It's accessible through the F1 key when running Ekiga, or through the help menu.
Does it work under KDE?
Yes. Ekiga has been designed for the GNOME desktop but it works very well with the KDE desktop too. For example, Ekiga automatically adds an animated icon to the KDE system tray.
You are talking about SIP and H.323. I do not know what the difference is - which one should I choose?
SIP and H.323 are two different protocols used in voice over IP (VoIP i.e. audio communication over the internet). If you want to call Windows Messenger users, use SIP. If you want to call Netmeeting users, use H.323. If you do not know what protocol to use, use SIP. The URL prefix determines what protocol will be used, e.g. sip: or h323: (or callto:).
Is it possible to do PC-to-Phone calls using Ekiga?
Yes. You simply have to register an account to the Ekiga provider from the PC-to-Phone configuration window accessible from the Tools menu. You do not need any specific hardware to be able to do PC-to-Phone calls: a simple soundcard is enough. Using a headset to avoid echo problems is however highly recommended. Please see the appropriate section of this FAQ for information on obtaining an account.
Does Ekiga support Text Chat?
Yes. You can thus do some cut and paste while continuing to talk. Ekiga text chat is compatible with Linphone (Linux) and Windows Messenger (Windows). However, you can send text messages to any SIP address, even if you are not in a call with that specific person, just like with any popular instant messenger application.
H.323 text chat however only works from Ekiga to Ekiga and during calls.
How can I get a SIP address?
A SIP address is a way to be reachable and to reach people. You can compare it to an email address. You can sign up for a free account on http://ekiga.net. This will give you a unique SIP address that you can give to your friends so that they can contact you. An example of a SIP address is sip:email@example.com.
How can I test if it is working?
Simply get a free account at Ekiga.net and call the echo test at sip:firstname.lastname@example.org. If you can hear and see yourself back, then your setup is working.
Does Ekiga support NAT?
Yes. Please see the dedicated section of this FAQ for more information about NAT support. NAT is a method that allows several computers to connect to the Internet by using a single Internet address.
What is ENUM support?
ENUM support will allow you to associate your real phone number to a SIP or H.323 address and to be callable by other users using that phone number. Please see the manual for more information about ENUM support.
What is Rendez-Vous support?
Rendez-Vous support allows you to publish your presence on the LAN (Local Area Network, the people connected to the same network as yourself) on which Ekiga is running. You will then be able to search the LAN for other Ekiga users using the address book, and call them directly.
Can I use an USB handset with Ekiga?
For more information on this, please see here.
Can I connect an ATA to Ekiga.net?
For more information on this, please see here.
Do I need a webcam to run Ekiga?
No. A working soundcard is enough.
Do I need a headset to use Ekiga?
No. However, we strongly recommend using one. This will improve the overall sound quality.
FIXME: USB headset? Bluetooth headset?
What type of camera can I use with Ekiga?
Every camera supported by the Linux kernel and compatible with the Video4Linux/Video4Linux2 APIs (Philips webcams, Creative webcams, and many others), or any Firewire camera provided that you are using the appropriate plugin.
What type of soundcard can I use with Ekiga?
You can use any full-duplex soundcard supported by the Linux kernel and compatible with the OSS or ALSA APIs. Be sure to use a full-duplex driver too.
Can I ask questions about soundcard or webcam configuration to the Ekiga mailing-list?
The configuration of soundcards and webcams is related to your distribution vendor, or to the respective mailing lists of the drivers you are using. However, if your soundcard or webcam works well with all applications except Ekiga, you are welcome to mail us.