Home > Web > Special links: phone calls, sms, e-mails, iPhone and Android apps, …

Special links: phone calls, sms, e-mails, iPhone and Android apps, …


Everyone knows to include a link into a page, but what I want to discuss today is how you can include some special links.

Phone calls

This is something cool and with the explosion of smart phones with which you can easily browse this is definitely to consider having on the mobile version of your website. Such a link will initiate a call on your mobile to a specified number. But here the things are a little bit more complicated, requiring different links for different phones. You can easily find how to create such a link consulting the WURFL database and looking at the wml_make_phone_call_string property in the wml_ui category.

Basically this is done as follows:

callto:[phone_number]
mainly appropriate for iPhone and Nokia phones
wtai://wp/mc;[phone_number]
mainly appropriate for Android phones
tel:[phone_number]
reported to work on most of the newest devices. If you want to have only one type of URI, use this one.

In the phone number you can use +(plus) sign for international numbers. What's also interesting to know is that this can even work on a desktop if you have an application like Skype installed. So maybe it's a good idea to have this on the classic/desktop website too.

Later update from comments. Another interesting phone link will be how to call a teleconferencing phone number. There you call a phone number and then you enter your conference code, usually followed by hash(#). To do this from a link you will need a pause after the phone number and this is done with , (comma), usually entered by a long press on star(*). I tested this on Android and iOS and it works fine, but you usually need two pauses (,) between the phone number and conference code. Same way you can dial an extension line.

Examples

callto:12345678
call 12345678 on iPhone and Nokia
wtai://wp/mc;12345678
call 12345678 on Android
wtai://wp/mc;+123456789
call an international number on Android
tel:12345678
call 12345678 on most of the newer devices
tel:12345678,,100200#
join 100200 conference code on the conference line 12345678 on most of the newer devices
tel:+12345678,,100200#
join 100200 conference code on the international conference line +12345678 on most of the newer devices

SMS

From a web page you can open the SMS sending application on the user phone with a link like below:

sms:<phone_number>[,<phone-number>]*[?body=<message_body>]

The link contains a comma separated list of phone numbers and an optional message body. The phone numbers are specified as in the call links. Detailed information you can find in the URI Scheme for GSM Short Message Service (draft)

Examples

sms:12345678
SMS to 12345678
sms:12345678?body=Hello my friend
SMS "Hello my friend" to 12345678
sms:123456789,+123456789?body=Hello
SMS to multiple phone numbers, including an international one

There is also an URI version for MMS starting with mms:. On some (mobile) browsers (devices) it is also reported to work smsto: and mmsto:, although I would recommend the first version.

iPhone/iPod/iTunes

When developing a website iPhone is definitely to be considered. You can include links to items in the iTunes store, such as movies, music or application. Apple provided for your convenience a web interface to create such links: ITMS Link Maker. Just specify the country, the search keyowrds and what type of iTunes items. You will get a list of items and when you click one you will get the link. You can even get the link for an author. These links will both work on the desktop and iPhone.

Example: Fluid application (free)

Android market

Android is gaining market share as we speak. Nexus One was just released and in my opinion will beat iPhone. As you include links to iTunes, you can include links to applications in Android Market.

market://search?q=<query>

The query can include keywords or can identify a specific application using q=pname:your.package.name and then the link will be market://search?q=pname:your.package.name.

Ovi Store

Nokia created a new fresh application repository for their latest phone - Ovi Store. If you want to include a link to an application, search for it and then copy the link that it will look like http://store.ovi.com/content/XXXXX?clickSource=publisher+channel. Just remove the last part and include http://store.ovi.com/content/21309 into your page, where XXXXX is the application Id. You can also include a link to a publisher's page containing a summary of their application. The link is found on any of the publisher's application (see by Publisher Name) and it will look like http://store.ovi.com/publisher/Publisher+Name

Windows Marketplace

We cannot exclude Microsoft from the list with their Windows Phone Marketplace. Same steps to find out the application link: search it, copy the link location and strip the last part. The link will look like http://marketplace.windowsphone.com/details.aspx?appId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, where xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx is the application ID, clearly resembling a GUID. Here publishers don't have a personal page.

BlackBerry App World

For all those BlackBerry fans, there is BlackBerry App World. Again same process: search for the application and copy the link location of the application icon. The format is http://appworld.blackberry.com/webstore/content/XXXXX, where XXXXX is the application ID. The app authors have a page here with a summary of their apps. See the by Author link under each application. The link will be like http://appworld.blackberry.com/webstore/vendor/XXXX, where XXXX is the author ID.

Geolocation

Nowadays you cannot even imagine a world without maps and GPS. More and more contact pages include a map too. Nowadays smart phones usually include a map application and opening a map with your location in it would be quite nice for the user

geopoint:latitude,longitude

As simple as this and you know where to go.

Messengers

From a web site you can also interact with the messenger applications installed on your machine.

Yahoo Messenger

ymsgr:ACTION?USERNAME&m=YOUR+MESSAGE

The possible actions are addfriend, sendIM and call. The message can, of course, be specified only for sendIM action. The USERNAME should be your.account@yahoo.com or your.account@hotmail.com.

Example: ymsgr:sendIM?beradrian&m=Hello - Say Hello in Yahoo Messenger.

Windows Messenger

msnim:ACTION?contact=USERNAME

The possible actions are chat, add (to add a contact), voice (for voice call) and video (for video call). The USERNAME should be your.account@yahoo.com or your.account@hotmail.com.

Example: msnim:chat?contact=beradrian@yahoo.com - Chat with me in Windows Messenger.

Google Talk

gtalk:ACTION?jid=USERNAME&from_jid=YOURNAME

The possible actions are chat and call (for voice call). The USERNAME and YOURNAME should be your.account@gmail.com. The parameter from_jid is optional and it should be specified only if you use multiple accounts.

Example: gtalk:chat?jid=beradrian@yahoo.com - Chat with me in Google Talk.

Skype

skype:USERNAME?ACTION

The possible actions are chat, add (to add a contact), userinfo (to view a profile) and voicemail (to leave a voicemail). The USERNAME is your Skype ID.

Example: skype:chat?jid=beradrian - Chat with me in Skype.

There is also AIM, IRC and some others but we will not get into any other details for the moment.

Mail

It's pretty easy to include a link for sending an email into your webpage. Basically it's replacing the http scheme with mailto. So the link will look something like:

mailto:<email>[,<email>]*[?<arguments>]

Such a link will practically open the system application for sending emails (like Outlook or Thunderbird) and the message will be prepopulated with some values. As you can notice you can use multiple email addresses (To) separated by comma.

The possible arguments to be included are:

subject
the message Subject field
cc
the message CC field as a comma separated list of addresses
bcc
the message BCC field as a comma separated list of addresses
body
the message body. If you include a new line in your message you should include %0A.

Examples

mailto:nobody@wordpress.com
the simplest mailto link
mailto:nobody@wordpress.com,no.one@wordpress.com
multiple email addresses
"mailto:nobody@wordpress.com?subject=Testing mailto
specify a subject
"mailto:nobody@wordpress.com?subject=Testing mailto&cc=no.one@wrodpress.com
specify a subject and CC

Just as a side note in the end, it's better not to rely on this kind of mechanism for handling email on your website. A contact form that sends an email could be a better idea.

Most of these URIs work not only on browsers, but on QR codes readers as well.

Happy linking!!!

Last update: March 30, 2011.

About these ads
Categories: Web Tags:
  1. January 25, 2010 at 6:38 am

    Nice inspiring blog, dude. I enjoy your posting. I am about to create blog about mobile phones, too.

    Thanks!

  2. April 23, 2010 at 11:56 am

    I’ve been using tel:+16663339XXX for phone calls. It seems to work on both Android and iPhone. Is there a reason why I should not use this?

    • April 23, 2010 at 4:32 pm

      Actually there is no reason for not using this. But are you sure that this works on all the phones? If yes, then this is actually good. Otherwise you will support only a set of devices.

  3. charlie
    December 27, 2010 at 3:09 am

    Hi,
    Intriguing post.
    Where would i submit the code
    wtai://wp/mc;917xxxxxxx
    and have it be able to execute (i.e. call the phone number).

    I was trying to have a calendared alert cause a phone call (rather than an email or sms)

    Thanks,
    Charlie

    • December 27, 2010 at 3:20 am

      All these must be put in the href attribute of an A tag.

  4. falcon
    January 5, 2011 at 12:30 pm

    SMS command i think is not supported by all of the browser right?

  5. September 8, 2011 at 6:12 pm

    Interesting post. It took me hours to get my head around WURFL, this post has helped me a lot.

    Thanks for the info Adrian!

  6. blackberry
    September 29, 2011 at 5:37 pm

    Hi. i have a question in regards to the sms code for blackberries. any blackberry browser before Blackberry Browser 6 does not recognize the sms protocol. Anyone have any insight into what can work for the blackberry browsers before version 6? Thank you.

  7. November 15, 2011 at 4:43 am

    I’ve got an Android v2.2.3 phone and the sms URI parser has a major bug related to both HTML URIs and NFC URI parsing. I still can’t believe Google hasn’t fixed the dang thing. Basically, if I include message content by suffixing ?body=blah to the URI, my phone puts the entire URI into the recipient section (i.e. sms:+123456?body=hi will result in a recipient list populated with 123456?body=hi and an error will occur). So frustrating to know Google has known about this bug for YEARS (not months, years) and it is still not fixed.

    w.t.f. google… w.t.f.

    • Michael
      August 26, 2012 at 10:54 pm

      still not fixed, i guess..

  8. Anonymous
    September 27, 2012 at 7:14 pm

    Really nice Article…..

  9. Vikram
    September 27, 2012 at 7:15 pm

    Good one….

  10. September 27, 2012 at 8:18 pm

    Helpful Thanks.

  11. November 1, 2012 at 11:31 am

    The list of Hyperlink types you’ve mentioned are ideal for use with QR codes. I tested some of them already and the results are very satisfactory.
    Now I can post direct “call for action” in print ads like “Check in with Foursquare”, “subscribe now via SMS”, “Download now” …etc.

    Nice work, thanks

  12. Manjit
    December 3, 2012 at 9:19 am

    Helped me a lot… Thanks Guys..

  13. Manjit
    December 3, 2012 at 9:29 am

    do any one have idea to how to fire an calender event by passing the parameters to link an and it should open is respective calender for mobile.

    If any one could reply, it would be always appreciated…

    Thanks in advance.

  14. Sathya
    January 25, 2013 at 3:55 am

    Sending SMS to multiple recipients is not working in iPhone. Is there any other separator which can be used in place of comma.

    • February 20, 2013 at 12:31 pm

      Have you tried with semicolon(;) or pipe(|)?

  15. February 3, 2013 at 9:12 am

    You have made some decent points there. I looked on the internet for additional information about the
    issue and found most people will go along with your views on this site.

  16. COBRA
    February 20, 2013 at 6:14 am

    hello
    what if i wanted to make it SMS and send directly ?
    what is the code for that ?
    i mean example
    sms:123456789,+123456789?body=Hello
    and then send directly
    thank you

    • February 20, 2013 at 12:30 pm

      I doubt that you can send directly a SMS. The link is invoking the native app for this.

  17. Dan
    March 13, 2013 at 10:18 pm

    Thanks for the post!

    In html email, adding a teleconference passcode works as follows for both iPhone and Android:
    tel:8887776666,,012345678#

    This also works in an iPhone calendar event. Unfortunately, the Android calendar viewer doesn’t recognize the tel: keyword in the body of the event and only “linkifies” the numbers separately. Anyone have a tip on how to make this work?

  18. September 17, 2013 at 12:57 am

    Is it possible to combine a sms and an email in one command together?
    Because when I use the mailto:….. in an Android system, the user gets the possibillity to send an email, but also to send an sms. But I don’t know how to add also the sms-phonenumber into the same mailto:.. command.

    • mike
      July 16, 2014 at 6:47 am

      this is a little late but have you tried to use the phone email address? sometimes it is something like 1234567890@mail.att.net or something like that.

  19. October 13, 2013 at 9:26 pm

    Thank You!!!
    Hope it works, haven’t tried it out, but just what I was looking for! :)

  20. Anonymous
    June 25, 2014 at 1:13 am

    Thank you

  1. March 4, 2011 at 10:59 am
  2. March 30, 2011 at 5:11 pm
  3. February 13, 2013 at 9:52 pm
  4. June 1, 2014 at 11:34 pm

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: