Home > Archive > Smartphone Developer Forum > January 2005 > TAPI LineForward Problem on Smartphone
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
TAPI LineForward Problem on Smartphone
|
|
|
| Hi,
I have created an application that sets the call forwarding on a smartphone
using the TAPI LineForward function. It seems to work, and set the
forwarding as I had hoped. I am doing an "uncoditional" forward ->
ForwardMode = ForwardMode.Uncond //Pseudo code
I have posted the other ForwardMode options below.
Anyway, all works well, the calls are all forwarded, and I am able to also
cancel the forward with no troubles. However, when I use this, it seems to
"clear" all the other call forward settings on the phone, such as go to
voice mail when the phone is off, or after 20 seconds of ringing. I can go
back manually and put these in the phone (Start/Settings/Phone/Call
Forwarding - Unconditional, No Reply, Busy, & Unavailable) and all is well
again - but they are removed as soon as LineForward is called aagin.
Any suggestions on how to keep this from happening? Should I be using
another ForwardMode (I do want All calls to forward when I set it
programatically)
The phone I am testing this on is a Audiovox SMT 5600 (Smartphone 2003)
Thanks,
-Ed
Other forwardMode options:
Uncond = 0x00000001,
UncondInternal = 0x00000002,
UncondExternal = 0x00000004,
UncondSpecific = 0x00000008,
Busy = 0x00000010,
BusyInternal = 0x00000020,
BusyExternal = 0x00000040,
BusySpecific = 0x00000080,
NoAnswer = 0x00000100,
NoAnswerInternal = 0x00000200,
NoAnswerExternal = 0x00000400,
NoAnswerSpecific = 0x00000800,
BusyNa = 0x00001000,
BusyNaInternal = 0x00002000,
BusyNaExternal = 0x00004000,
BusyNaSpecific = 0x00008000,
Unknown = 0x00010000, // TAPI v1.4
Unavailable = 0x00020000 // TAPI v1.4
| |
| Andreas Marschall [MVP TAPI] 2005-01-27, 3:58 am |
| "EdH" <ee@ee.com> schrieb im Newsbeitrag
news:%23lQmpCABFHA.3472@TK2MSFTNGP14.phx.gbl...
> I have created an application that sets the call forwarding on a smartphone
> using the TAPI LineForward function. It seems to work, and set the
> forwarding as I had hoped. I am doing an "uncoditional" forward ->
> ForwardMode = ForwardMode.Uncond //Pseudo code
> I have posted the other ForwardMode options below.
>
> Anyway, all works well, the calls are all forwarded, and I am able to also
> cancel the forward with no troubles. However, when I use this, it seems to
> "clear" all the other call forward settings on the phone, such as go to
> voice mail when the phone is off, or after 20 seconds of ringing. I can go
> back manually and put these in the phone (Start/Settings/Phone/Call
> Forwarding - Unconditional, No Reply, Busy, & Unavailable) and all is well
> again - but they are removed as soon as LineForward is called aagin.
>
> Any suggestions on how to keep this from happening? Should I be using
> another ForwardMode (I do want All calls to forward when I set it
> programatically)
> The phone I am testing this on is a Audiovox SMT 5600 (Smartphone 2003)
Ed,
any lineForward() invoke overwrites all exisiting forwarding rules by
definition.
From MSDN: "The most recent forwarding list replaces the old one."
When does it happen "to 'clear' all the other call forward settings on the
phone" ?
Only after canceling your TAPI forwaring by sending lineForward() specifying a
NULL pointer as lpForwardList or even after invoking lineForward() with
LINEFORWARDMODE_UNCOND ?
What LINE_ADDRESSSTATE (forwarding) messages do you get in your scenario?
What is the contents of the LINEFORWARD array pointed to by
LINEADDRESSSTATUS.dwForwardOffset/Size and .dwForwardNumEntries at each step
of your scenario (incl. prior invoking any lineForward)?
--
Best Regards
Andreas Marschall
Microsoft MVP for TAPI / Windows SDK
TAPI / TSP Developer and Tester
http://www.I-B-A-M.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm
* Please post all messages and replies to the newsgroup so all may
* benefit from the discussion. Private mail is usually not replied to.
* This posting is provided "AS IS" with no warranties, and confers no rights.
| |
| Grant Schenck 2005-01-27, 4:04 pm |
| As Andreas says, setting forward with lineForward clears all
forwarding as part of setting the new forwarding. I'd assume that if
lineForward is able to clear non-Uncond forward modes then you should
be able to determine what those modes are before setting it so that
you can include those in your setting.
To determine the current forward modes, check the LINEADDRESSSTATUS
structure.
--
Grant Schenck
Grant Schenck Software
schenckg@optonline.net
http://grantschenck.tripod.com
"EdH" <ee@ee.com> wrote in message
news:#lQmpCABFHA.3472@TK2MSFTNGP14.phx.gbl...
> Hi,
>
> I have created an application that sets the call forwarding on a
smartphone
> using the TAPI LineForward function. It seems to work, and set the
> forwarding as I had hoped. I am doing an "uncoditional" forward ->
> ForwardMode = ForwardMode.Uncond file://Pseudo code
> I have posted the other ForwardMode options below.
>
> Anyway, all works well, the calls are all forwarded, and I am able
to also
> cancel the forward with no troubles. However, when I use this, it
seems to
> "clear" all the other call forward settings on the phone, such as go
to
> voice mail when the phone is off, or after 20 seconds of ringing. I
can go
> back manually and put these in the phone (Start/Settings/Phone/Call
> Forwarding - Unconditional, No Reply, Busy, & Unavailable) and all
is well
> again - but they are removed as soon as LineForward is called aagin.
>
> Any suggestions on how to keep this from happening? Should I be
using
> another ForwardMode (I do want All calls to forward when I set it
> programatically)
> The phone I am testing this on is a Audiovox SMT 5600 (Smartphone
2003)
>
> Thanks,
> -Ed
>
> Other forwardMode options:
> Uncond = 0x00000001,
> UncondInternal = 0x00000002,
> UncondExternal = 0x00000004,
> UncondSpecific = 0x00000008,
> Busy = 0x00000010,
> BusyInternal = 0x00000020,
> BusyExternal = 0x00000040,
> BusySpecific = 0x00000080,
> NoAnswer = 0x00000100,
> NoAnswerInternal = 0x00000200,
> NoAnswerExternal = 0x00000400,
> NoAnswerSpecific = 0x00000800,
> BusyNa = 0x00001000,
> BusyNaInternal = 0x00002000,
> BusyNaExternal = 0x00004000,
> BusyNaSpecific = 0x00008000,
> Unknown = 0x00010000, // TAPI v1.4
> Unavailable = 0x00020000 // TAPI v1.4
>
>
| |
|
| Andreas & Grant,
Thanks you both for the help - I'll give it a try.
Thanks again!
-Ed
"EdH" <ee@ee.com> wrote in message
news:%23lQmpCABFHA.3472@TK2MSFTNGP14.phx.gbl...
> Hi,
>
> I have created an application that sets the call forwarding on a
> smartphone using the TAPI LineForward function. It seems to work, and set
> the forwarding as I had hoped. I am doing an "uncoditional" forward ->
> ForwardMode = ForwardMode.Uncond //Pseudo code
> I have posted the other ForwardMode options below.
>
> Anyway, all works well, the calls are all forwarded, and I am able to also
> cancel the forward with no troubles. However, when I use this, it seems
> to "clear" all the other call forward settings on the phone, such as go to
> voice mail when the phone is off, or after 20 seconds of ringing. I can
> go back manually and put these in the phone (Start/Settings/Phone/Call
> Forwarding - Unconditional, No Reply, Busy, & Unavailable) and all is well
> again - but they are removed as soon as LineForward is called aagin.
>
> Any suggestions on how to keep this from happening? Should I be using
> another ForwardMode (I do want All calls to forward when I set it
> programatically)
> The phone I am testing this on is a Audiovox SMT 5600 (Smartphone 2003)
>
> Thanks,
> -Ed
>
> Other forwardMode options:
> Uncond = 0x00000001,
> UncondInternal = 0x00000002,
> UncondExternal = 0x00000004,
> UncondSpecific = 0x00000008,
> Busy = 0x00000010,
> BusyInternal = 0x00000020,
> BusyExternal = 0x00000040,
> BusySpecific = 0x00000080,
> NoAnswer = 0x00000100,
> NoAnswerInternal = 0x00000200,
> NoAnswerExternal = 0x00000400,
> NoAnswerSpecific = 0x00000800,
> BusyNa = 0x00001000,
> BusyNaInternal = 0x00002000,
> BusyNaExternal = 0x00004000,
> BusyNaSpecific = 0x00008000,
> Unknown = 0x00010000, // TAPI v1.4
> Unavailable = 0x00020000 // TAPI v1.4
>
|
|
|
|
|