WM 6.5 - Handling of incoming calls RRS feed

  • Question

  • Hi, currently i'm working on an application that runs on windows mobile 6.5 using .Net 3.5. One of the feature of the application is that it will allow user to handle their calls from the app. The function are built using TAPI library in C#.

    There is no problem with outgoing calls. However for incoming calls, the OS default call handler (CProg.exe) will pops up and distract the apps. I had tried the following so far:

    - using lineSetAppPriority to set my apps priority to highest. The function returned 0 (means ok) but still CProg takes over.

    - use ShowWindow to hide the incoming call screen. I managed to hide it, but although the screen is showing my apps, all the buttons are not functioning. It seems that the control or focus is still with CProg although it's been hide from the screen.

    - created a dummy exe that does nothing, and change the registry for cprog to point to it. With this CProg is gone, but together with the calls ringtone and the signal status bar is showing a big exclamation mark. App is able to handle the calls though.

    - pull my hair, which obviously doesn't help...

    I wonder how this should work out in a proper manner. Is there a way for C# developers to handle incoming calls without obstructing the OS?

    The device i'm testing on is a Motorola MC65.

    Thank you.

    • Changed type ipohfly Friday, September 4, 2015 3:32 AM it is a question
    Friday, September 4, 2015 3:30 AM

All replies

  • Hi ipohfly,

    Please check this great article: Windows Mobile: programmatically intercepting phone calls

    You may need to cooperate with the Device OEM\OEMs .

    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Wednesday, September 9, 2015 1:16 PM
  • Thanks. Does this means there is no other way to achieve this via TAPI?

    Is there a way for me to trigger the calling ringtone then?

    Wednesday, September 9, 2015 4:01 PM
  • Hi Ipohfly,

    Have you looked at the state & notifications broker (AKA StatStor)? https://msdn.microsoft.com/en-us/library/bb154491.aspx . It allows your app to register for notifications of system events.

    In your case the interesting items are:

      • Phone information, such as signal information, operator information, call information, multiline information.
      • Connections information, related to bluetooth, cellular, network, modem, etc.

    However, why do you want to trigger the calling ringtone? Would it not be easier to just set the system ringtone to the one you want? Can you tell us what your scenario is as maybe there is a better way to accomplish it?

    Sincerely, IoTGirl

    Wednesday, September 9, 2015 5:41 PM
  • Hi IoTGirl,

    Thanks, i tried access the URL you provided but got a Server Error page. Is the link broken?

    In general, what we are trying to achieve, is to let our apps to handle all incoming calls. If possible, the current ringtone settings in the device shall be used. In short, the idea scenario is, when there is a call coming in, the device will ring as usual, and if our apps is running, user can answer calls from our apps directly, with the status of the call visible on our apps.

    Through TAPI i had managed to code the apps to handle incoming calls, but the issue is that the default call handler program (CProg.exe) of the device will pop up as well, and so the user will not be able to interact with the incoming calls using our app, even after i'd tried the above mentioned method.

    The closest we get to this now is by replacing the CProg.exe with a dummy one ( I know this is a bad idea but..). However doing this the ringtone is not functioning when there is incoming call, so i was thinking whether there is a way for us to programmatically fire the ringtone when there's a call coming in.

    Thank you

    • Edited by ipohfly Thursday, September 10, 2015 2:17 AM extra word
    Thursday, September 10, 2015 2:15 AM
  • Sorry! Fixed the link!
    Thursday, September 10, 2015 2:46 AM
  • Thanks. I'd gone through it, and if i'm not wrong, it allows us to register our interest in getting notification when there's an event fired.

    Will this though be able to stop the default caller app from popping up when there's an incoming call?

    Thank you

    Thursday, September 10, 2015 3:39 AM
  • Nope, It sounds like you are building a replacement dialer and while I have not done so myself, I think you are on the right track with attempting to replace or shadow the existing dialer.  There was a sample at https://msdn.microsoft.com/en-us/library/bb158746.aspx?f=255&MSPPError=-2147217396 you might be able to leverage for your effort.

    Thursday, September 10, 2015 4:05 AM