diff options
author | Henri Herscher <henri@oreka.org> | 2006-12-28 16:37:45 +0000 |
---|---|---|
committer | Henri Herscher <henri@oreka.org> | 2006-12-28 16:37:45 +0000 |
commit | 53907f2d9156e7a0a2644f04f7eb507a2a48e9aa (patch) | |
tree | a1f657abe2b3d6a40491028e352b8e60471161a1 /orkbasecxx | |
parent | 320f2a9dd5fd59b09e1977aa1f9344e219bf3d1a (diff) |
SIP Session metadata can now be updated when a new RTP stream is seen that matches one of the INVITE messages associated with the session. When this happens, a new tape message with stage=update is generated with the updated metadata.
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@381 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkbasecxx')
-rw-r--r-- | orkbasecxx/AudioCapture.cpp | 6 | ||||
-rw-r--r-- | orkbasecxx/AudioCapture.h | 4 | ||||
-rw-r--r-- | orkbasecxx/AudioTape.cpp | 2 |
3 files changed, 10 insertions, 2 deletions
diff --git a/orkbasecxx/AudioCapture.cpp b/orkbasecxx/AudioCapture.cpp index 7a46739..d09f1cb 100644 --- a/orkbasecxx/AudioCapture.cpp +++ b/orkbasecxx/AudioCapture.cpp @@ -236,6 +236,8 @@ CStdString CaptureEvent::EventTypeToString(int eventTypeEnum) return ET_ENDMETADATA; case EtReady: return ET_READY; + case EtUpdate: + return ET_UPDATE; } return ET_INVALID; } @@ -299,6 +301,10 @@ int CaptureEvent::EventTypeToEnum(CStdString& eventTypeString) { eventTypeEnum = EtReady; } + else if (eventTypeString.CompareNoCase(ET_UPDATE) == 0) + { + eventTypeEnum = EtUpdate; + } return eventTypeEnum; } diff --git a/orkbasecxx/AudioCapture.h b/orkbasecxx/AudioCapture.h index 52485c7..8a02e1c 100644 --- a/orkbasecxx/AudioCapture.h +++ b/orkbasecxx/AudioCapture.h @@ -127,6 +127,7 @@ public: #define ET_ORKUID "orkuid" #define ET_ENDMETADATA "endmetadata" #define ET_READY "ready" +#define ET_UPDATE "update" #define ET_INVALID "invalid" typedef enum { @@ -145,7 +146,8 @@ public: EtOrkUid = 12, EtEndMetadata = 13, EtReady = 14, - EtInvalid = 15 + EtUpdate = 15, + EtInvalid = 16 } EventTypeEnum; static CStdString EventTypeToString(int eventTypeEnum); static int EventTypeToEnum(CStdString&); diff --git a/orkbasecxx/AudioTape.cpp b/orkbasecxx/AudioTape.cpp index ad6b95c..f26ec94 100644 --- a/orkbasecxx/AudioTape.cpp +++ b/orkbasecxx/AudioTape.cpp @@ -292,7 +292,7 @@ void AudioTape::GetMessage(MessageRef& msgRef) msgRef.reset(new TapeMsg); TapeMsg* pTapeMsg = (TapeMsg*)msgRef.get(); - if(captureEventRef->m_type == CaptureEvent::EtStop || captureEventRef->m_type == CaptureEvent::EtStart || captureEventRef->m_type == CaptureEvent::EtReady) + if(captureEventRef->m_type == CaptureEvent::EtStop || captureEventRef->m_type == CaptureEvent::EtStart || captureEventRef->m_type == CaptureEvent::EtReady || captureEventRef->m_type == CaptureEvent::EtUpdate) { pTapeMsg->m_recId = m_fileIdentifier; pTapeMsg->m_fileName = m_filePath + m_fileIdentifier + m_fileExtension; |