#include <comms.h>
Inheritance diagram for Comms:


Public Member Functions | |
| Comms (LaunchNewId &lid, MyManager &manager) | |
| ~Comms () | |
| virtual void | StopAllCommunications () |
| void | AdviseCallCreation () |
| void | SetMyOpalCallPtr (MyOpalCall *ptr) |
| PUDPSocket & | GetAudioSocket () |
| void | CloseThisId () |
Protected Member Functions | |
| virtual void | ProcessHangup (PStringArray &cmds, PString &sender) |
| virtual void | ProcessCallNode (PStringArray &cmds, PString &sender) |
| virtual void | ProcessStatusQuery (PStringArray &cmds, PString &sender) |
| virtual void | ProcessDuration (PStringArray &cmds, PString &sender) |
| virtual void | ProcessIdentify (PStringArray &cmds, PString &sender) |
| virtual void | ProcessDebug (PStringArray &cmds, PString &sender) |
| virtual void | ProcessAnswer (PStringArray &cmds, PString &sender) |
| virtual BOOL | SendDtmf (const PString &dtmfVals) |
| virtual BOOL | OkToHangup () |
| virtual void | SilentlyEndAll () |
Protected Attributes | |
| MyManager & | manager |
| PString | remoteController |
| MyOpalCall * | myOpalCall |
|
||||||||||||
|
Constructor, with a reference to the manager and the unique ID generator |
|
|
Close down the handling of incoming message, and break the link to the MyOpalCall class |
|
|
Send a message to the remote controller saying that we are created (and established in the Opal sense of a connection). The id of this node is appended to the message. |
|
|
Close this id off. Basically, tell the remote end we are closing, and stop the comms on the tcp socket. |
|
|
Report the address of the audio socket, which is used for all voice data communications between channels. Note that this voice data does not go via the server. This voice data goes directly between the two endpoints, which is quite unlike the path taken by control commands |
|
|
Some MessageFrame instances do not obey the hangup command. This Comms structure lives or dies on the hangup command Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a command advising us how to answer to the incoming call, so we act as required and reply accordingly Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a Call other Node command, so do it and reply accordingly Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a command which enables/disables debug information so install as required and reply accordingly Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a command queryig the current call duration , so extract information & answer Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a hangup message, so end the call Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a command requesting that we identify ourselves so do it and reply accordingly Reimplemented from MessageFrame. |
|
||||||||||||
|
we have received a query status command, so do it and reply accordingly Reimplemented from MessageFrame. |
|
|
Send this dtmf string to the remote node. Returns TRUE on success, FALSE on failure. Reimplemented from MessageFrame. |
|
|
Assign a value to the jocall pointer |
|
|
We have a comms error, so just close everything right now. Send no message to the remote node - just end end end. Reimplemented from MessageFrame. |
|
|
Send a message to the remote controller that we are closing down now |
|
|
Reference back to the most important class of all |
|
|
Pointer to the Opal Call structure that takes our commands and apply them to this call. The "myOpalCall" pointer is only accessed when receiving messages from the network. This pointer is set to NULL after the receive network messages thread has ended. This pointer is set to a value almost immediately after call creation. prior to this, it is null. Thus, if the reeiveNetworkMessages thread checks that this pointer is not null, there is no thread pointer issue. |
|
|
The id of the controller who has created this call |
1.4.4