maemo.org Bugzilla – Bug 5457
Skype: "Incorrect address" for phone numbers missing the country code in Contacts
Last modified: 2010-07-22 20:38:40 UTC
You need to log in before you can comment on or make changes to this bug.
If I have a contact with a phone number and I click "Call with Skype" it loads the phone program, displays "Incorrect Address", then closes the phone program. This also happens if you just enter a number such as "555 555 5555" into the dial pad. If, on the other hand, a +1 (I'm in Canada) is placed in front of the number, Skype will make the call. Skype should, as it does on the desktop, add the appropriate prefix to the number before making the call. Otherwise it is not possible to call the number associated with a contact. This bug report may not belong here but I figured I'd put it in since Skype is integrated into the phone/contacts and installed by default.
Thanks for reporting! For future reference please always use the bug template. It really saves a lot of time for everybody if one has just to follow the steps listed. Please also use the exact error strings shown, this makes it easier to find already filed bug reports. ------------------- EXACT STEPS TO REPRODUCE: 1. Start Contacts application 2. Go to a contact with a phone number that DOES NOT HAVE the country calling code in front of it (http://en.wikipedia.org/wiki/List_of_country_calling_codes) 3. Click it to go to Details 4. Click "Call with Skype" ACTUAL OUTCOME: "Incorrect address" EXPECTED OUTCOME: Country code automatically added ------------------- The general workaround is to always add the country code. I'm used to this as I travel a lot, but I can guess that living in a bigger country makes it more likely to not need this.
(In reply to comment #0) > Skype should, as it does on the desktop, add the appropriate prefix to the > number before making the call. How do you define "appropriate"? Should it be configurable in the Skype account (same as or separate from your country selection), and/or taken from the SIM card if it's available? What if you got the phone number fields from a source where the meaning of the international prefix was different. We'd like to play safe here... A bit of brainstorming: we could offer some extra step here, such as a dialog offering to complete the number with a country code of user's choice (and optionally save the complete number back into the address book).
Not to mention that Skype desktop client won't have numbers that are perfectly valid in your cellular operator's data plan, but require some country- or even operator-specific mangling to be converted to international phone number. E.g. in Finland, you'd have to chop a leading 0 and add +358; in Russia, that would be leading 8 to +7, and variations abound. Lowering priority. This is a strong candidate for a WONTFIX for the proposed expectation.
(In reply to comment #3) > This is a strong candidate for a WONTFIX for the proposed > expectation. The proposed expectation was only a suggestion. As it stands now, the user experience is quite poor and I just think something should be done about it. The user will click "Call with Skype", see an error message and have no idea why their call could not be completed. My ideas (easiest to hardest): - Fix the error message. "Incorrect Address" is quite misleading. Is a phone number an address? Perhaps it could say something like "Could not place call, Skype requires the phone number to contain a + and country code" or something like that. - allow the user to add a prefix or otherwise modify the number before dialing (as you can do on most phones). This way the user won't have to open the contact, look up their phone number, write it down or remember it, and then enter it manually in the dial pad. - If a number is known to be an "Incorrect address" it could, as you suggest, try to automatically modify the number based on your home country code that you have set in your Skype profile. This would be easy for numbers in Canada and the USA, but as you say, could be quite tricky for other areas. I'm sure the nice fellows at Skype have thought of this issue before and may be able to provide some input.
I have to say that the severity of this bug should be minor, if not normal. I just got a new n900 today and one of the first things I did was integrate skype. I was immediately frustrated when I tried to "Call with skype" some of my friends. On every single one of them it failed saying "Incorrect Address". I had no idea what that meant or how to fix it until I searched it. Low and behold the only relevant entry was this bugzilla entry. Therefore an "easy" workaround IS present. You CAN memorize that person's number and use the dial pad, or update the phone number entry and add the country code. However the error message is indecipherable, so you don't even know HOW to work around it. This needs fixed, otherwise you might as well say "Call with skype" doesn't work. If not by simply adding in the appropriate prefix, thenat least change the error message to say something along the lines of "Invalid Phone Number Prefix". The number is not an address, its a phone number and the number IS not incorrect (it IS the person's actual correct phone number. Its simply improperly formatted for Skype's purposes, therefore invalid. The simple way is to assume all contacts without pre-existing country codes are in the same country as the caller.
(In reply to comment #5) > This needs fixed, otherwise you might as well say "Call with skype" doesn't > work. If not by simply adding in the appropriate prefix, thenat least change > the error message to say something along the lines of "Invalid Phone Number > Prefix". The number is not an address, its a phone number and the number IS > not incorrect (it IS the person's actual correct phone number. Its simply > improperly formatted for Skype's purposes, therefore invalid. Thanks. This has been pointed out in the internal discussion, and we should improve the error reporting in the course of fix this bug. > The simple way is to assume all contacts without pre-existing country codes are > in the same country as the caller. Which is?.. There is a number of ways to automatically get information as to which country you're in, but they are AFAIK all fallible in some ways. Case in point: when I travelled up Tornio river on the Finnish side, I sometimes got connected to Telia towers in Sweden and that I guess reflected on the MCC reading that the modem provides. GPS is no better. So realistically, it has to be manually set, and we'd have to put the user through selecting their country in the course of configuring a Skype account. It's currently settable as an optional profile field visible to other Skype users, and we'd probably want to keep this binding just to avoid comlicating the UI with two separate country selections. But this has privacy implications.
(In reply to comment #5) > The simple way is to assume all contacts without pre-existing country codes are > in the same country as the caller. Not to mention that it's pretty much impossible to reflect mapping of local dial plans, which may be operator- and in some cases customer-specific (e.g. we have our own short dial prefix for Nokia employees, maintained by our mobile provider), to international numbers that are valid for SkypeOut.
I think this should be in an fix it as by default, the phone when you have a skype account adds the phone number and a call with skype option. This should allow us to assign an assumed +1 prefix or other country code prefix. If it detects a + in front of the number then it is an overwrite.
(In reply to comment #8) > I think this should be in an fix it as by default, the phone when you have a > skype account adds the phone number and a call with skype option. This should > allow us to assign an assumed +1 prefix or other country code prefix. > If it detects a + in front of the number then it is an overwrite. > I completely agree with this statement. I would definitely like the ability to set a default country code for the phone and per contact and per number (which we can already do). This whole having to add "+1" to call people in your own country (if you're in Canada or the USA) is overkill.
the currant solution to the problem is to edit all your phone contacts to have "+ contry code" as that is suported by all GSM caries. if i had the ability to edit a number before it dials and save or discard changes edits would solve the problem.
I live in the USA and have used skype for 5 years and I also ran into this problem and could not figure it out without finding this page... I think there's a cultural difference here in North America. The reality is that in North America, 99.99% of the population will never call outside their own country code in their entire life and 99.9% of the population does not even know what a country code is. I do not excuse this ignorance, but it is the reality. Everyone here has dozens or hundreds of contacts that would have to be changed to work properly. I agree the idea of having a default prefix for all contacts will not work for every single case that can be contrived in the entire world; however a) it is a feature that does not have to be enabled by all users and can be unset by default b) if the default set but not desired for all contacts, a + code could be entered into those contacts explicitly, thereby avoiding the default c) it is a trivial feature to implement Thank you for your consideration.
I appreciate your explanation about how things are in the US, and feel compelled to study the North American dial plans in detail (and maybe some US operators' additional quirks, too), in addition to what I know about some in Europe and in Russia (bordering on unmitigated horror). Now to the other points: (In reply to comment #11) > a) it is a feature that does not have to be enabled by all users and can be > unset by default In other words, it'd become another not entirely obvious klugde hidden in the configuration UI. > b) if the default set but not desired for all contacts, a + code could be > entered into those contacts explicitly, thereby avoiding the default After, maybe, some confused attempts to make a call, followed by support calls, rounds with Nokia care, and bugs filed here. Granted, the existing behavior does not prevent any of these, but at least we're trying to be explicit about the failure. > c) it is a trivial feature to implement I have other opinion, but hey, maybe I know less than I should about this code...
To follow up: I'd prefer an explicit UI to specify an international number if missing, accompanied with some handy country selection, like it's done in Skype desktop clients (note how they won't let you use local numbers willy nilly, either). But I'm not alone to design and implement this, and this is certainly not a trivial matter to put through.
> (In reply to comment #11) > > a) it is a feature that does not have to be enabled by all users and can be > > unset by default > > In other words, it'd become another not entirely obvious klugde hidden in the > configuration UI. I don't see what would be confusing about a simple text-entry config in Settings->VoIP and IM accounts->(Skype Accont) labeled "Default Country". This would be an extremely trivial function to implement and would solve the problem for 99% of users. A better solution would be a must-set-on-account-creation drop-down with the country codes pre-defined and listed next to their corresponding names. I understand that a "perfect" solution is non-trivial and may be impossible for all services. However, the outgoing Skype integration is completely useless from my perspective at the moment and has an easy short-term fix. Asking the user to add the proper country code to every contact/number is a complete non-starter of an argument. I have hundreds of contacts, each with multiple numbers, synched/transferred between Exchange, Google Voice, LDAP and other handsets. I have to modify ALL of that - and test with all other VoIP apps and handsets - rather than adding a simple default/concat to the Skype dialer? I don't know what your Skype desktop client looks like, but the one I'm using (2.8.0.722, Mac OS X, US/English) has that exact country drop down I referenced above on the left of the number-input field whenever I bring up the dialpad. After dialing half a dozen numbers in +1 (USA) in a row, it set the default to +1 and I've never needed to touch it since. http://punchit.net/pics/skype-dialer.png http://punchit.net/pics/skype-dialer-country.png My proposals: - Default country code drop-down in the skype account config as specified above. pseudocode: if ( '+' == contact_number[0] ) dial( contact_number ) else dial( skype_cfg_default_country + contact_number ) - Default country code drop down under Settings-> Language & region. This makes the information available to dialers other than Skype, but obviously has wider implications. Setting the default automatically (based on carrier, GPS, etc) makes little sense to me. If I enter a number into my contacts sans country code then it's meant to be "local". Trying to figure out where "local" is when you travel outside of "local" makes that number entirely invalid. The main point here is that if the user has contacts in a single country, most (speaking from US perspective) will only include the local portion of the number *. If I only have one contact in a different country, I would specify that contact with the full '+...'. If the user is a true globe-trotter and has all of their contacts specified with their respective country codes, then there's no need to prefix/concat the default code to any of them...but it wouldn't hurt to have a default there anyway. * I've been "ahead" of the curve because I've been using the 10-digit numbers (area code + exchange + local, no country) for years. Many people I know are complaining, loudly, because carriers have been making 10-digit dialing mandatory...and everyone still has the 7-digit number (no area code) in their contacts.
(In reply to comment #14) > - Default country code drop-down in the skype account config as specified > above. > pseudocode: > if ( '+' == contact_number[0] ) > dial( contact_number ) > else > dial( skype_cfg_default_country + contact_number ) This will work when there is no local dial prefix. In Finland, you need to chop off the leading zero from the 10-digit number before adding the country prefix. In Russia, it's 8. To suit everybody, we'd need to maintain a comprehensive, and sometimes changing, set of rules. Maybe we could code in a few well-known schemes to meet some key markets, but this doesn't feel like a long term solid design decision to me. Then, there are short numbers in my corporate phone subscription which cannot even be translated to global phone numbers without access to some directory, so we'd still have to deal with cases for which the SkypeOut action is not applicable. And again, hiding part of the effective number in a configuration will make it confusing for many users. The UI in Skype desktop clients keeps it explicit, and I like their approach.
> This will work when there is no local dial prefix. In Finland, you need to chop > off the leading zero from the 10-digit number before adding the country prefix. > In Russia, it's 8. To suit everybody, we'd need to maintain a comprehensive, > and sometimes changing, set of rules. Maybe we could code in a few well-known > schemes to meet some key markets, but this doesn't feel like a long term solid > design decision to me. I admit my large ignorance of worldwide dialing behaviors, but my Google/Wiki skills tell me that the UK behavior has a similar chop-the-leading-zero behavior. So, 01823-555555 -> +44-1823-555555. Are there any situations where we would not be dealing with a straight concat or a local/international prefix swap? If not, we could add a "local prefix" field in addition to the "default international prefix" field. If the local prefix is populated, remove it for skype/international formatting. If it is blank, ignore it. > Then, there are short numbers in my corporate phone subscription which cannot > even be translated to global phone numbers without access to some directory, so > we'd still have to deal with cases for which the SkypeOut action is not > applicable. What percentage of the market is that? Like I said, I don't think that a "perfect" solution will be possible. I'd rather have a solution that covered 90% of the people that one that covers 5% and I certainly don't like the idea of ignoring that 85% difference until a 100% solution can be devised. Hell, I'd be thrilled with a callback API that allowed for a 3rd party module to fixup the number before dialing. That way we could implement the above generic proposal (or a more functional variant) and the corporate logic as separate packages in Extras. > And again, hiding part of the effective number in a configuration will make it > confusing for many users. The UI in Skype desktop clients keeps it explicit, > and I like their approach. The Skype desktop client allows you to edit the number as you're dialing, something that the n900 interface does not do. I'm not sure I would want that anyway as it would introduce another touch/step to dialing. The display of the "default country code" could still be in the skype account configuration, but on the contact screen, "Call with Skype" would display the full-form number. So, on the same contact screen you would see the phone icon next to "Cell: 555-555-5555" and a "Call with Skype: +1-555-555-5555".
Add me to the list of (American) people that was frustrated by "Incorrect Address" messages until I found this thread. I would have never guessed that I needed to explicitly add "+1" to make my phone calls work. This also means that calling anyone in my phone book is impossible without dialing their number manually with a "+1" in front. I get the idea that it's tricky/impossible to automatically detect the user's current country code. I also get that having a hidden "default country code" setting isn't user-friendly. However, I'd wager that it's INFINITELY more user-friendly to have that default code setting somewhere than not letting me Skype call my contacts at all.
This has been fixed in package rtcom-call-ui 1.20100125.1+0m5 which is part of the internal build version 2010.05-2 (Note: 2009/2010 is the year, and the number after is the week.) "Skype requires phone numbers in international format" info banner is now displayed on calling phone numbers (without international prefix) through "Call with Skype" option. A future public update released with the year/week later than this internal build version will include the fix. (This is not always already the next public update.) Please verify that this new version fixes the bug by marking this bug report as VERIFIED after the public update has been released and if you have some time. To answer popular followup questions: * Nokia does not announce release dates of public updates in advance. * There is currently no access to these internal, non-public build versions. A Brainstorm proposal to change this exists at http://maemo.org/community/brainstorm/view/undelayed_bugfix_releases_for_nokia_open_source_packages-002/
Setting explicit PR1.2 milestone (so it's clearer in which public release the fix will be available to users). Sorry for the bugmail noise (you can filter on this message).
(In reply to comment #18) > This has been fixed in package > rtcom-call-ui 1.20100125.1+0m5 > which is part of the internal build version > 2010.05-2 > (Note: 2009/2010 is the year, and the number after is the week.) > > "Skype requires phone numbers in international format" info banner is now > displayed on calling phone numbers (without international prefix) through "Call > with Skype" option. > > A future public update released with the year/week later than this internal > build version will include the fix. (This is not always already the next public > update.) > Please verify that this new version fixes the bug by marking this bug report as > VERIFIED after the public update has been released and if you have some time. > > > To answer popular followup questions: > * Nokia does not announce release dates of public updates in advance. > * There is currently no access to these internal, non-public build versions. > A Brainstorm proposal to change this exists at > http://maemo.org/community/brainstorm/view/undelayed_bugfix_releases_for_nokia_open_source_packages-002/ > I don't think you should call it a fix. I really do not appreciate that when the feature of automatically adding country code, which was implemented on wm 6 skype years ago, is not available on my new machine. Come on, additional of an option to add country code automatically would not be that hard to you. Looking forward for your reply.
(In reply to comment #20) > Come on, additional of an option to add country code automatically would not be > that hard to you. Hi JJ, great that you know the code and the complexity to add this! As it's closed source I assume that you must be an employee of Nokia or Skype. Looking forward to your code patches - thanks for helping on this. ;-)
(In reply to comment #21) > (In reply to comment #20) > > Come on, additional of an option to add country code automatically would not be > > that hard to you. > > Hi JJ, great that you know the code and the complexity to add this! > As it's closed source I assume that you must be an employee of Nokia or Skype. > Looking forward to your code patches - thanks for helping on this. ;-) > Hi Klapper, glad for your reply, dont know that would be that harsh to you. If you consider to ask your customer to do the job for you, you should also leave your name and employer ID so he can ask nokia to transac your salary to his account afterwards.
JJ, the caustic attitude in your comments isn't helping anyone or anything (except perhaps your ego). Being a big enough jerk isn't going to suddenly make Andre say, "You know what? You're right, this should go at the top of my to do list, I'll get right on it. Thanks for showing me the light!" That said, Andre, can I ask why a "default country code" option can't be provided? If the concern is that it would be confusing for users, it seems that this option could be hidden away deep in the settings and default to null so that it wouldn't bother anyone unless they explicitly went looking for it.
(In reply to comment #21) > (In reply to comment #20) > > Come on, additional of an option to add country code automatically would not be > > that hard to you. > > Hi JJ, great that you know the code and the complexity to add this! > As it's closed source I assume that you must be an employee of Nokia or Skype. > Looking forward to your code patches - thanks for helping on this. ;-) > Hi Klapper, glad for your reply, dont know that would be that harsh to you. If you consider to ask your customer to do the job for you, you should also leave your name and employer ID so he can ask nokia to transac your salary to his account afterwards. (In reply to comment #23) > JJ, the caustic attitude in your comments isn't helping anyone or anything > (except perhaps your ego). Being a big enough jerk isn't going to suddenly make > Andre say, "You know what? You're right, this should go at the top of my to do > list, I'll get right on it. Thanks for showing me the light!" > > That said, Andre, can I ask why a "default country code" option can't be > provided? If the concern is that it would be confusing for users, it seems that > this option could be hidden away deep in the settings and default to null so > that it wouldn't bother anyone unless they explicitly went looking for it. > Hi Evan, You are right, my apology for my wordings. I guess I am only trying to point out an area of improvement but what I get is well it is too hard and you should do it on your own. Any way, this is my last post in this bug at the topic, bye.
I just installed PR1.2 and this problem has not been resolved. I opened my address book and clicked a contact whose phone number was stored as "585-671-9570", then clicked "Call with Skype". It loaded up the phone application and displayed "Incorrect address" on top of the screen rather than "Skype requires phone numbers in international format".
(In reply to comment #25) > I just installed PR1.2 and this problem has not been resolved. I opened my > address book and clicked a contact whose phone number was stored as > "585-671-9570", then clicked "Call with Skype". It loaded up the phone > application and displayed "Incorrect address" on top of the screen rather than > "Skype requires phone numbers in international format". Interesting. Running 10.2010.19-1 here, not having a SIM card inserted, having my Skype account configured and online, and entering "123456789" in the Dialling pad triggers the new error message. I started Contacts, added a new test contact, and set "123456789" in the mobile field. Then I opened the contact, and clicked "Call with Skype" and get that error message. So the phone number of your contact has dashes included? How did you do that? :)
(In reply to comment #24) > you should also leave your name and employer ID so he can ask nokia to > transac your salary to his account afterwards. Hehe. I'd first have to become a Nokia employee for that. :) > > That said, Andre, can I ask why a "default country code" option can't be > > provided? Management decisions that I only know the results of... Probably a question of priorities and avoiding bigger code changes at this stage of Maemo5 development.
> Interesting. Running 10.2010.19-1 here, not having a SIM card inserted, having > my Skype account configured and online, and entering "123456789" in the > Dialling pad triggers the new error message. > > I started Contacts, added a new test contact, and set "123456789" in the mobile > field. > Then I opened the contact, and clicked "Call with Skype" and get that error > message. I was able to reproduce the correct error message ("Skype requires phone numbers in international format") by removing the dashes from my contact's stored phone number. It appears that the dashes screw up the check. > So the phone number of your contact has dashes included? How did you do that? > :) Contact import from gmail. All my contacts in gmail have their phone numbers in that format; some of them also have parentheses around the area code. I entered their phone numbers that way for readability purposes. It appears that Maemo doesn't handle those dashes very well, and probably not parentheses either. I don't know if the dialer handles them any better when calling via SIM -- I've only ever used the call with Skype option.
Reopening as the dashes should have been considered in getting the proper diagnostic. Thanks for finding this out.
Summarizing: fixed in PR1.2 (10.2010.19-1) for numbers with digits only, not fixed for numbers that include dashes.
Well, I got my n900 a few weeks ago, and today I got myself set to find out how to make a skypeout call. What makes it unusable is the fact that it gives the error message and I have to WRITE DOWN the number, go to the dialing pad and type the prefix and then the number. It could at least leave the number on the dialing pad, so I could edit. I absolutely refuse to have a phone like n900 and write something down on paper. My current solution is to add a new phone number for each of my contacts with skype's prefix. Then each one has 2 numbers, one for SIM call and another for skype. I leave this comment here as a work-around that other people might find useful. By the way, is there a stand-alone Skype application for maemo? Maybe it would be easier to fix on an application not embeeded in the phone. As a side note: I also have this problem if I change my SIM to another operator, depending on the plan and on roaming location. Actually, I have a worksheet that generates the contatcs to be imported to the phone.