TAPI event processing problems

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Sub (subdene_at_hotmail.com)
Date: 06/20/04


Date: 20 Jun 2004 13:45:57 -0700

Hello, I would be extremely grateful to anyone who could explain why
we have to do the following to register the TAPI event interface. I
cant understand why we have to create an IConnectionPointContainer in
order to obtain an IConnectionPoint to the particular outgoing IID,
and then from the IConnectionPoint you have to call advise in order to
connect "the connection point and the caller's sink."

Firstly, what is an outgoing interface? is this an example of an
outgoing interface?
m_hrRetResult = m_IpAddress->QueryInterface(IID_ITAddressCapabilities,
(void**) &pAddressCaps); i.e. getting an interface to the address
capabilities?

Secondly, what is the callers sink? Is this my implementation of a
switch handler to handle all the event messages?

Thirdly, why cant I just define a function with the appropriate cases
to process all the events, e.g. EXAMPLE ONLY!

HRESULT OnTapiEvent( TAPI_EVENT TapiEvent)
{
    switch ( TapiEvent )
    {
        case TE_CALLNOTIFICATION : {} break;
        case TE_CALLSTATE : {} break;
    }
}

Then on the main tapi interface ptr (IID_ITTAPI) just pass the name of
the function which is handling the events to the tapi interface, then
the tapi can call my function passing the event as an argument to the
function. I cant understand why we need IConnectionPointContainer, and
IConnectionPoint. If anyone could could shed some light on this, it
would be much appreciated.

Thanks in advance, Dene.



Relevant Pages

  • Re: Using TAPI to build a hotel interface.
    ... It is a COM object that has simple to use Properties, Methods and Events for doing all the tasks which we do through TAPI, but without any of the complications associated with using TAPI. ... I dont know what is this Panasonic HAI, but the last Panasonic KX-TDA TSP is: ... It is the one that was delivered with the Panasonic HAI, the COM SDK Wrapper. ... They also provide these interfaces for multiple PABX systems, so they must be using TAPI, or something like TAPI, to control the interface, I find it hard to believe they would use any other method to talk to the different types of PABX. ...
    (microsoft.public.win32.programmer.tapi)
  • Re: IConnectionPointContainer & C#
    ... interface proxy marshalling, and I'm not surprized that something is getting ... void IConnectionPointContainer.FindConnectionPoint(ref Guid riid, out ... IConnectionPoint ppCP) ... But the COM client that gets this IConnectionPoint ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: How to detect which callhub the event is fired from
    ... Regarding TAPI and .NET see KB article "841712 - Telephony Application ... Programming Interface functionality is not supported from managed ... Matthias Moetje ... TERASENS GmbH ...
    (microsoft.public.win32.programmer.tapi)
  • Re: Building a TSP with C#
    ... build an object interface to your code, you could then build a simple TSP ... I believe that the TSP does not need to be built for any version of TAPI, ... that the TAPI server can use it? ... the TSPI uses lots of weird C++ ...
    (microsoft.public.win32.programmer.tapi)
  • Re: IConnectionPoint example doesnt compile
    ... the reason the example wasn't compile was because the client was ... IConnectionPointContainer lets a client enumerate the IConnectionPoint. ... IConnectionPoint has 2 important methods: ... I've also figured out that VB 6 exposes its events in a seperate interface ...
    (microsoft.public.win32.programmer.ole)