Support for vibrate or flashing LED?

Version 1
    This document was generated from CDN thread

    Created by: Craig Knighton on 28-10-2010 01:59:51 PM
    Can anyone tell me if the 7925/7926 phone hardware supports vibrate?  I'm assuming they don't as I found no evidence of it.  Is there support in the API for it and is it worth coding against those API's in case future phones do have support?
     
    Also, is there any way to control the color or state of the LED indicator on these same phones?
     
    Thanks in advance,
    CK

    Subject: RE: Support for vibrate or flashing LED?
    Replied by: Conrad Price on 29-10-2010 04:42:53 PM
    There is a vibrator in the 7921/7925/7926 phones, it's fitted to the bottom right corner of the phone.
     
    There is also an XSI Vibrate URI that can be used  in conjunction with the IPPhoneExecute command. The details on the syntax should be in the XML developer guide.
     
    The vibrator is used if the ring volume is set to be silent, it is also used as a call waiting indicator when in an active call.
     
    The led does not have any API that I am aware of. It's used solely for charging indication, MWI indication,
    and radio activity.
     
    -Conrad

    Subject: RE: Support for vibrate or flashing LED?
    Replied by: Craig Knighton on 08-11-2010 07:02:51 PM
     
    There is also an XSI Vibrate URI that can be used  in conjunction with the IPPhoneExecute command. The details on the syntax should be in the XML developer guide.
     
    -Conrad

    Can you elaborate on how to best call the XSI URI from inside the MIDlet?  Do you use the platformRequest API?  If so, what is the specific format for the request (or where are these documented)?
     
    I have been successful using the Dial URI as follows - is it something like this?
     
    "Dial:" + phoneNumber + ":1:Amcom/AMC/AMC"

    Subject: RE: Support for vibrate or flashing LED?
    Replied by: Craig Knighton on 08-11-2010 10:27:28 PM
    I think I found it - it looks like the URI format is:
     
    Vibrate:vibrateDuration:silenceDuration:count
     
    For example, this will vibrate once for one second:
    Vibrate:1000:0:1
     
    I'll be trying it by sending this string via a call to platformRequest

    Subject: RE: Support for vibrate or flashing LED?
    Replied by: Craig Knighton on 08-11-2010 11:17:25 PM
    I tried passing the vibrate URI on with a platformRequest but nothing happens on the phone (7925).  In the Java log I see:
     

    2010-11-08 17:14:21:0730 CP-7925G user.err java: JwcNativePR(Vibrate:1000:0:1):


    Which suggests that my platform call is being made and I think it is formatted correctly.  Any suggestions as to why the phone would not vibrate?

    Subject: RE: Support for vibrate or flashing LED?
    Replied by: David Staudt on 14-01-2011 09:35:07 PM
    The  bad news is that per the JMAPI doc, the following URIs are supported via platformRequest():
     
     
    -RTP Streaming URIs: Initiating and terminating RTP audio streams to/from the phone
    -Enhanced Dial URI: Initiating new calls and controlling the user interface for a call
    -SendDigits URI: Injecting DTMF digits into active calls
     
    not including Vibrate.

    The good news is that midp itself has an API for vibrate:

    javax.microedition.lcdui.Display class
    vibrate(int duration) method

    The other bad news is that the 792x phones currently do not support the API.  Feedback on use-case and business impact, as always, appreciated so we can feed back to engineering.