D :
I mean I'm used to develop in Java for its great portability and
especially its cost but since I'm all new to TAPI and I'm learning on
the way, I fear if I opt for JTAPI (and thus develop my soft in JAVA) I
will discover late in the future that some TAPI functions and services
are not well ported to JAVA. (This information is crucial for the
choice of the development tool)
PS : Sorry for my english if there is any mistakes.
Thanks in advance.
despite the similar names JTAPI is completely different from TAPI.
Most PBX systems come with a service provider for TAPI but
only very few for JTAPI. You can't use JTAPI to control TAPI
devices.
Portability is useless in this case because TAPI only exists on
Windows and there is no comparable thing (especially with
regards to industry support) on other platforms.
Another thing to mention is CSTA which is supported by a number
of PBX systems, but it is rather a communication protocol than a
programming API.
There are some Java samples for TAPI but I wouldn't recommend
going that route. Either use TAPI 2.x with C++ or TAPI 3.x with
C++ or VB6.
If you're considering .NET please note:
Regarding TAPI and .NET see KB article "841712 - Telephony Application
Programming Interface (TAPI) functionality is not supported from managed
code".
http://support.microsoft.com/kb/841712
Please have a look at JulMar's
ITAPI3 - TAPI 3.0 wrapper for .NET 2.0
existing TAPI3.0 code based on TAPI3 interop can easily be ported
http://www.julmar.com/blog/mark/CategoryView,category,Tapi.aspx
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
-------------------------------------
"Saberium" <Sabe...@GMail.com> wrote in message
news:ucRKJrCQ...@TK2MSFTNGP02.phx.gbl...
After reading the TAPI and .NET references I will opt for C++ as the
programming language.
Best Regards,
Saberium
you're welcome, good luck with your project!
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
-------------------------------------
"Saberium" <Sabe...@GMail.com> wrote in message
news:ONj2IgFQ...@TK2MSFTNGP04.phx.gbl...
I would like to clear some doubts?
I have a CRM Product, and I would like to implement CTI. First I checked the
possibility of Envox CT Connect. Now I am considering TAPI/JTAPI. can you
guide me on the following doubts
1. I saw an architectural diagram saying JTAPI is written over TAPI
functionality? Is that mean even if I am coding with JTAPI, I will get
support for all the vendors?
2. There are many vendors , say Avaya,Cisco,Nortel,mutel...etc saying that
they have TAPI Support and they are providing a kind of TAPI SDK(Software
development kit). Does this mean I need to implement CTI(Computer Telephony
Integration) vendor by vendor?
3. Can I write a general code using TAPI, and leave my application to our
customers , So that they can just configure (TSPI) with respect to their
choose?
4. How will I implement a multi vendor supported client application, from
where my helpdesk technician can answer,click to call, ANI..etc
Thanks in Advance
Regards
Shihab
> 1. I saw an architectural diagram saying JTAPI is written over TAPI
> functionality?
I am quite sure that this is wrong.
> 2. There are many vendors , say Avaya,Cisco,Nortel,mutel...etc saying that
> they have TAPI Support and they are providing a kind of TAPI SDK(Software
> development kit). Does this mean I need to implement CTI(Computer
> Telephony
> Integration) vendor by vendor?
Not generally, TAPI is a common API. There are vendor specific extensions
for certain functionality, though, that's why they are providing SDKs.
> 3. Can I write a general code using TAPI, and leave my application to our
> customers , So that they can just configure (TSPI) with respect to their
> choose?
Yes if your code is perfect. But when you write and test your code against
a certain TSP it is likely that the code might not work perfectly with other
TSPs, so you should at best test with all TSPs and if that's not possible,
at
least add good logging code to be able to easily identify problems your
customers
might experience with other TSPs.
Best regards,
Matthias Moetje
-------------------------------------
TAPI WIKI: http://www.tapi.info
-------------------------------------
TERASENS GmbH
Augustenstraße 24
I have few more doubts.
My design would be a screen pop up while a call is coming, make call, answer
call..etc. I was able to configure the server and client machines in a same
domain. Now its time to do some POC. a Third party call control design would
be better as we need to support PBX
I went through your blog, which is awesome and useful. Also I went through
your recommendations.
1. Can you provide me a guide how to do a POC for the above features?
2. How the data flow is working client, server, and pbx? Can we have some
tools to see the call flow?
3. Do I need to install a TSP in all client ? If not when I am making a
call will that go through the Telephony server?
4. To push a screen pop to the client how can i get a Notification from the
PBX, or How can I make Telephony server listening to the PBX?
5. How the Telephony server maps the client IP and extension? (Please not
PBX will map extension number and user)
If you have some links where step by step configuration for POC is avaialble
.. Please help..
Sorry for the disturbance
Regards
Shihab
Shihab,
what do you refer as "POC"?
> 1. Can you provide me a guide how to do a POC for the above features?
There is a collection of very usefull TAPI tools (including open source in
C++) from JulMar:
http://www.julmar.com/tapi/
Please take a look at Answer.exe, TcMon.exe, and Phone.exe.
> 2. How the data flow is working client, server, and pbx? Can we have some
> tools to see the call flow?
See my TAPI and TSPI FAQ:
Q: What is the Microsoft® TAPI client / server architecture ?
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_What_is_10
Q: Is there a TAPI trace available ?
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_Is_there_10
> 3. Do I need to install a TSP in all client ? If not when I am making a
> call will that go through the Telephony server?
With MS TAPI client/server architecture you only install the 3rd party TSP for
the PBX on the telephony server.
On all telephony clients you just need to "TCMSETUP.exe /C
<telephonyservername>" what locally installs the MS RemoteSP.TSP, that is
doing the communication with the telephony server (and the TSPs there).
On the telephony clients you have access (via RemoteSP.TSP) to the TAPI
devices on the telephony server that are assign to the currently logged-on
user.
> 4. To push a screen pop to the client how can i get a Notification from the
> PBX, or How can I make Telephony server listening to the PBX?
This is done by the 3rd party TSP (for the PBX) running on the telephony
server.
> 5. How the Telephony server maps the client IP and extension? (Please not
> PBX will map extension number and user)
See 2+3.
The assignment of TAPI devices to users is done via TAPIMGMT.msc on the
telephony server.
--
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.
Thanks for the help. a POC is nothing but, Proof of concept. A skeleton
running from command prompt, which we can develop later.
I would like to know a bit more about #4 and #5.
#4& #5. Hope the telephony server will notify the client while a call comes,
If thats the case its easy to pop up in the client machine
But a scenario where a company ABC running say Nortel PBX and hardphone. Now
our solution is going to implement. The nortel pbx will have the information
about the user say John/peter whose numbers are 6500 and 6600. As we are
going to implement TAPI, Nortel TSP will notify TAPi server when a call comes
to John(say there is a call coming to 6500) . Now how the TAPI server will
notify the John's laptop (pop up message saying "peter is calling you") .
please keep in mind johns laptop is a client of TAPI server. but the TAPi
server doesn't have a number to laptop mapping. Can you please clear, how the
TAPI server will map these things
Thanks &Regards
Shihab
Shihab, you are welcome.
Thanks for the clarification.
> I would like to know a bit more about #4 and #5.
>
> #4& #5. Hope the telephony server will notify the client while a call comes,
> If thats the case its easy to pop up in the client machine
Yes on the telephony client you will automatically get the incoming call
notifications via TAPI for the device(s) assigned to the currently logged on
user from the TSP running on the telephony server.
> But a scenario where a company ABC running say Nortel PBX and hardphone. Now
> our solution is going to implement. The nortel pbx will have the information
> about the user say John/peter whose numbers are 6500 and 6600. As we are
> going to implement TAPI, Nortel TSP will notify TAPi server when a call
comes
> to John(say there is a call coming to 6500) . Now how the TAPI server will
> notify the John's laptop (pop up message saying "peter is calling you") .
> please keep in mind johns laptop is a client of TAPI server. but the TAPi
> server doesn't have a number to laptop mapping. Can you please clear, how
the
> TAPI server will map these things
The telephony server is required to have a mapping of domain users (e.g. John)
to TAPI line devices (e.g. device 6500 from the Nortel TSP).
This mapping is configered via TAPIMGMT.msc on the telephony server.
Please see the PowerPoint presentation and the MS KB article I already
referenced.
> > See my TAPI and TSPI FAQ:
> > Q: What is the Microsoft® TAPI client / server architecture ?
> >
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_What_is_10
--
It was a wonderful answer. Thanks a lot.
Now to develop, I was thinking a development set up like this. We will use
Asterisk PBX, as PBX, AStTAPI driver can be used as TSPI, and some SIP
phone(SJPhone) for calling. The above set up can be used to simulate the
call traffic. We will run POC using a dialer from one of the client to
another client to make a call
I was able to make client/server configuration , But unfortunately while
dialing using dialer I am getting the following exception is Asterisk logs
I went through your tool error codes and find the explanation as "TAPI2
error code: 0x80000048 (dwMessageID = 0x0000e048) = The operation failed for
unspecified reasons".
I checked the username/password in manager.conf, and verified the driver
user/pwd is same.
Can you shed some light on this?
or Can you tell me some other development simulation environment or a third
party call control simulation so that I can start development?
Please look to the following error log. It may give a fair idea why TAPI
login to PBX is failing. (I double checked user/pwd in both place)
Thanks in Advance
Regards
Shihab
Dec 18 06:37:54 VERBOSE[7724] logger.c: [chan_tapi.so]Dec 18 06:37:54
VERBOSE[7724] logger.c: [chan_tapi.so] => (Win32 TAPI Driver (0.2.0))
Dec 18 06:37:54 NOTICE[7724] chan_tapi.c: Channel format set to ULAW'
Dec 18 06:37:54 ERROR[7724] win32_tapi.c: TAPI Error: 80000048 (HCALL 0x0)
on lineGetID .
Dec 18 06:37:54 DEBUG[7724] manager.c: Manager received command 'Login'
Dec 18 06:37:54 DEBUG[7724] acl.c: 0.0.0.0/0.0.0.0/0.0.0.0 appended to acl
for peer
Dec 18 06:37:54 DEBUG[7724] acl.c:
192.168.118.80/255.255.255.0/255.255.255.0 appended to acl for peer
Dec 18 06:37:54 DEBUG[7724] acl.c: ##### Testing 192.168.118.80 with 0.0.0.0
Dec 18 06:37:54 DEBUG[7724] acl.c: ##### Testing 192.168.118.80 with
192.168.118.0
Dec 18 06:37:54 NOTICE[7724] manager.c: 192.168.118.80 failed to
authenticate as 'helpdesk-test1'
Dec 18 06:37:54 ERROR[7724] win32_tapi.c: TAPI Error: 80000048 (HCALL 0x0)
on lineGetID .
Dec 18 06:37:54 ERROR[7724] chan_tapi.c: Unable to register device 'MODEM2'
"Andreas Marschall [MVP TAPI]" wrote:
Shihab, you are welcome.
> Now to develop, I was thinking a development set up like this. We will use
> Asterisk PBX, as PBX, AStTAPI driver can be used as TSPI, and some SIP
> phone(SJPhone) for calling.
Sorry, I'm not familiar with PBX / TSp /phone you've mentioned.
> The above set up can be used to simulate the
> call traffic. We will run POC using a dialer from one of the client to
> another client to make a call
>
> I was able to make client/server configuration , But unfortunately while
> dialing using dialer I am getting the following exception is Asterisk logs
>
> I went through your tool error codes and find the explanation as "TAPI2
> error code: 0x80000048 (dwMessageID = 0x0000e048) = The operation failed for
> unspecified reasons".
Unfortunately this error code is the most generic one and doesn't tell you
much about the underlaying issue.
> I checked the username/password in manager.conf, and verified the driver
> user/pwd is same.
>
> Can you shed some light on this?
See below.
> or Can you tell me some other development simulation environment or a third
> party call control simulation so that I can start development?
Maybe H323.TSP (from MS, being part of W2k, XP, WS2k3, but not Vista / WS2k8).
See my TAPI and TSPI FAQ:
Q: What about H323.TSP and IPconf.TSP in Windows® VistaTM ?
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_What_about
Or maybe ESP32 from MS.
See my TAPI and TSPI FAQ:
Q: Is there a user guide available for Economical Service Provider (ESP32)?
http://www.i-b-a-m.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm#_Q:_Is_there_8
Or maybe DSSP or JPBX (being part of TSP++ package) from JulMar:
http://www.julmar.com/tapi/
> Please look to the following error log. It may give a fair idea why TAPI
> login to PBX is failing. (I double checked user/pwd in both place)
> Dec 18 06:37:54 ERROR[7724] win32_tapi.c: TAPI Error: 80000048 (HCALL 0x0)
> on lineGetID .
From your log it seems that errror occured at lineGetID()
but unfortunately the log doesn't indicate what DeviceClass was queried.