Re: Reason for LINEDISCONNECTMODE_NOANSWER
- From: "Andreas Marschall [MVP TAPI]" <Andreas.Marschall@xxxxxxxxxx>
- Date: Thu, 20 Oct 2005 17:58:34 +0200
"Martin Richter [MVP]" <martin.richter@xxxxxxxx> schrieb im Newsbeitrag
news:dj5b0o.5i8.1@xxxxxxxxxxxxxxxxxxx
> >>If I dial a number via lineMakeCall that is not complete (missing last
> >>digit)
> >
> > Martin,
> > Do use partially dialling for this?
>
> No! It is a full number given from a DB.
Martin,
isn't this a contradiction: "not complete (missing last digit)" vs. "It is a
full number" ?
You may want to try partially dialing, i.e. adding a ';' at the end of
DestAddress at lineMakeCall().
Of course it depends on the TSP whether this is supported...
E.g. UniModem.TSP on W2k/SP4 supports it,
UniModem.TSP on XP/SP2 returns LINEERR_INVALADDRESS.
> >>it takes some time and the connection is disconnected and nearly
> >>all tapi drivers I checked (4 up to know, elmeg, Alcatel) returned as
> >>disconnect reason LINEDISCONNECTMODE_NOANSWER. And I can understand
> >>this, because I get no answer. Shouldn't it be
> >>LINEDISCONNECTMODE_BADADDRESS (The destination address is invalid)?
> >
> >
> > Now I'm confused:
> > At 1st you said you understand why it is _NOANSWER, then you suggested it
> > should be _BADADDRESS !?
> > Btw. why should it be _BADADDRESS? The address isn't invalid but only
> > incomplete.
>
> Yes but for the user, if he uses his phone the number does not yoield
> into a connection, and will never do this! So the address is bad!
And the user doesn't get an answer, therefore _NOANSWER.
So we obviously disagree on this...
Btw. you seem to intentionally misleading TAPISRV and the TSP about the
"missing last digit" at lineMakeCall().
This can be regarded as a bug in the TAPI app.
> >>But in the case above, when the TSP disconects due to timeout reasons I
> >>get a LINEDISCONNECTMODE_NOANSWER too. But the situation is different.
> >>In one case had a connection but nobody gets on the phone, in the other
> >>case there is no connection at all.
> >
> >
> > Are you refering to UniModem.TSP that is firing LINECALLSTATE_CONNECTED
> > immediately after dialling is complete?
>
> No! I am talking about a callcenter application that dial numbers
> thoughout TSP from different vendors, I tested some elmeg, Alcatel TSPs.
So what do you exactly meaan by "In one case had a connection but nobody gets
on the phone"?
> > As you have already noticed the the TAPI specification has only a brief
> > description of this,
> > it is actually up to the TSP developer to decide.
> > This decision is of course influenced by the information the TSP has
available
> > from the corresponding telephone devices.
> >
> > Conclusion: a TAPI app needs to be tested with _every_ TSP it desires to
> > _properly_ run with!
>
> Bad. Very bad. I alwys thought (maybe I am fool thinking that), that
> TAPI is a standard Interface and TSP programmers should use disconnect
> reasons in a way that they fir the docs and specs.
Welcome to the real world (of TAPI).
> > Btw. what is your actual problem with this (or is this "only"
academically)?
> >
> > For further discussion it will be helpfull to post TB20.logs (incl. logged
> > params) for the various scenarious and TSPs.
>
> Yes the discussion is more academically!
> We have several disconnect reasons.
> Our application needs to decide what to happen with a call that was not
> connected:
> The call was made, nobody replies on the rings and after a timeout may
> application drops the call. Conclusion for our application: Need to rery
> later until a retry count is reached. So this is not a problem.
O.k.
> Now we have the cases were we receive a LINEDISCONNECTMODE. Each of the
> modes is assigned to one of the categories below (this was done by
> reading the docs very carefully).
>
> - Failures that need special messages and action:
> LINEDISCONNECTMODE_UNKNOWN LINEDISCONNECTMODE_PICKUP
> LINEDISCONNECTMODE_FORWARDED LINEDISCONNECTMODE_CONGESTION
> LINEDISCONNECTMODE_UNAVAIL LINEDISCONNECTMODE_NODIALTONE
> LINEDISCONNECTMODE_TEMPFAILURE
> LINEDISCONNECTMODE_QOSUNAVAIL LINEDISCONNECTMODE_BLOCKED
> LINEDISCONNECTMODE_CANCELLED
I guess
LINEDISCONNECTMODE_PICKUP
LINEDISCONNECTMODE_FORWARDED
are for inbound calls.
> - The categorie the call is Busy and we need to retry it in a view minutes:
> LINEDISCONNECTMODE_NORMAL LINEDISCONNECTMODE_BUSY
> - The categorie were there was no connection because of timeouts or
> temporary failures and need to be retried later:
> LINEDISCONNECTMODE_REJECT LINEDISCONNECTMODE_NOANSWER
> LINEDISCONNECTMODE_UNREACHABLE LINEDISCONNECTMODE_DONOTDISTURB
> LINEDISCONNECTMODE_OUTOFORDER
I guess
LINEDISCONNECTMODE_CONGESTION
LINEDISCONNECTMODE_TEMPFAILURE
belong here too.
> - The categorie were we have to decide that the number is wrong and
> there is no need and the need to check the address:
> LINEDISCONNECTMODE_NUMBERCHANGED
> LINEDISCONNECTMODE_BADADDRESS LINEDISCONNECTMODE_INCOMPATIBLE
>
>
> Now I am in conflict with a address (phonenumber) that is incomplete.
> The TSP's I tested returned LINEDISCONNECTMODE_NOANSWER.
>
> So the academic question is: What is the correct use of
> LINEDISCONNECTMODE_NOANSWER.
Counter-question: does a TSP know that the call was disconnected due to an
incomplete DestAddress ?
--
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.
.
- References:
- Q: Reason for LINEDISCONNECTMODE_NOANSWER
- From: Martin Richter [MVP]
- Re: Reason for LINEDISCONNECTMODE_NOANSWER
- From: Andreas Marschall [MVP TAPI]
- Re: Reason for LINEDISCONNECTMODE_NOANSWER
- From: Martin Richter [MVP]
- Q: Reason for LINEDISCONNECTMODE_NOANSWER
- Prev by Date: Re: Panasonic KX-TDA - No event on retrieving held call
- Next by Date: Re: Panasonic KX-TDA - No event on retrieving held call
- Previous by thread: Re: Reason for LINEDISCONNECTMODE_NOANSWER
- Next by thread: Nortel - lineBlindTransfer fails with error: LINEERR_OPERATIONFAILED
- Index(es):
Relevant Pages
|