Discussion:
development files
(too old to reply)
rs232
2006-10-30 08:52:39 UTC
Permalink
Hello,
I'd to buy Diva client ISDN PCI and I have seen that It supports CAPI
2.0 interface.
So, with this card is supplied with capi drivers.
But in Eicon's web site I don't read if all files to develope
application software are supplied.

My problem is:
To develope isdn (CAPI) software communication with Visual C++ IDE
(only Windows drivers are avaliables) I need includes files and .lib
files?
I ask to Eicon's support but I have no response.

thanks.
Teo
Lothar Kimmeringer
2006-10-30 18:24:20 UTC
Permalink
Post by rs232
To develope isdn (CAPI) software communication with Visual C++ IDE
(only Windows drivers are avaliables) I need includes files and .lib
files?
You have the capi2032.dll.

With
HANDLE capi = LoadLibrary("CAPI2032.DLL")
you load the DLL and with
GetProcAddress(cAPI,"CAPI_INSTALLED");
you get the address of the function.
With e.g.
*(GetProcAddress(hCAPI,"CAPI_INSTALLED"))() you can call that
directly, otherwise save the returned addresses into function-
pointers and use them that way.


Regards, Lothar
--
Lothar Kimmeringer E-Mail: ***@kimmeringer.de
PGP-encrypted mails preferred (Key-ID: 0x8BC3CD81)

Always remember: The answer is forty-two, there can only be wrong
questions!
Werner Henze
2006-10-31 19:09:54 UTC
Permalink
Hi!

You might want to take a look at
ftp://ftp.avm.de/develper/capi-adk/capi-adk.zip.

Ciao,
Werner...
--
PGP 8 available
http://home.arcor.de/werner.henze
c***@web.de
2006-11-02 12:23:35 UTC
Permalink
Post by Werner Henze
You might want to take a look at
ftp://ftp.avm.de/develper/capi-adk/capi-adk.zip.
But be carefull with CAPI_PUT_CMSG ....
since there is a problem in the lib ...

What do you want to do ?


Kind regards
Christian
rs232
2006-11-02 15:50:48 UTC
Permalink
Hello Christian,
thanks for your reply.
I don't understand!?
I thought that only vendors can be supply capi drivers.
Now you tell me about capi-adk and I find it very inteseting.

But I have a lot confusion in my mind.

1) I have an isdn device with capi 2.0 driver
2) I use capi with (ex. in W2K): capi2032.dll.

HANDLE capi = LoadLibrary("CAPI2032.DLL")
you load the DLL and with
GetProcAddress(cAPI,"CAPI_INSTALLED");
.....

In this way I call capi functions using vendor's dll library


3) Now I have read 'Readme.txt' of the capi-adk, where there is the
following section:

'Applications and COMMON ISDN API communicate with each other by
exchanging
command and data messages in message queues. When an application issues
a
command to an ISDN device (driver and/or controller), for example, the
command is posted to the COMMON ISDN API's corresponding message queue.
In
the opposite direction, events from an ISDN device (driver and/or
controller)
are posted to the message queue of the appropriate application.'

I ask myself, how capi can issue a command to isdn drivers without to
know
which driver is installed? So I have found inside init.c file the
functions:
'RegisterCAPI' and CAPI20_ISINSTALLED() taht seem to resolve my
question..

So, tell me if I understand:
1)I install capi drivers for my idsn device
2)I use capi-adk libraries to check if I have installed capi drivers
correctly and
to make and receive connection with my isdn device/driver... I'm not
sure.

To start, I'd want to create a simple application that call and receive
isdn calls.

Apologies for my english, It is not better than my capi know-how.

thanks.
Teo
Post by c***@web.de
Post by Werner Henze
You might want to take a look at
ftp://ftp.avm.de/develper/capi-adk/capi-adk.zip.
But be carefull with CAPI_PUT_CMSG ....
since there is a problem in the lib ...
What do you want to do ?
Kind regards
Christian
Werner Henze
2006-11-02 20:33:14 UTC
Permalink
Hi!

For calling the functions in capi2032.dll you have two
possibilities:
1. Link to capi2032.lib as given in the CAPI-ADK. This way
your program fails to start if capi2032.dll is not present.
If capi2032.dll is present, your program can start and
simply call the functions in the DLL.
2. Dynamically load capi2032.dll and get the addresses of the
procedures. Be prepared that LoadLibrary or any
GetProcAddress might fail.
The first solution is easier to use, but solution two is
more flexible.

When you install an ISDN card, the driver for the hardware
normally consist of the application interface (capi2032.dll)
and the driver interface (also specified in the CAPI spec.).
An ISDN card driver might come only with the application
interface or only with the driver interface.
The implementation is totally vendor specific, and this is
a source of problems. There is no specification that the
capi2032.dll must itself be implemented using the driver
interface. So two ISDN cards from different vendors might
need completely different capi2032.dlls, which of course is
a problem.
So if you do not want to have problems, you always stick
to the same vendor when you use more than one ISDN card in
your PC. Then it is up to the vendor to enable you to use
all the installed ISDN cards. This should not be a problem
since the vendor can unify his capi2032.dll.

To get started, of course you need to install your ISDN
device first to get the capi2032.dll. Then you might start
with the CAPI-ADK to check if CAPI is installed, see how
many controllers are installed and doing the registering
and unregistering. If you got familiar with that you can
dive deeper and start the complicated stuff like sending
and receiving the CAPI messages.

Good luck,
Werner...
--
PGP 8 available
http://home.arcor.de/werner.henze
c***@web.de
2006-11-03 10:49:07 UTC
Permalink
Hi Teo,


if you have a CAPI Device installed, you always have a CAPI2032 dll
which provides the same API ...

Depends on what you want do do, you can use Eicon or HST Boards (thats
the only "active" ones i know). I advice to use HST Boards during
development (the trace tool is really good ...).

So you first need to link the ADK or do it dynamically and:

1. CAPI_INSTALLED ?
2 CAPI_GET_PROFILE (for controler 0 to get the amount of installed
controler)
3. REGISTER_APP (look at the doc for this !!!!)
4. LISTEN_REQ


But, what do you want exactly to do ?
There are some RAD develpment tools which provide ACD / IVR
functionalities ...
You can also buy some SDKs from another vendor which are doing
the most work for you (ISDN Toolbox).

You can also send me an email to wallukat (at) incas (dot) de where
you describe what you need and i will take a look for you ...



Kind regards
Christian

Loading...