A
download otdialmsi.cpp
Language: C++
Copyright: (c) 1995-99 OpenComm do Brasil Ltda.
LOC: 67
Project Info
Open Telephony Server(opentel)
Server: SourceForge
Type: cvs
...el\server\drivers\dialogic\
   dialogic.dsp
   otdialap.cpp
   otdialap.h
   otdialar.cpp
   otdialar.h
   otdialdev.h
   otdialdrv.cpp
   otdialdrv.h
   otdialdti.cpp
   otdialdti.h
   otdialdxx.cpp
   otdialdxx.h
   otdialei.cpp
   otdialei.h
   otdialev.cpp
   otdialev.h
   otdialex.cpp
   otdialex.h
   otdialgc.cpp
   otdialgc.h
   otdialmsi.cpp
   otdialmsi.h
   otdialogic.cpp
   otdialogic.h
   otdialsc.cpp
   otdialsc.h
   otdialtd.cpp
   otdialtd.h
   otdialtg.cpp
   otdialtg.h

/*****************************************************************************
* OpenTel Telephony Server & Framework
* Copyright (c) 1995-99 OpenComm do Brasil Ltda.
* Todos os direitos reservados.
* Este arquivo contem material confidencial de OpenComm do Brasil, e deve
* darse tratamento como tal.
******************************************************************************/

#ident "@(#) $Header: /cvsroot/opentel/opentel/server/drivers/dialogic/otdialmsi.cpp,v 1.2 2000/03/24 05:16:43 jbernab Exp $"

#include <otconfig.h>

#ifdef _WINDOWS
#include <windows.h>
#include <io.h>
#endif

#ifdef CONFIG_DIALOGIC_MSI

extern "C" {
#include <srllib.h>
#include <dtilib.h>
#include <dxxxlib.h>
#include <msilib.h>
#include <gclib.h>
#include <gcerr.h>
};

#include <otcallc.includes>

#include <dialogic/otdialogic.h>
#include <otarchive.includes>
#include <dialogic/otdialmsi.h>

#include <otbus.includes>                              // Bus stuff
#include <dialogic/otdialsc.h>

OtDialogicMsiDev::OtDialogicMsiDev(const OtString &dev, OtBus *bus) :
        _linedev(0),
        m_bus(bus),
        _devName(dev),
        m_hasToClose(true)
{
//      setName( "OtDialogicMsiDev(" + _devName +")" );

        open();
        ms_setevtmsk(_linedev,DTG_SIGEVT,MSMM_OFFHOOK|MSMM_ONHOOK|MSMM_HOOKFLASH,DTA_SETMSK);

        // Set Listener and Transmiter Today for SC BUS

        m_listener=new OtTimeSlotListenerMsiSC(this,(OtBusSC *)m_bus);
        m_transmitter=new OtTimeSlotTransmitterMsiSC(this,(OtBusSC *)m_bus);

}

OtDialogicMsiDev::~OtDialogicMsiDev(void)
{
        if(m_hasToClose)
                close();

        m_bus=NULL;
}

int OtDialogicMsiDev::open(void)
{
        OTASSERT(!_devName.isEmpty());
        if((_linedev=ms_open(_devName,0))==ERROR) {
                throw OtDialogicException(_linedev);
                return false;
                }
        return true;
}



int OtDialogicMsiDev::close(void)
{
        int ret=0;
        if(_linedev) {
                if(m_hasToClose)
                        if((ret=ms_close(_linedev))<0)
                                throw OtDialogicException(_linedev);
                _linedev=0;
                }
        return ret;
}

int OtDialogicMsiDev::onMessage(OtMessage *msg)
{
        OtMessageSource::dispatchMessage(msg);
}


int OtDialogicMsiDev::isForMe(OtDialogicEvent *e)
{
        return (e->getDev()==_linedev);         //
}


#endif

About Koders | Resources | Downloads | Support | Black Duck | Terms of Service | DMCA | Privacy Policy | Contact Us