sending AVK_CLR or AVK_END to terminate on going phone call | developer.brewmp.com sending AVK_CLR or AVK_END to terminate on going phone call | developer.brewmp.com

Developer

sending AVK_CLR or AVK_END to terminate on going phone call

Forums:

Greetings!

I want to terminate any phone call in progress. The simplist approach i can think of is to send AVK_CLR or AVK_END event to the device, so that phone call terminates. My application is running in background, so the application itself does not terminate if I send any of the two events, but the bad part is, phone call doesn't terminate as well [tested it on simulator]

I'm trying to avoid using ITelephone or ICallMgr interfaces... is there any way?

Thanks in advance...

Taha

how can u send these event to the call in progress, as u don't know the classid of that very calling application. as far as i know those app are written down on OEM level, so class id of those APP u will get NULL. there is no chance that u can send event from ur BREW APP to the call in progress, if u wanna 2 end the call then u have 2 use OEM based API, like ICALL api to terminate the call.

how can u send these event to the call in progress, as u don't know the classid of that very calling application. as far as i know those app are written down on OEM level, so class id of those APP u will get NULL. there is no chance that u can send event from ur BREW APP to the call in progress, if u wanna 2 end the call then u have 2 use OEM based API, like ICALL api to terminate the call.

Quote:
how can u send these event to the call in progress, as u don't know the classid of that very calling application. as far as i know those app are written down on OEM level, so class id of those APP u will get NULL.
Yes, I think that is what I was trying to say. In BREW API reference, there is an API call listed as:
boolean ISHELL_SendEvent
(
IShell * pIShell,
AEECLSID clsApp,
AEEEvent evt,
uint16 wp,
uint32 dwp
)
for AEECLSID clsApp part, I was sending 0 (assumption: event is simply sent to device). The returned value is TRUE in this case... so i was hoping call would be ended 'somehow'.
code I was using:
boolean rv = ISHELL_SendEvent(papp->m_pIShell,0,EVT_KEY,AVK_CLR,0);
Quote:if u wanna 2 end the call then u have 2 use OEM based API, like ICALL api to terminate the call.
For ICallMgr and ICall, it says in API reference:
Quote:"These methods if used incorrectly may render the device unusable. "
so I was trying to avoid them if there is a way around. So... do you think this direction may have any potential? Thanks for your reply

Quote:
how can u send these event to the call in progress, as u don't know the classid of that very calling application. as far as i know those app are written down on OEM level, so class id of those APP u will get NULL.
Yes, I think that is what I was trying to say. In BREW API reference, there is an API call listed as:
boolean ISHELL_SendEvent
(
IShell * pIShell,
AEECLSID clsApp,
AEEEvent evt,
uint16 wp,
uint32 dwp
)
for AEECLSID clsApp part, I was sending 0 (assumption: event is simply sent to device). The returned value is TRUE in this case... so i was hoping call would be ended 'somehow'.
code I was using:
boolean rv = ISHELL_SendEvent(papp->m_pIShell,0,EVT_KEY,AVK_CLR,0);
Quote:if u wanna 2 end the call then u have 2 use OEM based API, like ICALL api to terminate the call.
For ICallMgr and ICall, it says in API reference:
Quote:"These methods if used incorrectly may render the device unusable. "
so I was trying to avoid them if there is a way around. So... do you think this direction may have any potential? Thanks for your reply

You are going to need OEM support for this level of functionality. No carrier is going to launch something that can terminate a phone call unless EVERYONE is on board and has worked together to develop the application.
Also, I don't believe what you are trying to do can be done in BREW natively, without low level support.

You are going to need OEM support for this level of functionality. No carrier is going to launch something that can terminate a phone call unless EVERYONE is on board and has worked together to develop the application.
Also, I don't believe what you are trying to do can be done in BREW natively, without low level support.

I've also tried sending these events to the AEECLSID_CALLMGR and AEECLSID_CALL class ids, but thats not working either...
I guess I'll have to use low level API to achieve my objective like you people have said ... on the simulator, I've today tried ICALLMGR_EndAllCalls() function; simple, and it does the job as well... I hope phone doesn't get damaged once app is up and running...
Thank you for showing interest and in helping me achieve the solution...
Taha

I've also tried sending these events to the AEECLSID_CALLMGR and AEECLSID_CALL class ids, but thats not working either...
I guess I'll have to use low level API to achieve my objective like you people have said ... on the simulator, I've today tried ICALLMGR_EndAllCalls() function; simple, and it does the job as well... I hope phone doesn't get damaged once app is up and running...
Thank you for showing interest and in helping me achieve the solution...
Taha