MCPcopy Create free account
hub / github.com/RangeNetworks/openbts / dialogPeriodicService

Method dialogPeriodicService

SIP/SIPDialog.cpp:829–855  ·  view source on GitHub ↗

Called periodicially to check for SIP timer expiration.

Source from the content-addressed store, hash-verified

827
828// Called periodicially to check for SIP timer expiration.
829bool SipDialog::dialogPeriodicService()
830{
831 // Take care. This is a potential deadlock if somone tries to add a locked SipDialog into the DialogMap,
832 // because the kicker code locks the whole DialogMap against modification.
833 ScopedLock lock(mDialogLock,__FILE__,__LINE__);
834 // Now we use TransactionUsers for client transactions, so this code handles only server transactions.
835 // The in-dialog server transactions are trivial - the transaction-layer simply resends the final
836 // response each time the request is received.
837 switch (mDialogType) {
838 case SIPDTUndefined:
839 case SIPDTRegister:
840 case SIPDTUnregister:
841 // FIXME: I dont think we delete these, ever.
842 break;
843 case SIPDTMTSMS:
844 case SIPDTMTC:
845 return mtPeriodicService();
846 break;
847 case SIPDTMOSMS:
848 case SIPDTMOC:
849 case SIPDTMOUssd:
850 return moPeriodicService();
851 break;
852 //default: break;
853 }
854 return false;
855}
856
857
858const char *DialogState::msgStateString(DialogState::msgState dstate)

Callers 1

dmPeriodicServiceMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected