OPAL
Version 3.18.8
|
#include <sockep.h>
Public Member Functions | |
Construction | |
OpalSockEndPoint (OpalManager &manager, const char *prefix=OPAL_SOCK_PREFIX) | |
~OpalSockEndPoint () | |
Overrides from OpalLocalEndPoint | |
virtual PSafePtr< OpalConnection > | MakeConnection (OpalCall &call, const PString &party, void *userData=NULL, unsigned int options=0, OpalConnection::StringOptions *stringOptions=NULL) |
virtual OpalLocalConnection * | CreateConnection (OpalCall &call, void *userData, unsigned options, OpalConnection::StringOptions *stringOptions) |
![]() | |
OpalLocalEndPoint (OpalManager &manager, const char *prefix=OPAL_LOCAL_PREFIX, bool useCallbacks=true) | |
~OpalLocalEndPoint () | |
virtual OpalMediaFormatList | GetMediaFormats () const |
PSafePtr< OpalLocalConnection > | GetLocalConnectionWithLock (const PString &token, PSafetyMode mode=PSafeReadWrite) |
virtual bool | OnOutgoingSetUp (const OpalLocalConnection &connection) |
virtual bool | OnOutgoingCall (const OpalLocalConnection &connection) |
virtual bool | OnIncomingCall (OpalLocalConnection &connection) |
virtual bool | AlertingIncomingCall (const PString &token, OpalConnection::StringOptions *options=NULL, bool withMedia=false) |
virtual bool | AcceptIncomingCall (const PString &token, OpalConnection::StringOptions *options=NULL) |
virtual bool | RejectIncomingCall (const PString &token, const OpalConnection::CallEndReason &reason=OpalConnection::EndedByAnswerDenied) |
virtual bool | OnUserInput (const OpalLocalConnection &connection, const PString &indication) |
Synchronicity | GetDefaultAudioSynchronicity () const |
void | SetDefaultAudioSynchronicity (Synchronicity sync) |
Synchronicity | GetDefaultVideoSourceSynchronicity () const |
void | SetDefaultVideoSourceSynchronicity (Synchronicity sync) |
bool | IsDeferredAlerting () const |
void | SetDeferredAlerting (bool defer) |
bool | IsDeferredAnswer () const |
void | SetDeferredAnswer (bool defer) |
bool | WillPauseTransmitMediaOnHold () const |
void | SetPauseTransmitMediaOnHold (bool pause) |
void | SetFarEndCameraCapabilityChangedNotifier (const PNotifier ¬ifier) |
Set a callback for when the far end camera control capabilities change. More... | |
const PNotifier & | GetFarEndCameraCapabilityChangedNotifier () const |
Get a callback for when the far end camera control capabilities change. More... | |
void | SetFarEndCameraActionNotifier (const PNotifier ¬ifier) |
Set a callback for when a far end camera control action comes from remote. More... | |
const PNotifier & | GetFarEndCameraActionNotifier () const |
Get a callback for when a far end camera control action comes from remote. More... | |
P_DECLARE_BITWISE_ENUM (CallbackUsage, 2,(NoCallbacks, UseSourceCallback, UseSinkCallback)) | |
Enumeration for usage of media callback direction in CallbackMap. More... | |
bool | UseCallback (const OpalMediaFormat &mediaFormat, bool isSource) const |
Indicate media type and direction is to use virtual callback functions. More... | |
bool | SetCallbackUsage (const OpalMediaType &mediaType, CallbackUsage usage) |
Set callback usage for media type. More... | |
virtual bool | OnReadMediaFrame (const OpalLocalConnection &connection, const OpalMediaStream &mediaStream, RTP_DataFrame &frame) |
virtual bool | OnWriteMediaFrame (const OpalLocalConnection &connection, const OpalMediaStream &mediaStream, RTP_DataFrame &frame) |
virtual bool | OnReadMediaData (OpalLocalConnection &connection, OpalMediaStream &mediaStream, void *data, PINDEX size, PINDEX &length) |
virtual bool | OnWriteMediaData (const OpalLocalConnection &connection, const OpalMediaStream &mediaStream, const void *data, PINDEX length, PINDEX &written) |
virtual bool | CreateVideoInputDevice (const OpalConnection &connection, const OpalMediaFormat &mediaFormat, PVideoInputDevice *&device, bool &autoDelete) |
virtual bool | CreateVideoOutputDevice (const OpalConnection &connection, const OpalMediaFormat &mediaFormat, bool preview, PVideoOutputDevice *&device, bool &autoDelete) |
virtual Synchronicity | GetSynchronicity (const OpalMediaFormat &mediaFormat, bool isSource) const |
![]() | |
P_DECLARE_BITWISE_ENUM (Attributes, 2,(NoAttributes, IsNetworkEndPoint, SupportsE164)) | |
OpalEndPoint (OpalManager &manager, const PCaselessString &prefix, Attributes attributes) | |
~OpalEndPoint () | |
virtual void | ShutDown () |
void | PrintOn (ostream &strm) const |
bool | StartListeners (const PStringArray &interfaces, bool add=true) |
virtual bool | StartListener (const PString &address) |
virtual bool | StartListener (OpalListener *listener) |
virtual PStringArray | GetDefaultListeners () const |
virtual PString | GetDefaultTransport () const |
virtual WORD | GetDefaultSignalPort () const |
OpalListener * | FindListener (const OpalTransportAddress &iface) |
bool | FindListenerForProtocol (const char *proto, OpalTransportAddress &addr) |
PBoolean | StopListener (const OpalTransportAddress &iface) |
PBoolean | RemoveListener (OpalListener *listener) |
OpalTransportAddressArray | GetInterfaceAddresses (const OpalTransport *associatedTransport=NULL) const |
PDECLARE_AcceptHandlerNotifier (OpalEndPoint, NewIncomingConnection) | |
virtual void | OnNewConnection (OpalCall &call, OpalConnection &connection) |
virtual PBoolean | OnSetUpConnection (OpalConnection &connection) |
virtual PBoolean | OnIncomingConnection (OpalConnection &connection, unsigned options, OpalConnection::StringOptions *stringOptions) |
virtual void | OnProceeding (OpalConnection &connection) |
virtual void | OnAlerting (OpalConnection &connection, bool withMedia) |
virtual void | OnAlerting (OpalConnection &connection) |
virtual OpalConnection::AnswerCallResponse | OnAnswerCall (OpalConnection &connection, const PString &caller) |
virtual void | OnConnected (OpalConnection &connection) |
virtual void | OnEstablished (OpalConnection &connection) |
virtual void | OnReleased (OpalConnection &connection) |
virtual void | OnHold (OpalConnection &connection, bool fromRemote, bool onHold) |
virtual void | OnHold (OpalConnection &connection) |
virtual PBoolean | OnForwarded (OpalConnection &connection, const PString &remoteParty) |
virtual bool | OnTransferNotify (OpalConnection &connection, const PStringToString &info, const OpalConnection *transferringConnection) |
virtual PBoolean | ClearCall (const PString &token, OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser, PSyncPoint *sync=NULL) |
virtual PBoolean | ClearCallSynchronous (const PString &token, OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser, PSyncPoint *sync=NULL) |
virtual void | ClearAllCalls (OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser, PBoolean wait=true) |
PSafePtr< OpalConnection > | GetConnectionWithLock (const PString &token, PSafetyMode mode=PSafeReadWrite) const |
template<class ConnClass > | |
PSafePtr< ConnClass > | GetConnectionWithLockAs (const PString &token, PSafetyMode mode=PSafeReadWrite) const |
PStringList | GetAllConnections () |
PINDEX | GetConnectionCount () const |
virtual PBoolean | HasConnection (const PString &token) |
virtual void | DestroyConnection (OpalConnection *connection) |
virtual void | AdjustMediaFormats (bool local, const OpalConnection &connection, OpalMediaFormatList &mediaFormats) const |
virtual bool | GetMediaTransportAddresses (const OpalConnection &provider, const OpalConnection &consumer, unsigned sessionId, const OpalMediaType &mediaType, OpalTransportAddressArray &transports) const |
virtual PBoolean | OnOpenMediaStream (OpalConnection &connection, OpalMediaStream &stream) |
virtual void | OnClosedMediaStream (const OpalMediaStream &stream) |
virtual void | OnFailedMediaStream (OpalConnection &connection, bool fromRemote, const PString &reason) |
void | SetMediaCryptoSuites (const PStringArray &security) |
PStringArray | GetMediaCryptoSuites () const |
virtual PStringArray | GetAllMediaCryptoSuites () const |
virtual void | OnUserInputString (OpalConnection &connection, const PString &value) |
virtual void | OnUserInputTone (OpalConnection &connection, char tone, int duration) |
virtual PString | ReadUserInput (OpalConnection &connection, const char *terminators="#\r\n", unsigned lastDigitTimeout=4, unsigned firstDigitTimeout=30) |
virtual PBoolean | Message (const PString &to, const PString &body) |
virtual PBoolean | Message (const PURL &to, const PString &type, const PString &body, PURL &from, PString &conversationId) |
virtual PBoolean | Message (OpalIM &Message) |
virtual void | OnMessageReceived (const OpalIM &message) |
virtual void | OnMWIReceived (const PString &party, OpalManager::MessageWaitingType type, const PString &extraInfo) |
virtual bool | GetConferenceStates (OpalConferenceStates &states, const PString &name=PString::Empty()) const |
virtual void | OnConferenceStatusChanged (OpalEndPoint &endpoint, const PString &uri, OpalConferenceState::ChangeType change) |
virtual PStringList | GetNetworkURIs (const PString &name) const |
virtual PBoolean | GarbageCollection () |
OpalManager & | GetManager () const |
const PString & | GetPrefixName () const |
bool | HasAttribute (Attributes opt) const |
const OpalProductInfo & | GetProductInfo () const |
void | SetProductInfo (const OpalProductInfo &info) |
const PString & | GetDefaultLocalPartyName () const |
virtual void | SetDefaultLocalPartyName (const PString &name) |
const PString & | GetDefaultDisplayName () const |
void | SetDefaultDisplayName (const PString &name) |
OpalBandwidth | GetInitialBandwidth (OpalBandwidth::Direction dir) const |
bool | SetInitialBandwidth (OpalBandwidth::Direction dir, OpalBandwidth bandwidth) |
const OpalListenerList & | GetListeners () const |
const OpalConnection::StringOptions & | GetDefaultStringOptions () const |
void | SetDefaultStringOptions (const OpalConnection::StringOptions &opts, bool overwrite=false) |
void | SetDefaultStringOption (const PCaselessString &key, const PString &data) |
void | RemoveDefaultStringOption (const PCaselessString &key) |
virtual PStringList | GetAvailableStringOptions () const |
OpalConnection::SendUserInputModes | GetSendUserInputMode () const |
void | SetSendUserInputMode (OpalConnection::SendUserInputModes mode) |
const PIPSocket::QoS & | GetSignalQoS () const |
void | SetSignalQoS (const PIPSocket::QoS &qos) |
const PIPSocket::QoS & | GetMediaQoS (const OpalMediaType &type) const |
void | SetMediaQoS (const OpalMediaType &type, const PIPSocket::QoS &qos) |
PINDEX | GetMaxSizeUDP () const |
void | SetMaxSizeUDP (PINDEX size) |
Socket media endpoint. This simply routes media to/from tcp/udp sockets
OpalSockEndPoint::OpalSockEndPoint | ( | OpalManager & | manager, |
const char * | prefix = OPAL_SOCK_PREFIX |
||
) |
Create a new endpoint.
manager | Manager of all endpoints. |
prefix | Prefix for URL style address strings |
OpalSockEndPoint::~OpalSockEndPoint | ( | ) |
Destroy endpoint.
|
virtual |
Create a connection for the PCSS endpoint. The default implementation is to create a OpalLocalConnection.
call | Owner of connection |
userData | Arbitrary data to pass to connection |
options | Option bit mask to pass to connection |
stringOptions | Options to pass to connection |
Reimplemented from OpalLocalEndPoint.
|
virtual |
Set up a connection to a remote party. This is called from the OpalManager::MakeConnection() function once it has determined that this is the endpoint for the protocol.
The general form for this party parameter is:
[proto:][alias@][transport$]address[:port]
where the various fields will have meanings specific to the endpoint type. For example, with H.323 it could be "h323:Fred@site.com" which indicates a user Fred at gatekeeper size.com. Whereas for the PSTN endpoint it could be "pstn:5551234" which is to call 5551234 on the first available PSTN line.
The proto field is optional when passed to a specific endpoint. If it is present, however, it must agree with the endpoints protocol name or false is returned.
This function usually returns almost immediately with the connection continuing to occur in a new background thread.
If false is returned then the connection could not be established. For example if a PSTN endpoint is used and the assiciated line is engaged then it may return immediately. Returning a non-NULL value does not mean that the connection will succeed, only that an attempt is being made.
The default behaviour is pure.
call | Owner of connection |
party | Remote party to call |
userData | Arbitrary data to pass to connection |
options | options to pass to conneciton |
stringOptions | Options to pass to connection |
Reimplemented from OpalLocalEndPoint.