Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

TSP is not getting Started after installation

48 views
Skip to first unread message

Goms...@gmail.com

unread,
Jul 10, 2008, 8:45:49 AM7/10/08
to
Hi,
I have my own TSP. Here after installation with my switch name,
the TSP is not getting started. In the Computer Management under
Telephony Services, my TSP doesn't show any available lines. But if I
delete the provider and add it again using manage providers, then the
TSP is showing all the available lines.
I guess the problem could be because of lineInitializeEx(), a
function to be called once, to register our service provider with
TAPI.dll. But I am confused on how to call the function and when to
call the function.
Is this function be called inside the provider or the application
which uses the service provider?
Please help me out to find out the issue.

Thanks & Regards,
Gomathy

Andreas Marschall [MVP TAPI]

unread,
Jul 10, 2008, 9:27:26 AM7/10/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:c6de5529-5d13-4b9d...@k37g2000hsf.googlegroups.com...

> I have my own TSP. Here after installation with my switch name,
> the TSP is not getting started. In the Computer Management under
> Telephony Services, my TSP doesn't show any available lines. But if I
> delete the provider and add it again using manage providers, then the
> TSP is showing all the available lines.
> I guess the problem could be because of lineInitializeEx(), a
> function to be called once, to register our service provider with
> TAPI.dll. But I am confused on how to call the function and when to
> call the function.
> Is this function be called inside the provider or the application
> which uses the service provider?

Gomathy,
a TSP usually doesn't call any TAPI functions.

For installation you need to copy your .TSP file and UI.dll file (if
TUISPI_functions are not integrated in your .TSP file) to /system32/ and then
you need either add it manually via ControlPanel or programatically via
lineAddProvider().

Do you have any tracing capabilities built i n to your TSP?
If not then this highly recommended for *all* TSPI_functions.
Is TSPI_providerInstall() called during installation?
Are TSPI_providerEnumDevices() and TSPI_providerInit() called after
installation?
What do your return in their params, e.g. *lpdwNumLines etc.?

--
Best Regards
Andreas Marschall
Microsoft MVP for TAPI / Windows SDK / Visual C++
TAPI / TSP Developer and Tester
My TAPI and TSPI FAQ:
http://www.I-B-A-M.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm
My Toto® Tools (a collection of free, mostly TAPI related tools):
http://www.i-b-a-m.de/Andreas_Marschall's_Toto_Tools.htm
TAPI development around the world (Frappr! map):
http://www.frappr.com/TAPIaroundTheWorld
* 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.

Goms...@gmail.com

unread,
Jul 10, 2008, 10:25:17 AM7/10/08
to
On Jul 10, 6:27 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> <Goms.c...@gmail.com> schrieb im Newsbeitragnews:c6de5529-5d13-4b9d...@k37g2000hsf.googlegroups.com...

Hi Andreas,

My tsp file and UI.dll file is copied properly during
installation.
I have implemented TSPI_providerInstall() function but nothing is
written inside it. lineAddProvider() function is not called I guess.
But how the problem is solved when I remove and add the service
provider through control panel?
Now I found out a new issue, the lineNegotiateAPIVersion() returns an
error. This I found using a diagnostic tool we use for our
applications.
This issue is also happening only after the installation and is
resolved after adding the provider through control panel.

Gomathy

Goms...@gmail.com

unread,
Jul 10, 2008, 10:28:23 AM7/10/08
to
> Gomathy- Hide quoted text -
>
> - Show quoted text -

Just a correction, lineAddProvider is called during installation. I am
able to view my tsp in the list of providers after installation. But
the lines are not visible.

Matthias Moetje [MVP]

unread,
Jul 10, 2008, 12:59:48 PM7/10/08
to
Goms,

Computer Management >> Telephony Services is not the
right way to check your TSP and its lines.

You should install your TSP, then use TapiBrowser 2 to
check your TSP and enumerate its lines and also try to
open them.

Then restart your computer and to again and try to find out
what's different. There must be an error in your TSP.

Best regards,

Matthias Moetje
-------------------------------------
TAPI WIKI: http://www.tapi.info
-------------------------------------
TERASENS GmbH
Augustenstraße 24
80333 Munich, GERMANY
-------------------------------------
e-mail: moetje at terasens dot com
www: www.terasens.com
-------------------------------------


<Goms...@gmail.com> wrote in message
news:c6de5529-5d13-4b9d...@k37g2000hsf.googlegroups.com...

Goms...@gmail.com

unread,
Jul 11, 2008, 1:13:38 AM7/11/08
to
On Jul 10, 9:59 pm, "Matthias Moetje [MVP]"

<moetje@terasens_nospam_.de> wrote:
> Goms,
>
> Computer Management >> Telephony Services is not the
> right way to check your TSP and its lines.
>
> You should install your TSP, then use TapiBrowser 2 to
> check your TSP and enumerate its lines and also try to
> open them.
>
> Then restart your computer and to again and try to find out
> what's different. There must be an error in your TSP.
>
> Best regards,
>
> Matthias Moetje
> -------------------------------------
> TAPI WIKI:http://www.tapi.info
> -------------------------------------
> TERASENS GmbH
> Augustenstraße 24
> 80333 Munich, GERMANY
> -------------------------------------
> e-mail: moetje at terasens dot com
> www:  www.terasens.com
> -------------------------------------
>
> <Goms.c...@gmail.com> wrote in message

>
> news:c6de5529-5d13-4b9d...@k37g2000hsf.googlegroups.com...
>
>
>
> > Hi,
> >       I have my own TSP. Here after installation with my switch name,
> > the TSP is not getting started. In the Computer Management under
> > Telephony Services, my TSP doesn't show any available lines. But if I
> > delete the provider and add it again using manage providers, then the
> > TSP is showing all the available lines.
> >        I guess the problem could  be because of lineInitializeEx(), a
> > function to be called once, to register our service provider with
> > TAPI.dll. But I am confused on how to call the function and when to
> > call the function.
> >     Is this function be called inside the provider or the application
> > which uses the service provider?
> > Please help me out to find out the issue.
>
> > Thanks & Regards,
> > Gomathy- Hide quoted text -
>
> - Show quoted text -

Hi Matheas,

Thnx for ur suggestions. I tried using TB20. LineInitialize
returned Success, LineNegotiateAPIVersion returned Success,
LineNegotiateExtVersion returned LINEERR_INCOMPATIBLEAPIVERSION. Line
Open also returns the same.
What is the order to call these APIs.
My TSP is working properly after system restart.

Regards,
Gomathy

Matthias Moetje [MVP]

unread,
Jul 11, 2008, 4:16:40 PM7/11/08
to
Gomathy,

what parameters do you pass what in lineNegotiateExtVersion with TB2?

How does your TSP check the supplied version and what does
it return in TSPI_lineNegotiateExtVersion?

Best regards,

Matthias Moetje
-------------------------------------
TAPI WIKI: http://www.tapi.info
-------------------------------------
TERASENS GmbH
Augustenstraße 24
80333 Munich, GERMANY
-------------------------------------
e-mail: moetje at terasens dot com
www: www.terasens.com
-------------------------------------

<Goms...@gmail.com> wrote in message
news:38d53fd4-02be-4b0b...@k30g2000hse.googlegroups.com...

Andreas Marschall [MVP TAPI]

unread,
Jul 12, 2008, 11:45:11 AM7/12/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:ce241936-5ee2-4c25...@56g2000hsm.googlegroups.com...

> Just a correction, lineAddProvider is called during installation. I am
> able to view my tsp in the list of providers after installation. But
> the lines are not visible.

What are you exactly doing on installation?

Goms...@gmail.com

unread,
Jul 14, 2008, 2:48:24 AM7/14/08
to
On Jul 12, 8:45 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> <Goms.c...@gmail.com> schrieb im Newsbeitragnews:ce241936-5ee2-4c25...@56g2000hsm.googlegroups.com...

Hi Andreas,

My Installation is through Installshield. After some initial
settings, the TSP UI will be popped up to get the PBX IP. After that
lineAddProvider function gets called. Infact a thread has to be
started, but this thread is not getting started, as the lineOpen fails
returning LINEERR_INCOMPATIBLEAPIVERSION. How can I solve this error,
to continue further? But the problems are resolved when I restart the
PC or delete and add the provider through control panel. But even
after restarting the PC, the lineOpen API returns
LINEERR_INCOMPATIBLEAPIVERSION through T20 Browser. But the TSP works
fine with dialer application.
The above behaviour is for Win XP, and for Win Vista PC, the
warning message "One or more telephone device drivers are incompatible
with TAPI.dll. Install an updated version."

Regards,
Gomathy

Andreas Marschall [MVP TAPI]

unread,
Jul 14, 2008, 11:17:50 AM7/14/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:844fa9e6-eda1-4405...@a70g2000hsh.googlegroups.com...

> My Installation is through Installshield. After some initial
> settings, the TSP UI will be popped up to get the PBX IP. After that
> lineAddProvider function gets called. Infact a thread has to be
> started, but this thread is not getting started, as the lineOpen fails
> returning LINEERR_INCOMPATIBLEAPIVERSION. How can I solve this error,
> to continue further? But the problems are resolved when I restart the
> PC or delete and add the provider through control panel. But even
> after restarting the PC, the lineOpen API returns
> LINEERR_INCOMPATIBLEAPIVERSION through T20 Browser. But the TSP works
> fine with dialer application.
> The above behaviour is for Win XP, and for Win Vista PC, the
> warning message "One or more telephone device drivers are incompatible
> with TAPI.dll. Install an updated version."

Gomathy,
is InstallShield calling your TSP-UI prior to lineAddProvider()?
What fucntion entry point is IS calling? I guess TUISPI_providerConfig()?
That shouldn't be required.
Only thing is needs to call is lineAddProvider().
This should automatically trigger TAPISRV to call TUISPI_providerInstall(),
TUISPI_providerConfig().
Please note that only(!!!) TAPISRV is allowed to call TSPI_ or
TUISPI_functions!!!

Andreas Marschall [MVP TAPI]

unread,
Jul 14, 2008, 11:28:11 AM7/14/08
to
"Andreas Marschall [MVP TAPI]" <Andreas....@I-B-A-M.de> schrieb im
Newsbeitrag news:OqivvTc5...@TK2MSFTNGP04.phx.gbl...

> Only thing is needs to call is lineAddProvider().
> This should automatically trigger TAPISRV to call TUISPI_providerInstall(),
> TUISPI_providerConfig().

Gomathy,
some clarification:
lineAddProvider() triggers only TUISPI_providerInstall().
Within TUISPI_providerInstall() your TSP-UI needs to bring up its config
dialog on its own like it does in TUISPI_providerConfig().

Goms...@gmail.com

unread,
Jul 22, 2008, 7:32:18 AM7/22/08
to
On Jul 14, 8:28 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> "Andreas Marschall [MVP TAPI]" <Andreas.Marsch...@I-B-A-M.de> schrieb im
> Newsbeitragnews:OqivvTc5...@TK2MSFTNGP04.phx.gbl...

Hi Andreas,

Atlast I have found that, main thread goes into a loop which
does nothing... I have identified the reason for the starting of the
TSP.
But I have some problems in Vista PC. Even in Win XP, lineOpen returns
LINEERR_INCOMPATIBLEAPIVERSION, but the dialer works well.
The lineNegotiateAPIVersion returned SUCCESS
APIVersion=x10003
extID.ID0=x0, .ID1=x0, .ID2=x0, .ID3=x0,
In some Vista PC's it throws the warning message, "One or more
telephone device drivers are incompatible with TAPI.DLL. Install an
updated version."
But in some Vista PC's the warning message is not shown and windows
dialer works properly.
Can you help me in finding the reasons for the warning message and how
to enable/Disable the Warning message display in Vista PC.

Thanks & Regards,
Gomathy

Andreas Marschall [MVP TAPI]

unread,
Jul 22, 2008, 8:00:43 AM7/22/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:c4bf2d17-4fe1-42c8...@x35g2000hsb.googlegroups.com...

> But I have some problems in Vista PC. Even in Win XP, lineOpen returns
> LINEERR_INCOMPATIBLEAPIVERSION, but the dialer works well.

Gomathy,
I strongly doubt this.
If your TSPI_lineOpen() returns then LINEERR_INCOMPATIBLEAPIVERSION then the
line cannot be used.


> The lineNegotiateAPIVersion returned SUCCESS
> APIVersion=x10003
> extID.ID0=x0, .ID1=x0, .ID2=x0, .ID3=x0,

Is ypure TSPI_lineNegotiateTSPIVersion() actually returning *lpdwTSPIVersion =
0x00010003 ?
TAPI 1.3 is for 16-bit applications.
What dwLog/HighVersion does your TSP receive from TAPISRV ?

Why don't you support TAPI 2.2 ?
What does your TSP #define as TAPI_CURRENT_VERSION before #include "tspi.h" ?

Goms...@gmail.com

unread,
Jul 23, 2008, 12:14:59 AM7/23/08
to
On Jul 22, 5:00 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> <Goms.c...@gmail.com> schrieb im Newsbeitragnews:c4bf2d17-4fe1-42c8...@x35g2000hsb.googlegroups.com...

Hi,

The TSPI_lineNegotiateTSPIVersion() returns 0x00020000. But,
if((dwLowVersion > TAPI_CURRENT_VERSION) ||(dwHighVersion <
TAPI_CURRENT_VERSION)) then it returns LINEERR_INCOMPATIBLEAPIVERSION,
where TAPI_CURRENT_VERSION = 0x00020000.

Thanks & Regards,
Gomathy

Andreas Marschall [MVP TAPI]

unread,
Jul 23, 2008, 6:06:53 AM7/23/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:97b49bb0-8e6a-4933...@m73g2000hsh.googlegroups.com...

> The TSPI_lineNegotiateTSPIVersion() returns 0x00020000. But,
> if((dwLowVersion > TAPI_CURRENT_VERSION) ||(dwHighVersion <
> TAPI_CURRENT_VERSION)) then it returns LINEERR_INCOMPATIBLEAPIVERSION,
> where TAPI_CURRENT_VERSION = 0x00020000.

Gomathy,
why don't yo use TAPI_CURRENT_VERSION = 0x00020002 ?
What do you actually get for dwLowVersion / dwHighVersion ?

Goms...@gmail.com

unread,
Jul 24, 2008, 4:50:31 AM7/24/08
to
On Jul 23, 3:06 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> <Goms.c...@gmail.com> schrieb im Newsbeitragnews:97b49bb0-8e6a-4933...@m73g2000hsh.googlegroups.com...

Hi Andreas,
I will try to use TAPI version as 00020002 but do I need to
change anything for this?
the value for dwLowVersion = 10003 and dwHighVersion = 30001

Andreas Marschall [MVP TAPI]

unread,
Jul 24, 2008, 5:50:50 AM7/24/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:119218f0-29a5-4e2f...@z72g2000hsb.googlegroups.com...

> > > The TSPI_lineNegotiateTSPIVersion() returns 0x00020000. But,
> > > if((dwLowVersion > TAPI_CURRENT_VERSION) ||(dwHighVersion <
> > > TAPI_CURRENT_VERSION)) then it returns LINEERR_INCOMPATIBLEAPIVERSION,
> > > where TAPI_CURRENT_VERSION = 0x00020000.

> > why don't yo use TAPI_CURRENT_VERSION = 0x00020002 ?


> > What do you actually get for dwLowVersion / dwHighVersion ?

> I will try to use TAPI version as 00020002 but do I need to
> change anything for this?

Gomathy,
you only need to
#define TAPI_CURRENT_VERSION 0x00020002
before
#include <TSPI.H>

> the value for dwLowVersion = 10003 and dwHighVersion = 30001

That's odd!
With these values your code above shouldn't return
LINEERR_INCOMPATIBLEAPIVERSION.

Goms...@gmail.com

unread,
Jul 24, 2008, 6:01:25 AM7/24/08
to
On Jul 24, 2:50 pm, "Andreas Marschall [MVP TAPI]"
<Andreas.Marsch...@I-B-A-M.de> wrote:
> <Goms.c...@gmail.com> schrieb im Newsbeitragnews:119218f0-29a5-4e2f...@z72g2000hsb.googlegroups.com...

Hi,

LINEERR_INCOMPATIBLEAPIVERSION error doesnt come from
lineNegotiateAPIVersion. LineOpen() returns this error. I have tried
calling LineGetDevCaps() also... This function also returns line
incompatibility error. But when I try OpenLines it returns something
like this,

lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
lineOpen returned SUCCESS
lineOpen returned SUCCESS
lineOpen returned LINEERR_OPERATIONUNAVAIL
lineOpen returned SUCCESS
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE
lineOpen returned LINEERR_NODEVICE

the function succeeds for some lines... I couldnt understand this
return values.

Meanwhile I will try with 20002 as the current version of tAPI

Andreas Marschall [MVP TAPI]

unread,
Jul 25, 2008, 5:30:50 AM7/25/08
to
<Goms...@gmail.com> schrieb im Newsbeitrag
news:bca59b46-38a8-4104...@j22g2000hsf.googlegroups.com...

> LINEERR_INCOMPATIBLEAPIVERSION error doesnt come from
> lineNegotiateAPIVersion. LineOpen() returns this error. I have tried
> calling LineGetDevCaps() also... This function also returns line
> incompatibility error. But when I try OpenLines it returns something
> like this,
>
> lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
> lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
> lineOpen returned LINEERR_INCOMPATIBLEAPIVERSION
> lineOpen returned SUCCESS
> lineOpen returned SUCCESS
> lineOpen returned LINEERR_OPERATIONUNAVAIL
> lineOpen returned SUCCESS
> lineOpen returned LINEERR_NODEVICE
> lineOpen returned LINEERR_NODEVICE

> the function succeeds for some lines... I couldnt understand this
> return values.

Gomathy,
I guess your TSP does only provide one line device?
Then you should only open this line device.
It seems that you try to open all line devices regardless what TSP they are
associated with.
See my TAPI and TSPI FAQ:
Q: Which TSP is hosting a given line device ?
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_Which_TSP

Regarding LINEERR_NODEVICE: this is returned if the device has been removed,
either dynamically by TSP or because the TSP itself has been removed.
If you reboot or just restart TAPISRV (net stop tapisrv) then these devices
will gone.

0 new messages