Yate
|
Base Driver with client specific functions. More...
#include <yatecbase.h>
Public Member Functions | |
virtual void | initialize ()=0 |
virtual bool | msgExecute (Message &msg, String &dest) |
virtual void | msgTimer (Message &msg) |
virtual bool | msgRoute (Message &msg) |
virtual bool | received (Message &msg, int id) |
const String & | activeId () const |
bool | setActive (const String &id=String::empty()) |
ClientChannel * | findLine (int line) |
Public Member Functions inherited from Driver | |
virtual void * | getObject (const String &name) const |
const String & | prefix () const |
bool | varchan () const |
ObjList & | channels () |
virtual Channel * | find (const String &id) const |
virtual bool | isBusy () const |
virtual void | dropAll (Message &msg) |
virtual bool | canAccept (bool routers=true) |
virtual bool | canRoute () |
unsigned int | nextid () |
unsigned int | lastid () const |
int | timeout () const |
int | routing () const |
int | routed () const |
int | total () const |
int | chanCount () const |
int | maxChans () const |
Public Member Functions inherited from Module | |
const String & | type () const |
void | changed () |
bool | filterInstalled () const |
bool | filterDebug (const String &item) const |
Public Member Functions inherited from Plugin | |
Plugin (const char *name, bool earlyInit=false) | |
virtual | ~Plugin () |
virtual const String & | toString () const |
const String & | name () const |
NamedCounter * | objectsCounter () const |
bool | earlyInit () const |
Public Member Functions inherited from GenObject | |
GenObject () | |
virtual | ~GenObject () |
virtual bool | alive () const |
virtual void | destruct () |
NamedCounter * | getObjCounter () const |
NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from DebugEnabler | |
DebugEnabler (int level=TelEngine::debugLevel(), bool enabled=true) | |
int | debugLevel () const |
int | debugLevel (int level) |
bool | debugEnabled () const |
void | debugEnabled (bool enable) |
const char * | debugName () const |
bool | debugAt (int level) const |
bool | debugChained () const |
void | debugChain (const DebugEnabler *chain=0) |
void | debugCopy (const DebugEnabler *original=0) |
Public Member Functions inherited from Mutex | |
Mutex (bool recursive=false, const char *name=0) | |
Mutex (const Mutex &original) | |
~Mutex () | |
Mutex & | operator= (const Mutex &original) |
virtual bool | lock (long maxwait=-1) |
virtual bool | unlock () |
virtual bool | locked () const |
const char * | owner () const |
bool | recursive () const |
Public Member Functions inherited from Lockable | |
virtual | ~Lockable () |
virtual bool | check (long maxwait=-1) |
virtual bool | unlockAll () |
Static Public Member Functions | |
static ClientDriver * | self () |
static const String & | device () |
static void | dropCalls (const char *reason=0) |
static bool | setAudioTransfer (const String &id, const String &target=String::empty()) |
static bool | setConference (const String &id, bool in, const String *confName=0, bool buildFromChan=false) |
static ClientChannel * | findChan (const String &id) |
static ClientChannel * | findChanByPeer (const String &peer) |
static ClientChannel * | findActiveChan () |
static void | dropChan (const String &chan, const char *reason=0, bool peer=false) |
Static Public Member Functions inherited from Module | |
static unsigned int | updateDelay () |
static void | updateDelay (unsigned int delay) |
static bool | itemComplete (String &itemList, const String &item, const String &partWord) |
Static Public Member Functions inherited from GenObject | |
static void * | getObject (const String &name, const GenObject *obj) |
static bool | getObjCounting () |
static void | setObjCounting (bool enable) |
static NamedCounter * | getObjCounter (const String &name, bool create=true) |
static ObjList & | getObjCounters () |
Static Public Member Functions inherited from Mutex | |
static int | count () |
static int | locks () |
static bool | efficientTimedLock () |
Static Public Member Functions inherited from Lockable | |
static void | wait (unsigned long maxwait) |
static unsigned long | wait () |
static void | startUsingNow () |
static void | enableSafety (bool safe=true) |
static bool | safety () |
Static Public Attributes | |
static String | s_confName |
static bool | s_dropConfPeer |
Protected Member Functions | |
void | setup () |
Protected Member Functions inherited from Driver | |
Driver (const char *name, const char *type=0) | |
void | setup (const char *prefix=0, bool minimal=false) |
virtual void | genUpdate (Message &msg) |
virtual bool | hasLine (const String &line) const |
virtual bool | commandComplete (Message &msg, const String &partLine, const String &partWord) |
virtual void | statusModule (String &str) |
virtual void | statusParams (String &str) |
virtual void | statusDetail (String &str) |
virtual bool | setDebug (Message &msg, const String &target) |
virtual void | loadLimits () |
void | varchan (bool variable) |
void | timeout (int tout) |
void | maxRoute (int ncalls) |
void | maxChans (int ncalls) |
void | dtmfDups (bool duplicates) |
Protected Member Functions inherited from Module | |
Module (const char *name, const char *type=0, bool earlyInit=false) | |
virtual | ~Module () |
void | setup () |
bool | relayInstalled (int id) const |
bool | installRelay (int id, unsigned priority=100) |
bool | installRelay (const char *name, unsigned priority=100) |
bool | installRelay (int id, const char *name, unsigned priority=100) |
bool | installRelay (MessageRelay *relay) |
bool | uninstallRelay (MessageRelay *relay, bool delRelay=true) |
bool | uninstallRelay (int id, bool delRelay=true) |
bool | uninstallRelays () |
virtual void | msgStatus (Message &msg) |
virtual bool | msgCommand (Message &msg) |
virtual bool | commandExecute (String &retVal, const String &line) |
Protected Member Functions inherited from DebugEnabler | |
void | debugName (const char *name) |
Protected Attributes | |
String | m_activeId |
Protected Attributes inherited from Module | |
enum TelEngine::Module:: { ... } | RelayID |
Static Protected Attributes | |
static ClientDriver * | s_driver |
static String | s_device |
Friends | |
class | ClientChannel |
Additional Inherited Members | |
Protected Types inherited from Module | |
enum | { Status = 0x00000001, Timer = 0x00000002, Level = 0x00000004, Command = 0x00000008, Help = 0x00000010, Halt = 0x00000020, Route = 0x00000040, Stop = 0x00000080, Execute = 0x00000100, Drop = 0x00000200, Locate = 0x00000400, Masquerade = 0x00000800, Ringing = 0x00001000, Answered = 0x00002000, Tone = 0x00004000, Text = 0x00008000, Progress = 0x00010000, Update = 0x00020000, Transfer = 0x00040000, Control = 0x00080000, MsgExecute = 0x00100000, PubLast = 0x0fffffff, Private = 0x10000000 } |
Static Protected Member Functions inherited from Module | |
static const char * | messageName (int id) |
static int | relayId (const char *name) |
Base Driver with client specific functions.
Abstract client Driver that implements some of the specific functionality
|
inline |
Get the active channel's id
|
inlinestatic |
Get the current audio device's name
|
static |
Drop all calls belonging to the active driver
reason | Optional drop reason |
|
static |
Drop a channel
chan | Channel id |
reason | Optional reason |
peer | Set it to true to drop a client channel peer used to reconnect |
|
inlinestatic |
Get the active channel
References ClientDriver::findChan().
|
static |
Get a referenced channel found by its id
id | The id of the channel to find |
Referenced by ClientDriver::findActiveChan().
|
static |
Get a referenced channel whose stored peer is the given one
peer | Peer id to check |
ClientChannel* findLine | ( | int | line | ) |
|
pure virtual |
This method is called to initialize the loaded module
Reimplemented from Driver.
Create an outgoing calling channel
msg | Call execute message |
dest | Destination of the new call |
Implements Driver.
|
virtual |
Routing message handler. The default implementation routes to this driver if it owns a line named in the "account" or "line" parameter.
msg | Call routing message |
Reimplemented from Driver.
|
virtual |
|
virtual |
|
inlinestatic |
Get the global client driver object's address
bool setActive | ( | const String & | id = String::empty() | ) |
Set/reset the active channel. Does nothing if the selected channel is the active one. Put the active channel on hold before trying to set the active channel
id | The new active channel's id. Set to empty if don't want to set a new active channel |
|
static |
Attach/detach client channels peers' source/consumer
id | The id of the channel to tranfer |
target | The transfer target. Leave blank to reset the channel's transfer id |
|
static |
Attach/detach a client channel to/from a conference room
id | The id of the channel to process |
in | True to enter the conference room, false to exit from it |
confName | Optional id of the conference. Set to 0 to use the default one Ignored if 'in' is false |
buildFromChan | Build conference name from channel id if true |
|
static |
The name to use when the client is in conference
|
static |
Indicates wether a channel should drop its former peer when terminated while in conference