IE7 DownloadToto® Tools LogoAndreas Marschall’s TAPI and TSPI FAQ

 

 

 


MVP LogoAndreas Marschall is a TAPI / TSP Developer and Tester since 1997.
His contribution to the TAPI newsgroups has been recognized by Microsoft® with MVP Awards for TAPI / Windows® SDK in 2003, 2004, 2005, and 2006.

He received the Microsoft® 2004 Windows MVP ‘Winny’ Award in the category ‘Developer’ at the 2004 MVP Global Summit in Redmond / Seattle, WA, USA.

See his MVP Profile (incl. Biography Abstract, Publications, Conferences, etc.).

He attended the last TAPI Bake-Off in Nice, France, in July 2000.

Created:        2003-08-12

Last Update: 2007-05-08   01:07:19    (see History of Change and Web-Statistics)

XML / RSS 2.0 Feed for the History of Change from Andreas Marschall's TAPI and TSPI FAQ Feed for Update Notifications available.

Copyright © 2003-2007 by I-B-A-M®. All rights reserved.

 

Comments on this TAPI and TSPI FAQ are welcome: please send them to TAPI.FAQ@I-B-A-M.de

Please don’t send your TAPI questions by email!!!  Please post all TAPI related questions / discussions in the TAPI newsgroup so all may benefit from the discussion.

 

disclaimer All opinions expressed on this page are my own. This page is provided "AS IS" with no warranties, and confers no rights.

Microsoft, MSDN, Visual Basic, Visual Studio, Windows NT and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Other product or company names mentioned on this page may be the trademarks of their respective owners.

See also the Additional legal disclaimer in German language.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection


Check out our Frappr!Frappr! Group TAPI around the World



 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection


Table of Contents

Andreas Marschall’s TAPI and TSPI FAQ

Frappr! Group TAPI around the World

Table of Contents

Frequently Asked Questions (FAQ)

General

TAPI2

TAPI3

MSPI

TSPI

TAPI Newsgroups

TAPI Browser

TAPI 1.x: TB13.exe, TB14.exe

TAPI 2.x: TB20.exe

TAPI 3.x: TB3x.exe

Test Tools for TAPI

Microsoft®

I-B-A-M®

JulMar Technology

ExceleTel

Grant Schenck Software

Chris Sells

Sample Code

Microsoft® Platform SDK

MSDN® Library

Microsoft® Knowledge Base Articles

JulMar Technology

I-B-A-M®

Alex. C. Punnen

TAPI2 / TAPI3 / TSPI Documentation / Specification

MSDN® Library online

MSDN® Library CD

Microsoft® Platform SDK

Microsoft® Knowledge Base

Downloads

Microsoft® FTP Site for TAPI Developers

Microsoft® Platform SDK

I-B-A-M®

JulMar Technology

ExceleTel

Siemens

GotDotNet User Sample

Itel Office

Grant Schenck Software

Alex. C. Punnen

Robert Bamberg

Chris Sells

Books

Windows Telephony Programming : A Developer’s Guide to TAPI

MAPI, SAPI, & TAPI : Developer’s Guide

Computer Telephony Demystified

Other TAPI Experts with TAPI Sites and FAQs

Michael Dunn

Matthias Moetje

Bruce Pennypacker

Grant Schenck

ExceleTel

JulMar Technology

TAPI Problems, Fixes, and KB Articles

Known Problems and Fixes

Reporting Problems

Knowledge Base Articles

Miscellaneous Q&A

General

TAPI2

TAPI3

MSPI

TSPI

Abbreviations / Glossary

History of Change

Web-Statistics

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection


Frequently Asked Questions (FAQ)

General

·       Q: What is TAPI ?

·       Q: What newsgroups are covering TAPI ?

·       Q: Are there any guidelines for newsgroup postings ?

·       Q: Where do I find documentation / specifications on TAPI / TSPI ?

·       Q: Are there any good books on TAPI or CTI (computer telephony integration) available ?

·       Q: Where can I download TAPI Browser ?

·       Q: Where can I download TAPI related stuff ?

·       Q: Are there any Tools for TAPI available ?

·       Q: Is there any sample code available ?

·       Q: What can I do if I get compiler / linker errors (like undeclared identifier (C2065) or unresolved external symbol (LNK2001)) ?

·       Q: Where are TAPI errors codes defined ?

·       Q: Is there a TAPI trace available ?

·       Q: Are there any known TAPI problems and fixes available ?

·       Q: How and where do I report TAPI problems ?

·       Q: Are there any KB articles on TAPI available ?

·       Q: Is IP Telephony supported by TAPI ?

·       Q: Is Fax supported by TAPI ?

·       Q: What is the difference between the 1st party and the 3rd party model ?

·       Q: What is the Microsoft® TAPI client / server architecture ?

·       Q: How can I track a call when it is moving from device to device ?

·       Q: What is the difference between Canonical Addresses and Dialable Addresses ?

·       Q: What does this abbreviation stand for / Is there a glossary available ?

·       Q: Are there other TAPI sites and FAQs available ?

TAPI2

·       Q: What is TAPI 2.x ?

·       Q: What operating systems do support TAPI 2.x ?

·       Q: Is there a user guide available for TAPI Browser TB20 ?

·       Q: How is do-not-disturb (DND) represented in a LINEFORWARD structure (used with lineForward and LINEADDRESSSTATUS) ?

·       Q: How do I use lineForward (how to set LINEFORWARDLIST, LINEFORWARD structures) ?

·       Q: How do I transfer a call with TAPI2 ?

·       Q: How do I make a conference with TAPI2 ?

·       Q: How do I partially dial with TAPI2 ?

·       Q: Is there something special with asynchronous functions in TAPI2 ?

·       Q: How do I use LINECALLPRIVILEGE_ Constants in TAPI2 ?

·       Q: Are there any .NET wrappers for TAPI2 available ?

TAPI3

·       Q: What is TAPI 3.x ?

·       Q: Is there a user guide available for TAPI Browser TB3x ?

·       Q: How do I enable events (put_EventFilter, RegisterCallNotifications) in TAPI Browser TB3x ?

·       Q: How can I log to file a TAPI Browser TB3x session ?

·       Q: Where is the log file of TAPI Browser TB3x located ?

·       Q: What is the difference between TAPI 3.0 and 3.1 ?

·       Q: Is there a TAPI 2.x to TAPI 3.x Cross-Reference ?

·       Q: Has TAPI3 any advantages over TAPI2 ?

·       Q: Has TAPI3 any disadvantages over TAPI2 ?

·       Q: How do I initialize TAPI with TAPI3 ?

·       Q: How do I select an address with TAPI3 ?

·       Q: How do I register events with TAPI3 ?

·       Q: How do I select a terminal with TAPI3 ?

·       Q: How do I make a call with TAPI3 ?

·       Q: How do I receive a call with TAPI3 ?

·       Q: How do I create a simple conference with TAPI3 ?

·       Q: How do I transfer a call with TAPI3 ?

·       Q: How do I redirect a call with TAPI3 ?

·       Q: What Libraries (.LIB files) do I need to build TAPI3 applications ?

·       Q: How do I use fMonitor / fOwner in ITTAPI::RegisterCallNotifications in TAPI3 ?

MSPI

·       Q: What is a MSP ?

·       Q: What MSPs are available ?

·       Q: Is there a MSP with sample code available ?

·       Q: Is there a MSP for full-duplex support with UniModem TSP available ?

TSPI

·       Q: What are TAPI Service Providers ?

·       Q: What is a TSP ?

·       Q: What TSPs are installed on my system ?

·       Q: What TSPs are available ?

·       Q: What about H323.TSP and IPconf.TSP in Windows® VistaTM ?

·       Q: What is RemoteSP.TSP ?

·       Q: What is the ModemLog ?

·       Q: Are there specific TSPs for TAPI2 and TAPI3 ?

·       Q: Is there a TSP with sample code available ?

·       Q: How can I debug a TSP ?

·       Q: Is there a user guide available for Economical Service Provider (ESP32)?

·       Q: How can I stop Telephony Service ?

·       Q: How can I stop TAPISRV process (if Telephony Service is not responding in Service Control Manager) ?

·       Q: Which process is hosting TAPISRV ?

·       Q: How can I run TAPISRV exclusively in a svchost process ?

·       Q: How do I get the dwPermanentProviderID of the TSP for a given line device ?

·       Q: Which TSP is hosting a given line device ?

·       Q: How can I popup a MessageBox from a TSP ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



TAPI Newsgroups

Q: What newsgroups are covering TAPI ?

A: TAPI related newsgroups on Microsoft® news server msnews.microsoft.com: (no registration required)

This is the main newsgroup that should be used for all TAPI related discussions:

 

·       news://msnews.microsoft.com/microsoft.public.win32.programmer.tapi

 

The following additional newsgroups are not frequently used any longer.

To keep all TAPI related discussions in one place these groups should not be used anymore.

·       news://msnews.microsoft.com/microsoft.public.win32.programmer.tapi.beta

·       news://msnews.microsoft.com/microsoft.public.platformsdk.telephony.tapi_2  

·       news://msnews.microsoft.com/microsoft.public.platformsdk.telephony.tapi_3

·       news://msnews.microsoft.com/microsoft.public.platformsdk.telephony.tsp

·       news://msnews.microsoft.com/microsoft.public.platformsdk.telephony.wte

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: TAPI related newsgroups via MSDN® Web-Based Newsgroup Client: (no registration required)

Newsgroup microsoft.public.win32.programmer.tapi is also available via MSDN® Newsgroups:

·       http://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.win32.programmer.tapi

and via MSDN® Managed Newsgroups:

·       http://msdn.microsoft.com/newsgroups/managed/default.aspx?dg=microsoft.public.win32.programmer.tapi

MSDN® includes free and unlimited newsgroup support for select technologies for all MSDN® Universal, Enterprise, Professional and Operating System Subscribers.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: TAPI related newsgroups via Microsoft® Research Netscan: (no registration required)

All microsoft.public.* newsgroups are available at Microsoft® Research Netscan/Tech with daily updates / reports.

The NG Report (incl. Time Series Chart, Report Card, Thread Tracker, and Author Tracker) for microsoft.public.win32.programmer.tapi is available here:

·       http://netscan.research.microsoft.com/Tech/reportcard.aspx?tp=14&ng=microsoft.public.win32.programmer.tapi&sd=

All postings from Andreas Marschall in the (public) Microsoft® newsgroups can be found via these profiles:

·       http://netscan.research.microsoft.com/Tech/author/profile.aspx?auth=Andreas.Marschall%40I-B-A-M.de

·       http://netscan.research.microsoft.com/Tech/author/profile.aspx?auth=andreas.marschall%40arcormail.de

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: TAPI related newsgroups via GoogleTM groups: (no registration required)

All postings from Andreas Marschall in the (public) Microsoft® newsgroups can be found by a search at GoogleTM groups:

·       search groups.google.com for: group:microsoft* author:Andreas author:Marschall

·       search groups.google.com for: group:microsoft* author:MarschallA

The Microsoft® newsgroups mentioned above are mirrored and archived at GoogleTM groups:

·       GoogleTM groups: microsoft.public.win32.programmer.tapi

·       GoogleTM groups: microsoft.public.win32.programmer.tapi.beta

·       GoogleTM groups: microsoft.public.platformsdk.telephony.tapi_2

·       GoogleTM groups: microsoft.public.platformsdk.telephony.tapi_3

·       GoogleTM groups: microsoft.public.platformsdk.telephony.tsp

·       GoogleTM groups: microsoft.public.platformsdk.telephony.wte

The Microsoft® newsgroups mentioned above have an “About” page (incl. statistics on top posters etc.) at GoogleTM groups:

·       GoogleTM groups: About microsoft.public.win32.programmer.tapi

The Microsoft® newsgroups mentioned above have Atom feeds (100 New topics, 100 New messages) at GoogleTM groups:

·       GoogleTM groups: Atom feed 100 New topics microsoft.public.win32.programmer.tapi GoogleTM groups: Atom feed 100 New topics microsoft.public.win32.programmer.tapi

·       GoogleTM groups: Atom feed 100 New messages microsoft.public.win32.programmer.tapi GoogleTM groups: Atom feed 100 New messages microsoft.public.win32.programmer.tapi

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: TAPI related newsgroups via tech-archive.net: (no registration required)

Newsgroup microsoft.public.win32.programmer.tapi is mirrored and archived (history of about 1½ years) at tech-archive.net:

·       http://www.tech-archive.net/Archive/Development/microsoft.public.win32.programmer.tapi/

There exists an XML / RSS Feed for automatic notifications about new postings Feed from tech-archive.net to be automatically notified about new postings.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: TAPI related Yahoo! groups: (free registration required)

The following Yahoo! groups requires group membership:

·       Yahoo! groups: TAPI- Telephone Application Programming Interface

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: partially TAPI related ExceleTel newsgroups: (no registration required)

This newsgroup isn’t directly related to TAPI but to ExceleTel TeleTools that encapsulates TAPI:

·       news://news.exceletel.com/exceletel.public.teletools

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: partially TAPI related TERASENS newsgroups: (no registration required)

These newsgroups aren’t directly related to TAPI but to TERASENS TERAVoice Server that encapsulates TAPI.

They are available both in English and German.

They are available both via HTTP:

·       http://www.terasens.com/support/newsgroups/ShowGroup.aspx?Group=terasens.public.en.teravoice.general

·       http://www.terasens.com/support/newsgroups/ShowGroup.aspx?Group=terasens.public.en.teravoice.development

·       http://www.terasens.com/support/newsgroups/ShowGroup.aspx?Group=terasens.public.de.teravoice.allgemein

·       http://www.terasens.com/support/newsgroups/ShowGroup.aspx?Group=terasens.public.de.teravoice.entwicklung

and NNTP:

·       news://news.terasens.de/terasens.public.en.teravoice.general

·       news://news.terasens.de/terasens.public.en.teravoice.development

·       news://news.terasens.de/terasens.public.de.teravoice.allgemein

·       news://news.terasens.de/terasens.public.de.teravoice.entwicklung

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


A: partially TAPI related Mediatel Data USA forums: (free registration required)

These forums aren’t directly related to TAPI but to CTI development with Intel® / Dialogic® boards:

·       CTI Development with Dialogic using R4 and other tools

·       CTI Development with Dialogic using the PBVoice Toolkit

·       Mastering Computer Telephony Integration Using Intel Communication System Products 

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: Are there any guidelines for newsgroup postings ?

A: Yes, see the following tips:

·       No multi-posting!!! If you post the same message to several newsgoups don't multi-post (send it several times) but cross-post (send it one time with all the newsgroups separated by comma) it.

·       No excessive cross-posting!!! Post your message only to one or maximum to very few newsgroups. Make sure your posting is on-topic to all of the selected newsgroups.

·       It is recommended to post TAPI questions only to the managed TAPI newsgroup: microsoft.public.win32.programmer.tapi

·       Choose a descriptive subject / topic for your posting! (E.g. „How to lineGetID() in TAPI 3.x ?“). Don’t use irrelevant additions like „Please help“ or „Urgent“ (it may have the opposite effect).

·       see Guidelines for Microsoft® community Web sites about e.g. Relevance to Topics

·       see Q: Is there a user guide available for TAPI Browser TB20 ? about how to attach a TB20.log to a posting

·       see Q: Is there a user guide available for TAPI Browser TB3x ? about how to attach a TB3x log to a posting

·       include information about the TAPI version (TAPI2 / TAPI3) you are using, or whether your questions is about TSPI / MSPI

·       include information about the device(s) / TSP(s) you are using

·       include information about the operating system (and service pack) you are using

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



TAPI Browser

Q: Where can I download TAPI Browser TBxx.exe ?

A: Several versions TAPI Browsers can be downloaded as ZIP files from:

·       ftp://ftp.microsoft.com/developr/TAPI/

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


TAPI 1.x: TB13.exe, TB14.exe

These TAPI Browsers for TAPI 1.3 / 1.4 are obsolete. TAPI 1.x can be done with TAPI Browser TB20 .

Link to ZIP files:

·       ftp://ftp.microsoft.com/developr/TAPI/tb13.zip

·       ftp://ftp.microsoft.com/developr/TAPI/tb14.zip

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


TAPI 2.x: TB20.exe

Link to ZIP file:

·       ftp://ftp.microsoft.com/developr/TAPI/tb20.zip  

Q: Is there a user guide available for TAPI Browser TB20 ?

A: These steps may help you getting started:

·       Take a look at the TB20 Online Help first (Menu Help -> Using TB…)

·       Note that the “LAp+” button is associated with lineInitialize and not lineInitializeEx, and therefore allows you to negotiate up to TAPI 1.4 only (you need to call lineInitializeEx from the left pane to be able to negotiate TAPI 2.x)

·       A double left click on a handle in the middle pane invokes automatically the corresponding functions to get capabilities and status: e.g. hLine -> lineGetDevCaps / lineGetLineDevStatus, hCall -> lineGetCallInfo / lineGetCallStatus

·       Activate Menu Options -> Log parameters to add the function arguments to the TB.log (this option has to be enabled each time you start TAPI Browser)

·       Activate Menu Options -> Show time stamps to add the time to the TB.log when functions are invoked / return and messages are received (this option is saved as setting (s.b.) so it hasn’t to be enabled each time you start TAPI Browser)

·       Activate Menu Options -> Auto-deallocate idle monitored calls, so you don’t have to lineDeallocateCall on each idle call handle manually (this option is saved as setting (s.b.) so it hasn’t to be enabled each time you start TAPI Browser)

·       Activate Menu Options -> Auto-deallocate idle owned calls, so you don’t have to lineDeallocateCall on each idle call handle manually (this option is saved as setting (s.b.) so it hasn’t to be enabled each time you start TAPI Browser)

·       The default values and other settings (s.a.) are stored in %SystemRoot%\WIN.INI in section [Tapi Browser]

·       When you attach a TB.log to a posting to the TAPI newsgroups make sure the TB.log includes to whole session beginning with lineIntialize(Ex) and activate Log parameters / Show time stamps (s.a.)

·       To be continued …

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


TAPI 3.x: TB3x.exe

Link to ZIP file:

·       ftp://ftp.microsoft.com/developr/TAPI/Tb3x.zip  

Q: Is there a user guide available for TAPI Browser TB3x ?

A: These steps may help you getting started:

·       As starting point for all TAPI activities within TB3x you have to call IITAPI::Initialize as follows:

1)     start TB3x.exe

2)     expand tree "coclass TAPI" -> you see "ITTAPI", "ITTAPICallCenter"

3)     double left click on "ITTAPI" > you see "ITTAPI_1" in the middle pane

4)     single left click on "ITTAPI_1" -> you see expanded tree "Microsoft TAPI 3.0 Type Library->Interfaces->IITAPI”::methods in the left pane

5)     double left click on "m Initialize"

·       To get a cookie (AdviseEventNotification) from an ITTAPI object (e.g. ITTAPI_1) single right click on "ITTAPI_1” and select “Advise” from the context menu

·       To QueryInterface a TAPI object (ITTAPI_1, ITAddress_1, etc.) single right click on the object in the middle pane and select “QueryInterface” from the context menu

·       see Q: How do I enable events (put_EventFilter, RegisterCallNotifications) in TAPI Browser TB3x ?

·       see Q: How can I log to file a TAPI Browser TB3x session ?

·       see Q: Where is the log file of TAPI Browser TB3x located ?

·       TAPI 3.1 support: on Windows® XP and Windows® Server 2003 and later TB3x offers full TAPI 3.1 support (all ITxxx2 interfaces availbale) but reports only "Microsoft TAPI 3.0 Type Library” in the left pane. Don’t be confused by this.

·       To be continued …

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: How do I enable events (put_EventFilter, RegisterCallNotifications) in TAPI Browser TB3x ?

A: See the necessary steps from a TB3x.log:

·        Before ITTAPI::RegisterCallNotifications you need to ITTAPI::put_EventFilter

·        In addition you should use a cookie from ITTAPI::AdviseEventNotification (IConnectionPoint::Advise) as lCallbackInstance when calling ITTAPI::RegisterCallNotifications

·        This sample enables all events (FilterMask) and registers call notification with privileges Monitor and Owner for media type Audio for the first ITAddress


ITTAPI.CreateInstance  ITTAPI_1
returned hr = 0x00000000

ITTAPI_1.Initialize  returned hr = 0x00000000

ITTAPI_1.EnumerateAddresses  returned hr = 0x00000000
IEnumAddress_1

IEnumAddress_1.Next  ITAddress_1
returned hr = 0x00000000

ITTAPI_1.AdviseEventNotification  returned hr = 0x00000000
cookie 13236868

ITTAPI_1.put_EventFilter
long plFilterMask : 131071 (0x0001ffff)
returned hr = 0x00000000

ITTAPI_1.RegisterCallNotifications
ITAddress* pAddress : ITAddress_1
VARIANT_BOOL fMonitor : 1
VARIANT_BOOL fOwner : 1
long lMediaTypes : 8 (0x00000008)
long lCallbackInstance : 13236868 (0x00c9fa84)
returned hr = 0x00000000
long* plRegister = 13829509 (0x00d30585)

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: How can I log to file a TAPI Browser TB3x session ?

A: Select “Save Log” from the “Optionsmenu of TAPI Browser TB3x.

Note:

·        It is sufficient to enable logging just before you close TAPI Browser TB3x.exe

·        All output in the lower right pane will be logged to file

·       On start of  TAPI Browser TB3x.exe file logging is disabled (this default can’t be changed)

·       Older log file will be overwritten

·        See also Q: Where is the log file of TAPI Browser TB3x located ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: Where is the log file of TAPI Browser TB3x located ?

A: It is named TB3xLogFile.rtf and located in the same directory as TAPI Browser TB3x.

Note:

·        The file will not be written until closing TAPI Browser TB3x.exe

·        See also Q: How can I log to file a TAPI Browser TB3x session ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Test Tools for TAPI

Q: Are there any Tools for TAPI available ?

A: Yes, see the links in the following list:

Microsoft®

·        Microsoft® TAPI Browsers for TAPI 1.x, 2.x, and 3.x is an application that allows a user to interactively call into the Windows Telephony interface and inspect all returned information.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Toto® Tools LogoI-B-A-M®

·        Toto® Tool TAPI_Error_Codes is a tool to dump all TAPI 1.x, 2.x, and 3.x error codes: LINEERR_, PHONEERR_, and TAPI_E_ Constants (error descriptions are available in local OS language) (see Q: Where are TAPI errors codes defined ?)

·        Toto® Tool TAPI_ListCaps is a tool to dump all TAPI line and phone devices with device ID and some device info

·        Toto® Tool TAPI_GetCaps is a tool to dump the capabilities of all TAPI line and phone devices (incl. complete hex dump / ASCII representation)

·        Toto® Tool TAPIex is a tool to display and change the svchost settings for tapisrv (see Q: How can I run TAPISRV exclusively in a svchost process ?)

·        Toto® Tool consoleTapiRequestMakeCall is a tool to tapiRequestMakeCall from console

·        Toto® Tool WaveDevice is a tool to dump the capabilities of all available wave/in and wave/out devices

·        Toto® Tool AtNow is a tool to run a job via Task Scheduler service interactively within the next minute (default job is taskmgr; usefull to stop a non responding Telephony Service, see Q: How can I stop TAPISRV process (if Telephony Service is not responding in Service Control Manager) ?)

·        XML / RSS 2.0 Feed for the History of Change from Andreas Marschall's Toto® Tools Feed for Update Notifications on Toto® Tools available

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


JulMar Technology

·       JulMar PHONE is a sample TAPI application which tests various aspects of TAPI.  It can open multiple lines and provides support for agent features if connected to a TAPI 2.1 or 3.x service provider.

·       JulMar ENUMTAPI enumerates through all the TAPI lines in the system and dumps various information structures from them.

·       JulMar TCMON opens all lines and monitors all call traffic across all lines, showing calls in a report-view control.  It allows for system-wide monitoring and is especially useful in the 3rd party environment running on the server.

·       JulMar ANSWER answers inbound calls and demonstrates how to manipulate an inbound call using the ATAPI library. It allows the inbound call to be accepted, answered and dropped.

·       JulMar AGENTMON allows you to monitor agent positions and (if the provider supports it) to change the agent state and groups.  It is primarily for 3rd party TAPI.

·       JulMar ROUTETEST tests the lineRedirect features of a service provider and allows for automated routing for incoming calls.  It is primarily for 3rd party TAPI (2.0+).

·       JulMar MAKEDROP demontrates how to place outgoing calls using the ATAPI library.

·       JulMar DROPALL immediately drops inbound calls when they hit a configured call state. It can optionally accept and/or answer the call.

·       JulMar MONITOR shows the current line/address state for any available line in a dialog panel.

·       JulMar DBGLEVEL is a tool for changing the debug level of TSPs built with JulMar's TSP++ toolkit but can adjust the debug level of the TAPI system components as well.

·       JulMar Start Tapi forces TAPI to load and stay running until you tell it to shutdown. This is useful to force TAPI to start and stop through a batch file when running under Windows 95/98/ME.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


ExceleTel

·       ExceleTel TeleScope allows you to monitor and control a TAPI-compliant telephony device through a graphical user interface. Every event and change of state is logged using the event, method and property names of the TeleTools development environment.  You have complete control over your line device, phone device and audio files.

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Grant Schenck Software

·       Grant Schenck’s DBWin32, the debug and trace message output capture and display utility for Windows NT, Win2K, XP, ME, '95 and '98!

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 


Chris Sells

·       Chris Sells’ TAPI Explorer (tExplorer) allows to understand the various capabilities of the telephony devices installed on a system

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Sample Code

Q: Is there any sample code available ?

A: Yes, see the links in the following sections:

Microsoft® Platform SDK

The Core SDK from Windows® SDK (s. Platform SDK) contains several samples for TAPI 2.x and TAPI 3.x and TSPI.

The TSP and  TAPI2 samples are all written in C. TAPI3 samples are available in C++, VB, VBScript and Java.

Currently the following samples (full programs) are available: (directory names)

·        \NetDS\Tapi\Tapi2\Dialer

·        \NetDS\Tapi\Tapi2\TapiComm

·        \NetDS\Tapi\Tapi2\Atsp32

·        \NetDS\Tapi\Tapi3\Cpp\Msp\SampleMSP

·        \NetDS\Tapi\Tapi3\Cpp\Msp\MSPBase

·        \NetDS\Tapi\Tapi3\Cpp\Acd\AcdProxy

·        \NetDS\Tapi\Tapi3\Cpp\Acd\acdclient

·        \NetDS\Tapi\Tapi3\Cpp\Outgoing

·        \NetDS\Tapi\Tapi3\Cpp\Incoming

·        \NetDS\Tapi\Tapi3\Cpp\AnsMach

·        \NetDS\Tapi\Tapi3\Cpp\pluggable

·        \NetDS\Tapi\Tapi3\Cpp\tapisend

·        \NetDS\Tapi\Tapi3\Cpp\tapirecv

·        \NetDS\Tapi\Tapi3\Cpp\FileTerm

·        \NetDS\Tapi\Tapi3\Cpp\Rend

·        \NetDS\Tapi\Tapi3\VB\Outgoing

·        \NetDS\Tapi\Tapi3\VB\Incoming

·        \NetDS\Tapi\Tapi3\VB\dtmf

·        \NetDS\Tapi\Tapi3\VB\USBPhone

·        \NetDS\Tapi\Tapi3\VB\CallHub

·        \NetDS\Tapi\Tapi3\VBScript

·        \NetDS\Tapi\Tapi3\Java\jt3rec

·        \NetDS\Tapi\Tapi3\Java\jt3Conf

·       \NetDS\Tapi\Tapi3\Java\jt3Call

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


MSDN® Library

The following code snippets briefly illustrate some basic operations. The snippets are written in C++ and VB.

·       See MSDN® Library online: tapi3/initialize_tapi

·       See MSDN® Library online: tapi3/select_an_address

·       See MSDN® Library online: tapi3/register_events

·       See MSDN® Library online: tapi3/select_a_terminal

·       See MSDN® Library online: tapi3/make_a_call

·       See MSDN® Library online: tapi3/receive_a_call

·       See MSDN® Library online: tapi3/create_a_simple_conference

·       See MSDN® Library online: tapi/tapi3/transfer_a_call

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Microsoft® Knowledge Base Articles

The following KB articles contain TAPI related sample code or code snippets.

·       238479 - SAMPLE: RasBaud.exe Obtains the Baud Rate of an Existing RAS Connection Programmatically

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


JulMar Technology

JulMar Technology offers

·       SDK for TSP development: there is a commercial version and an open source version of their TSP++

·       Sample TAPI Testing Applications with open source

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


I-B-A-M®

See code snippets / pseudo code:

·       Q: How do I use lineForward (how to set LINEFORWARDLIST, LINEFORWARD structures) ?

·       Q: How do I transfer a call with TAPI2 ?

·       Q: How do I make a conference with TAPI2 ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection


Alex. C. Punnen

Alex. C. Punnen offers

·       source of the application he wrote for an Interactive Voice Response System

 

Go to top of page                  Go to Table of Contents                         Go to FAQ



TAPI2 / TAPI3 / TSPI Documentation / Specification

Q: Where do I find documentation / specifications on TAPI / TSPI ?

A: See the following links:

MSDN® Library online

MSDN® Library online Home page

MSDN® Library online TAPI

MSDN® Library CD

The MSDN® Library CDs can be subscribed:

MSDN® Subscription Levels

Microsoft® Platform SDK

The Core SDK from Windows® SDK (s. Platform SDK) contains a Compiled HTML Help file named TAPI.CHM.

Microsoft® Knowledge Base

See Q: Are there any KB articles on TAPI available ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Downloads

Q: Where can I download TAPI related stuff ?

A: See the links in the following sections: (this list is not complete)

Microsoft® FTP Site for TAPI Developers

ftp://ftp.microsoft.com/developr/TAPI/

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Microsoft® Platform SDK

Update and component installation: <= 200 MB !!!

http://www.microsoft.com/msdownload/platformsdk/sdkupdate/

What you need for TAPI developing is the Core SDK from Windows® SDK.

 

Full Download with Local Install: >300 MB !!!

http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm

 

Order CD:

from USA / Canada

from other Countries

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Toto® Tools LogoI-B-A-M®

I-B-A-M® offers Andreas Marschall’s Toto® Tools, a collection of free, mostly TAPI related tools:

·       Toto® Tools for General Purpose (AtNow, CycleRun, IncrementalOpenWebPage)

·       Toto® Tools for TAPI (TAPI_Error_Codes, TAPI_ListCaps, TAPI_GetCaps, TAPIex, consoleTapiRequestMakeCall)

·       Toto® Tools for Networking (GetIfEntry, GetAdaptersInfo, MAC_NetBIOS, SYNCsend)

·       Toto® Tools for Media (WaveDevice)

·       XML / RSS 2.0 Feed for the History of Change from Andreas Marschall's Toto® Tools Feed for Update Notifications on Toto® Tools available

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


JulMar Technology

JulMar Technology offers a SDK for TSP development and sample, trial or free software tools and a FAQ:

·       TSP++TM SDK (commercial version)

·       Samples (open source version of TSP++TM, Sample TAPI Testing Applications, and TAPI Application class library)

·       FAQ about TSP++TM

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


ExceleTel

ExceleTel offers a SDK for TAPI development, a TAPI diagnostic, testing and operation utility, TAPI sample programs, a newsgroup and a FAQ:

·       TeleTools

·       TeleScope

·       Sample Programs

·       news://news.exceletel.com/exceletel.public.teletools

·       FAQ about Telephony, TAPI and ExceleTel products

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Siemens

Siemens HiPath offers a Downloads website with:

·       Software

·       Data Sheets

·       Administration Guides

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


GotDotNet User Sample

Helen Warn offers her C# Wrapper for TAPI2:

·       www.gotdotnet.com

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Itel Office

Angus Comber from Itel Office offers a COM control for TAPI:

·       Cuba control

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Grant Schenck Software

Grant Schenck Software offers a Powerpoint presentation and a OutputDebugString capture utility for Windows:

·       TAPI Course notes

·       DBWin32 Version 2.2

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Alex. C. Punnen

Alex. C. Punnen offers

·       source of the application he wrote for an Interactive Voice Response System

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Robert Bamberg

Robert Bamberg offers

·       Source Code of Chris Sells’ book "Windows Telephony Programming : A Developer’s Guide to TAPI" incl. the Telephony Framework “TFX” (see Q: Are there any good books on TAPI or CTI (computer telephony integration) available ?)

·       Free CallerId Application version 1.0

·       EZTapiAPI SDK version 1.0

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 


Chris Sells

Chris Sells offers

·       TAPI Explorer (tExplorer) including VS.NET and VC6 source code

·       a book about TAPI (see Q: Are there any good books on TAPI or CTI (computer telephony integration) available ?)

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Books

Q: Are there any good books on TAPI or CTI (computer telephony integration) available ?

A: Yes, see the following links:

Windows Telephony Programming : A Developer’s Guide to TAPI

First printing, July 1998
Chris Sells
Addison-Wesley, ISBN 0-201-63450-3

(see Robert Bamberg for corresponding source code)

MAPI, SAPI, & TAPI : Developer’s Guide

First edition, 1996
Michael Amundsen
Sams Publishing, ISBN 0-672-30928-9

Computer Telephony Demystified

Putting CTI, Media Services, and IP Telephony to Work
First printing, 2001
Michael Bayer
McGraw-Hill, ISBN 0-07-135987-7

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Other TAPI Experts with TAPI Sites and FAQs

Q: Are there other TAPI sites and FAQs available ?

A: Yes, see the following links: (last names in alphabetical order)

Michael Dunn

http://www.rainyjay.com/tapi/tapi.htm

Matthias Moetje

http://www.tapi.info/

http://www.terasens.com/products/teravoice/hardware.aspx

Bruce Pennypacker

http://tapifaq.pennypacker.org/

Grant Schenck

http://grantschenck.tripod.com/

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


ExceleTel

FAQ about Telephony, TAPI and ExceleTel products

JulMar Technology

FAQ about TSP++TM

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



TAPI Problems, Fixes, and KB Articles

Known Problems and Fixes

Q: Are there any known TAPI problems and fixes available ?

A: Yes, see the following list:

·       Search the Knowledge Base (Support and Troubleshooting) for "TAPI" OR "Telephony"

·       For other info (no confirmed problems, but INFO, PRB, HOW TO, SAMPLE, White Paper etc.) see Q: Are there any KB articles on TAPI available ?

The following KB articles are related to Windows® 2000, Windows® XP, Windows® Server 2003, and/or Windows® VistaTM (older OS are not covered in this list). All following KB articles have this status: “Microsoft has confirmed that this is a problem”. Use QuickInfo on the links (move your mouse pointer on the link and wait about a second) to see the beginning of the symptoms section of the article:

·       246152 - BUG: SDP Cannot Support Languages Other Than the System Default

·       262290 - Deadlock in TAPI Service If the Provider Is Not Re-entrant

·       269822 - Caller ID and Called ID Do Not Display Correctly with TAPI 3.0

·       271178 - "ITCallInfo::put_CallInfoLong" Property on a TAPI 3 Call Causes "Not Supported" Error

·       278035 - VBScript CreateObject Method Creates TAPI Objects in HTML Without Any Security Warning Message

·       278718 - Error Message If You Do Not Disconnect from a Phone Call Before You Restart Your Computer

·       280319 - Error message when upgrading computer that runs Internet Locator service

·       295385 - TAPI Enters an Infinite Loop State and Does Not Signal an Event That Is Expected by a Program

·       302909 - TAPI Error 0x80000022 Occurs When the System Locale is English (Canada) or French (Canada)

·       308405 - TAPI Is Not Terminal Services Aware

·       310626 - TAPI Server Leaks Memory When Multiple Programs Own Calls

·       311885 - TAPI Error 0x8000022 Occurs with an English (Canada) or French (Canada) System Locale

·       317877 - A TAPI-enabled program may not initiate a conference call correctly in Windows XP or in Windows 2000

·       330753 - Sound May Be Lost on the Server Side of a TAPI Application Session

·       821439 - TAPI only resolves an H.323 gateway DNS name on initialization in Windows 2000

·       822112 - FIX: A program cannot re-establish communication with a modem device after the USB cable is quickly reconnected

·       824692 - Client Computer Cannot See or Access the Telephony Resources on a Server That Is Running Windows Server 2003

·       829697 - A memory leak occurs in the Svchost.exe process that hosts a TAPI in Windows 2000

·       834148 - You receive an error message if a program uses the ITCallInfo::SetCallInfoBuffer method from TAPI 3.0

·       840174 - A connection in the LINECALLSTATE_DIALTONE call state does not work as expected in Windows XP

·       895982 - You receive an "An unknown error occurred 62791" error message or an "An unknown error occurred 62795" error message when you try to enable the telephony server on a Microsoft Windows Server 2003-based computer

·       899418 - Programs may not be able to make a telephone connection after you disconnect and then reconnect a serial cable in Windows XP with Service Pack 2

·       924050 - Telephony API-based applications stop responding and you cannot disconnect telephone calls on a Windows Server 2003-based telephony server

·       925783 - Telephony API-based applications stop responding and you cannot disconnect telephone calls on a Windows 2000 Server-based telephony server

·       928046 - A custom wave driver is unloaded when a remote client computer connects to a Windows Server 2003-based computer that is running a TAPI program

·       929273 - Error message when you try to start the TAPI service on a Windows Server 2003-based computer that is joined to a domain: "No Call Appearance Available"

·       To be continued ...

See Q: How and where do I report TAPI problems ?

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Reporting Problems

Q: How and where do I report TAPI problems ?

A: See the following hints and tips:

·       Search this site’s sections Known Problems and Fixes, Knowledge Base Articles, and the following links for known problems (and fixes) to avoid duplicate reports

·       (New) Problems should always be reported to the TAPI newsgroup for discussion, reference, and possibly help

·       MSDN® Universal, Enterprise, Professional and Operating System Subscribers receive Professional Support for Developers (with a limited number of free phone incidents for technical support). If you already have a Microsoft® support contract, you can submit an incident online.

·       MSDN® Library online includes a link at the bottom of every TAPI documentation page to give feedback to the Platform SDK Team via eMail

·       MSDN® has a Contact Us page with additional links

·       KB articles (see Q: Are there any KB articles on TAPI available ?) include a link (in the upper right corner) to provide feedback on this article to Microsoft® Product Support Services (PSS)

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Knowledge Base Articles

Q: Are there any KB articles on TAPI available ?

A: Yes, see the following list:

·       Search the Knowledge Base (Support and Troubleshooting) for "TAPI" OR "Telephony"

·       For confirmed problems (status: “Microsoft has confirmed that this is a problem”) see Q: Are there any known TAPI problems and fixes available ?

The following KB articles (INFO, PRB, HOW TO, SAMPLE, White Paper etc.) are related to Windows® 2000, Windows® XP, Windows® Server 2003, and/or Windows® VistaTM (older OS are not covered in this list). Use QuickInfo on the links (move your mouse pointer on the link and wait about a second) to see the beginning of the summary / symptoms section of the article:

·       108305 - INFO: Handling an Existing Call on a Line

·       108923 - PRB: ATSP Returns Error for Validated Parameter

·       132190 - How To Install TAPI Service Providers with TELEPHON.CPL

·       142730 - How to Create and Use the Modemlog.txt File

·       228448 - PRB: TAPI Callback Function Not Called When Using a Hidden Window for Notification

·       238479 - SAMPLE: RasBaud.exe Obtains the Baud Rate of an Existing RAS Connection Programmatically

·       254102 - Telephony Application Programming Interface Does Not Support Media Format Changes

·       259375 - HOW TO: Install and Configure Telephony Server for Client Access

·       281726 - PRB: TAPI Country IDs Can Change With Operating System Upgrade or Service Pack

·       303447 - INFO: How a TSP Lists TAPI Line Devices and Phone Devices on Windows CE 3.0

·       323151 - INFO: New Unimodem comm/datamodem Device Classes

·       750109 - New telephone numbering scheme in Greece (Phase 2 – Final)

·       810729 - White Paper: TAPI 3.0 Connection and Media Services

·       816110 - HOW TO: Configure Routing and Remote Access Tracing in Windows Server 2003

·       820937 - Changes To Dialing Codes

·       832017 - Service overview and network port requirements for the Windows Server system

·       838834 - How to disable H.323 functionality in Routing and Remote Access if it is configured to use NAT in Windows 2000 and in Windows Server 2003

·       841712 - Telephony Application Programming Interface (TAPI) functionality is not supported from managed code

·       841924 - You cannot have the Remote TSP and a telephony server enabled on the same computer

·       891861 - Update Rollup 1 for Windows 2000 SP4 and known issues

·       893756 - MS05-040: Vulnerability in Telephony service could allow remote code execution

·       To be continued ...

 

Go to top of page                  Go to Table of Contents                         Go to FAQ

 

Go to I-B-A-M® HomePage        Go to Toto® Tools Collection



Miscellaneous Q&A

General

Q: What is TAPI ?

A: See MSDN® Library online: tapi3/telephony_application_programming_interfaces

·       See MSDN® Library online: tapi3/microsoft_telephony_overview

·       See MSDN® Library online: tapi3/tapi_quick_start

·       See MSDN® Library online: tapi3/microsoft_telephony_programming_model

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: Is IP Telephony supported by TAPI ?

A: Yes, in TAPI3 via H.323 and IP Multicast Conferencing:

·       See article “IP Telephony with TAPI 3.0” (see MSDN® Library online: dntapi/html/msdn_tapi_30)

·       TAPI3 offers a H323 TSP / MSP (see Q: What TSPs are available ?, Q: What MSPs are available ?)

·       TAPI3 offers an IP Multicast Conferencing TSP / MSP (see Q: What TSPs are available ?, Q: What MSPs are available ?)

·       TAPI3 offers Rendezvous IP Telephony Conferencing (see MSDN® Library online: tapi3/rendezvous_ip_telephony_conferencing)

·       See TAPI3 Code Samples (Outgoing, Incoming, tapisend, tapirecv, USBPhone, Rend) written in C++ / VB within Platform SDK

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: Is Fax supported by TAPI ?

A: Yes, but only by call control:

·       TAPI only provides the LINEMEDIAMODE_ Constants LINEMEDIAMODE_G3FAX and LINEMEDIAMODE_G4FAX (see MSDN® Library online: tapi/tapi2/linemediamode__constants)

·       Fax itself is supported via the Fax Service (see MSDN® Library online: fax/faxportal)

·       To incorporate basic fax functionality for users in client applications see the Fax Service Client API (see MSDN® Library online: fax/faxlegacy)

·       Fax Service is using TAPI internally for call control

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: What is the difference between Canonical Addresses and Dialable Addresses ?

A: See MSDN® Library online: tapi3/address_ovr

 

Go to top of page                  Go to Table of Contents                         Go to FAQ


Q: What can I do if I get compiler / linker errors (like undeclared identifier (C2065) or unresolved external symbol (LNK2001)) ?

A: See the following hints and tips:

·       Make sure you have installed latest Platform SDK