Call landlines and mobiles from outside US/Canada, with Google Voice
You can currently call landlines and cell phones (mobiles) using Google Voice, from within your GMail account. As long as you reside in the US or in Canada.
It appears that Google is about to extend this feature to the rest of the world. The following are screenshots taking this morning which show that the functionality is gradually being extended to the rest of the world.
First of all, log in to your GMail account.
If it works for you, you are greeted with the above hint about making calls. By clicking on Try it now, you activate the new feature.
You need to accept the above. The rates are quite competitive, and there is comparison with some other VOIP provider, most probably Skype. Google Voice does not have a connection fee for the calls (unlike Skype, which does have a connection fee).
Then, you install an addon so that you can make phone calls. See http://www.google.com/intl/en/chat/voice/ I have been testing this on Ubuntu 11.04 (64-bit) and I installed the appropriate package.
Once you activate the service, you now have the option to Call phone from the Instant Messenger (IM) app of your GMail.
At the moment I get the message that I cannot add credit to my account, so I am lucky enough to have some left-over credit from I-do-not-remember-from-where.
Now we are making a phone call to a landline in Greece. It shows the cost, $0.2/min.
My credit in this account is in US Dollars, and somehow I cannot top up using Google Checkout because “Google Voice is not available in your country”. However, in an other account, with no existing credit, I get the option to top up with Google Checkout, in British pounds.
There are reports that users can get a +phonenumber@sip.voice.google.com SIP address. I believe that eventually users will be able to access their Google Voice accounts using SIP, so that they can use their preferred VOIP client software. At the moment it may or may not work for you. My attempts to call using Empathy, Jitsi, SFLPhone were currently unsuccessful.
Having the ability to call landlines and mobiles from Google Voice (within GMail) is big. Google did not market yet well enough the Google Voice PC to PC features in GMail. Now, with Google Voice to landlines and mobiles, Google has a complete offering for VOIP that can attack Skype at their core business. The VOIP business is changing rapidly.
Update
Here is the Google announcement for Google Voice all over the world, http://googlevoiceblog.blogspot.com/2011/08/calling-from-gmail-now-in-38-languages.html
Practical UPnP in Linux
UPnP is a set of protocols that allow the automatic configuration of devices. One of those protocols, the Internet Gateway Device (IGD) protocol, allows software to configure routers for NAT traversal without user-intervention. In other words, with UPnP/IGD, the long and error-prone manual configuration for port-forwarding can be done automatically.
When tasks are done automatically, they are less visible to the user, and users are not comfortable that they are in charge of the process.
For the case of UPnP/IGD, we look into the open-source (LGPL) GUPnP library and the companion tool gupnp-universal-cp. You can install these from source (pick the packages gssdp, gupnp, gupnp-tools, and install in this order), or just install the package gupnp-tools from your package manager (for Debian and Ubuntu, these packages reside in Debian unstable).
Once you have installed the tool, you can start it from Application→Programming→UPnP Universal Control Point. This tool can be used for all things UPnP, however we focus on IGD here.
Once we start the UPnP Universal Control Point, we get the above screen. The tool sends discovery requests to the local network for UPnP-capable devices, and automatically the list gets populated. In the screenshot you can see that a router has been detected, and general information is shown.
If your router does not appear in the list and you are sure that UPnP is enabled on the device, then you might have hit on a known bug, Bug 1078 - Some devices may not work due to User-Agent field in requests. In this case, you need to make a minor edit in the source code and recompile.
You can easily distinguish the functions that allow to perform port-forwarding. The one we have highlighted can be used to list the details of the currently active port-forwarding rulers. We right-click and select Invoke, which leads us to...
We just pressed the Invoke button, and since there was a rule with Index 0, the details get filled in for us. Here we can see that Skype has opened a port-forwarding rule for us; when someone from the Internet is connected to port 18210 of this router, the network connection is mapped to the local system with IP address 192.168.1.67. In the mapping description it shows that Skype was the program that set this rule.
You would normally increase the Mapping Index and click on Invoke, in order to see any additional port mappings. Skype generally opens a few more ports, so there is more to see.
For all the shortcommings, UPnP/IGD is an important network configuration protocol. Due to the lack of an open-source library, applications had to implement UPnP support from scratch. Now with GUPnP, it is much easier to write UPnP-enabled applications.
UPnP/IGD is very important for applications such as Ekiga, Pidgin (file transfers!), Empathy, XChat (for DCC). This has to be done in order to raise the bar in terms of connectivity, and so that it Just works.








