32 #ifndef OPAL_IAX2_IAX2EP_H 33 #define OPAL_IAX2_IAX2EP_H 114 unsigned short port = 4569
127 virtual PBoolean NewIncomingConnection(
160 virtual PSafePtr<OpalConnection> MakeConnection(
162 const PString & party,
163 void * userData = NULL,
164 unsigned int options = 0,
173 const PString & token,
175 const PString & remoteParty,
176 const PString & remotePartyName = PString::Empty()
184 PBoolean Initialise();
187 virtual void IncomingEthernetFrame (
IAX2Frame *frame);
194 PBoolean ConectionForFrameIsAlive(
IAX2Frame *f);
206 void ReportStoredConnections();
224 void SetLocalUserName(PString newValue);
227 void SetLocalNumber(PString newValue);
233 void SetPassword(PString newValue);
241 PBoolean ConnectionForFrameIsAlive(
IAX2Frame *f);
244 PINDEX GetOutSequenceNumberForStatusQuery();
247 void StartRinging(PString remoteCaller);
260 void NewIncomingConnection(
278 virtual void OnReleased(
301 void GetCodecLengths(PINDEX src, PINDEX &compressedBytes, PINDEX &duration);
325 static PStringArray DissectRemoteParty(
const PString & other);
330 void ProcessReceivedEthernetFrames();
334 void ReportTransmitterLists(PString & answer,
bool getFullReport =
false);
345 const PString & host,
346 const PString & username,
347 const PString & password = PString::Empty(),
348 PINDEX requestedRefreshTime = 60
352 RegisteredFailureUnknown
357 virtual void OnRegistered(
358 const PString & host,
359 const PString & userName,
366 const PString & host,
367 const PString & username);
370 UnregisteredFailureUnknown
377 virtual void OnUnregistered(
378 const PString & host,
379 const PString & userName,
385 PBoolean IsRegistered(
const PString & host,
const PString & username);
388 PINDEX GetRegistrationsCount();
392 const PString & host,
393 const PString & userName = PString::Empty(),
394 const PString & extension = PString::Empty(),
395 const PString & context = PString::Empty(),
396 const PString & transport = PString::Empty()
400 PBoolean
InitialisedOK() {
return (transmitter != NULL) && (receiver != NULL); }
405 {
return packetsReadFromEthernet.GetSize() > 0; }
462 PBoolean ProcessInMatchingConnection(
IAX2Frame *f);
472 PBoolean ProcessFrameInConnection(
IAX2Frame *f,
const PString & token);
480 PBoolean ProcessInConnectionTestAll(
IAX2Frame *f);
522 #endif // OPAL_IAX2_IAX2EP_H IAX2RemoteAddressFields
Definition: iax2ep.h:308
OpalMediaFormatList localMediaFormats
Definition: iax2ep.h:506
PBoolean keepGoing
Definition: iax2ep.h:97
Definition: endpoint.h:67
PMutex callNumbLock
Definition: iax2ep.h:431
void Assign(IAX2EndPoint *ep)
PString password
Definition: iax2ep.h:443
PString localUserName
Definition: iax2ep.h:437
PStringToString tokenTable
Definition: iax2ep.h:494
Definition: transports.h:703
Definition: transmit.h:63
PString localNumber
Definition: iax2ep.h:440
PArrayObjects regProcessors
Definition: iax2ep.h:515
PBoolean InitialisedOK()
Definition: iax2ep.h:400
Definition: specialprocessor.h:56
WORD ListenPortNumber()
Definition: iax2ep.h:209
PBoolean EthernetFramesToBeProcessed()
Definition: iax2ep.h:404
PString GetLocalUserName()
Definition: iax2ep.h:218
IAX2Transmit * transmitter
Definition: iax2ep.h:212
Definition: connection.h:462
PAtomicInteger callsEstablished
Definition: iax2ep.h:503
void ProcessList()
Definition: iax2ep.h:83
PSyncPoint activate
Definition: iax2ep.h:94
RegisteredError
Definition: iax2ep.h:351
PReadWriteMutex mutexTokenTable
Definition: iax2ep.h:499
PMutex statusQueryMutex
Definition: iax2ep.h:449
~IAX2IncomingEthernetFrames()
Definition: iax2ep.h:71
IAX2FrameList packetsReadFromEthernet
Definition: iax2ep.h:419
PMutex regProcessorsMutex
Definition: iax2ep.h:509
IAX2IncomingEthernetFrames()
Definition: processor.h:136
IAX2EndPoint * endpoint
Definition: iax2ep.h:91
IAX2SpecialProcessor * specialPacketHandler
Definition: iax2ep.h:453
int callnumbs
Definition: iax2ep.h:428
Definition: connection.h:353
PString & GetPassword()
Definition: iax2ep.h:230
unsigned short localPort
Definition: iax2ep.h:425
PString GetLocalNumber()
Definition: iax2ep.h:221
PINDEX statusQueryCounter
Definition: iax2ep.h:446
PTime callStartTime
Definition: iax2ep.h:434
IAX2Receiver * receiver
Definition: iax2ep.h:215
IAX2IncomingEthernetFrames incomingFrameHandler
Definition: iax2ep.h:415
Definition: receiver.h:60
PUDPSocket * sock
Definition: iax2ep.h:422
UnregisteredError
Definition: iax2ep.h:369