They can hear me, I can't hear them
In a word -
ports
You are probably behind a NAT device or some form of internet connection sharing.
Technical Explanation
If you're using NAT, you have more than 1 PC on your network (or the capability to do so). Voice data from the other party is arriving at the NAT device, but not reaching your PC because the NAT device has no idea which PC to send the data to. So it just ignores it (hint: this isn't a bad thing, and actually makes for quite a decent firewall).
The Solution
You have two options.
1. STUN
STUN is a basic technology which tries to "trick" the NAT device into thinking that data coming in from the internet is destined for a particular PC by opening a "pinhole" to that PC. Due to the way that STUN is in reality a "kludge", it doesn't work for all NAT devices. It will work for 90% of them though, so it's worth a go.
If your softphone has a "STUN" setting then set it to the STUN server that your ISP suggests. On our services (VoIP User) set it to "stun.voipuser.org". If it works, great. If not, see option 2.
2. Port Forwarding
This is where we tell the NAT device that traffic coming in from the internet on a particular port is for a particular PC.
The port chosen varies from software/hardware device to device, so you need to ascertain what port your device receives audio on, then tell the NAT device to send data on that port to the IP address of the device. In the case of a softphone, the device is the PC you are running the softphone on.
Most softphones and hardware phones will let you set which port to use for incoming audio. So set a port, or note which one it defaults to, and tell your NAT device to forward that port to the IP address of the hardware phone, or PC, IP address accordingly. See your router/NAT device manual to see how to set a port forward.
I can hear them, but they can't hear me
This is usually a Windows audio setting. Ensure that you have the Microphone enabled on your Windows Soundcard.
Double-click the speaker icon in your system tray, or go to Windows Control Panel and double-click the speaker icon. Select "Recording Options" and ensure that the microphone input is selected and that the volume slider for microphone is set at about 3/4 of maximum volume.
Tests you can do
A quick and dirty test of your microphone audio can be made by running Windows Recorder, hitting the record button and talking into your microphone. If audio is recorded, it's working fine. If not, you have a soundcard problem that needs to be resolved.
If you're port forwarding, you can use our own Port Forward Tester available for download here:-
http://www.voipuser.org/port_forward_tester.html
There is currently no way to test STUN except for trying it.
Tips
1. With "I can't hear them but they can hear me" type problems, Port forwarding will always work, and will always fix the problem, irrespective of the type of NAT device you have.
2. Port forwarding requires that the device you're forwarding to has a
static IP address. See your NAT/router manual to see how to set this.
Dean