summaryrefslogtreecommitdiff
path: root/orkaudio/audiocaptureplugins/voip/VoIp.cpp
AgeCommit message (Collapse)Author
2009-11-27Added support for captured packets of with 802.1Q Virtual LAN headersHEADmasterbeg_g
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@658 09dcff7a-b715-0410-9601-b79a96267cd0
2009-10-22Multiple corrections to code to suppress gcc warnings - identified by ↵beg_g
Tzafrir Cohen. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@649 09dcff7a-b715-0410-9601-b79a96267cd0
2009-10-19Added support for the SIP response "302 Moved Temporarily". The way this ↵beg_g
works is that the "Contact" header is mapped to the "To" header such that a subsequent INVITE based on the "302 Moved Temporarily" response shall have the correct remote party parameter. This functionality is by default enabled and can be disabled by setting the parameter Sip302MovedTemporarilySupport to 'false'. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@647 09dcff7a-b715-0410-9601-b79a96267cd0
2009-09-23Demoted PartyMap log statement from WARN to INFO.henrih
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@642 09dcff7a-b715-0410-9601-b79a96267cd0
2009-09-08Modified the skinny code so that when CallInfo is received for a call which ↵Gerald Begumisa
has been forwarded, we use the endpoint extension as the local party, and set the local entry point to the local party which would have been extracted from the CallInfo for an ordinary (non-forwarded) call. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@640 09dcff7a-b715-0410-9601-b79a96267cd0
2009-09-02Adjusted recording strategy for Asterisk-DAHDI channels, to now obtain the ↵Gerald Begumisa
remote party from the SIP BYE, as opposed to the INVITE as was originally the case. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@639 09dcff7a-b715-0410-9601-b79a96267cd0
2009-08-18Added support for recording of Asterisk-DAHDI channels using Xorcom's ↵Gerald Begumisa
Asterisk patch. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@635 09dcff7a-b715-0410-9601-b79a96267cd0
2009-08-14Modified the orkaudio API for StartCapture and PauseCapture to carry out ↵Gerald Begumisa
their respective operations when the nativecallid is supplied. Added a new API, StopCapture, which causes a session to stop when any of the party, orkuid or nativecallid is provided as a parameter. This API is different from the PauseCapture API in the sense that it actually causes a session to stop and the WAV file is produced. After calling StopCapture, the session cannot be re-started with the StartCapture API (record). git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@633 09dcff7a-b715-0410-9601-b79a96267cd0
2009-07-31Added new configuration parameter, Cucm7-1Mode, which if set to "true" in ↵Gerald Begumisa
the VoIpPlugin section of config.xml, shall activate special parsing of the StartMediaTransmission, OpenReceiveChannelAck and CallInfo messages, which is specific to Cisco Unified Call Manager v7.1. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@632 09dcff7a-b715-0410-9601-b79a96267cd0
2009-07-24Added new configuration parameter, SipTreat200OkAsInvite, which causes SIP ↵Gerald Begumisa
200 OK packets to be treates as INVITEs. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@631 09dcff7a-b715-0410-9601-b79a96267cd0
2009-07-21SIP header parsing fix so that fields are searched in a case insensitive ↵Henri Herscher
way, including the first character. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@630 09dcff7a-b715-0410-9601-b79a96267cd0
2009-07-16Switched from custom Trim() function to CStdString Trim()Gerald Begumisa
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@626 09dcff7a-b715-0410-9601-b79a96267cd0
2009-07-10Implemented a localpartymap feature whereby a local party value may be ↵Gerald Begumisa
swapped for another value. To use this feature, the mappings should be added to a file called localpartymap.csv, placed in /etc/orkaudio or in the directory where the orkaudio executable is. The format of localpartymap.csv should be oldlocalparty, newlocalparty - with only one mapping entry per line. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@625 09dcff7a-b715-0410-9601-b79a96267cd0
2009-06-23Added SipDirectionReferenceUserAgents VoIp config parameter. Any SIP INVITE ↵Henri Herscher
with User Agent field matching an entry in this list will be considered incoming. Populated by default with "Asterisk". git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@624 09dcff7a-b715-0410-9601-b79a96267cd0
2009-06-11Added PartiesUseName configuration parameter so that it is possible to ↵Henri Herscher
report name instead of number for local and remote parties. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@622 09dcff7a-b715-0410-9601-b79a96267cd0
2009-06-03Added methods SetOnHold and SetOffHold to orkaudio API for capture plugins. ↵Gerald Begumisa
Implemented this change in VoIp plugin. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@618 09dcff7a-b715-0410-9601-b79a96267cd0
2009-05-21Ccm5CallInfoMessage: now reports local extension instead of local general ↵Henri Herscher
number in oubound cases. Both calling and called party names are now extracted. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@614 09dcff7a-b715-0410-9601-b79a96267cd0
2009-05-15Added support for setting the SIP request URI as local party. If the SIP ↵Gerald Begumisa
request URI differs from the SIP URI in the "To:" header field, then the local party is set to the SIP request URI, remote party to the "From:" header field, direction to "in", Local entry point to the "To:" header field. This behaviour may be turned off by setting the configuration parameter SipRequestUriAsLocalParty to "false" under the VoIpPlugin section of config.xml. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@611 09dcff7a-b715-0410-9601-b79a96267cd0
2009-03-26Calling party name extraction from Ccm5CallInfo now done regardless of ↵Henri Herscher
SkinnyNameAsLocalParty. Calling and called pary name now logged where applicable. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@608 09dcff7a-b715-0410-9601-b79a96267cd0
2009-03-02Modified the record command to return the orkuid for the ongoing call which ↵Gerald Begumisa
matches git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@606 09dcff7a-b715-0410-9601-b79a96267cd0
2009-02-20Fixed MemFindAfter() so that it never searches beyond the end of packet.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@605 09dcff7a-b715-0410-9601-b79a96267cd0
2009-02-20SIP ACK method is now taken into account as if it was an INVITE.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@604 09dcff7a-b715-0410-9601-b79a96267cd0
2009-02-06Fixed x86_64 orkaudio compilation error.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@603 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-27Now logging pcap error message even if success. It seems there might be some ↵Henri Herscher
useful info in there in some cases. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@601 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-27Fixed potential startup crash. Some pcap functions take an existing data ↵Henri Herscher
buffer for error message, null was passed. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@600 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-23Fixed WIN32 compilation problem.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@599 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-21VoIP plugin has been updated with a new configuration parameter, ↵Gerald Begumisa
SipReportNamesAsTags, to be configured under the VoIpPlugin section of config.xml. When set to 'true', the SIP from: and to: names are extracted and reported as tags. The tag keys used are localname and remotename which correspond to the respective localparty and remoteparty values which are already reported. These tags may, therefore, be used when providing custom names to recordings. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@597 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-07Modified the orkaudio API, adding the record and pause HTTP commands. The ↵Gerald Begumisa
record command commences or un-pauses recording while the pause command pauses recording - discarding RTP packets from when the pause command is issued. Both commands require the orkuid and party to be specified as HTTP parameters. Note that this represents a change in the arguments required for the StartCapture function in DLLs. Also added an event streaming feature which streams out all tape messages as they are reported in real-time to a client connected. Clients should connect via HTTP, on port 59150. The port is configurable by setting the parameter EventStreamingServerPort in config.xml git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@590 09dcff7a-b715-0410-9601-b79a96267cd0
2009-01-06Added RtpBlockedIpRanges configuration parameter so that it is possible to ↵Henri Herscher
disregard certain IP ranges for RTP traffic without impacting signalling detection. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@588 09dcff7a-b715-0410-9601-b79a96267cd0
2008-12-10Added SipIgnoreBye configuration parameter. Improved BYE logging and made ↵Henri Herscher
sure 200 OK is only logged in the INFO level if it has valid SDP (otherwise DEBUG). git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@586 09dcff7a-b715-0410-9601-b79a96267cd0
2008-10-24UDP traffic is now monitored from port 1024 and up.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@565 09dcff7a-b715-0410-9601-b79a96267cd0
2008-10-23Modified VoIp capture plugin so that if any of the network devices being ↵Gerald Begumisa
captured from go offline, orkaudio does not simply stop but attempts to re-open the device. In such a case, orkaudio attempts to re-open the device after 60 seconds from when the device went offline. If it fails to re-open i.e is still offline, orkaudio shall keep trying every 60 seconds. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@564 09dcff7a-b715-0410-9601-b79a96267cd0
2008-10-14Fixed RTCP detection and I3 Interactive Intelligence mode (InInMode) ↵Henri Herscher
compilation under Windows. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@563 09dcff7a-b715-0410-9601-b79a96267cd0
2008-10-09Added RTCP support. Key functionality is the ability to set the local party ↵Gerald Begumisa
basing on the RTCP SDES information. A new configuration parameter, RtcpDetect, has been added. To enable RTCP, set RtcpDetect to true. This configuration should be done under the VoIpPlugin section of config.xml. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@562 09dcff7a-b715-0410-9601-b79a96267cd0
2008-10-07Fix win32 compilation error with recent SIP 183 session progress patch.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@560 09dcff7a-b715-0410-9601-b79a96267cd0
2008-09-11Added THR_DETACHED flag while creating the Pcap threads to solve memory leak ↵Gerald Begumisa
issue whereby memory for exited threads is not freed when they exit - pending a call to pthread_join() (or ACE equivalent) which is never called. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@559 09dcff7a-b715-0410-9601-b79a96267cd0
2008-08-27A new configuration parameter, SipDetectSessionProgress, has been added. ↵Gerald Begumisa
This parameter defaults to "true" and should be configured under the VoIpPlugin section of config.xml if it needs to be turned off. With this parameter set to "true", the SIP Session Progress message (SIP/2.0 183 Session Progress) is detected. The SDP in the message is used to force media address change on the session. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@557 09dcff7a-b715-0410-9601-b79a96267cd0
2008-08-21Adjusted the CCM5 packet parser to assume that Ccm5CallInfo packets have ↵Gerald Begumisa
parties section of variable length. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@556 09dcff7a-b715-0410-9601-b79a96267cd0
2008-08-05SIP is now also detected on port 8060 (as seen on Interactive Intelligence ↵Henri Herscher
platform). git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@555 09dcff7a-b715-0410-9601-b79a96267cd0
2008-07-17Added SkinnyCallInfoStopsPrevious config parameter. This allows a new ↵Henri Herscher
CallInfo to stop the previous session on the same Skinny endpoint and line instance. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@552 09dcff7a-b715-0410-9601-b79a96267cd0
2008-07-01A new configuration parameter, SkinnyNameAsLocalParty, has been added for ↵Gerald Begumisa
the VoIpConfig section in config.xml. When this parameter is set to true, the local party is reported as a name and not telephone number, where available in Skinny sessions. Another configuration parameter, SkinnyReportTags, has been added for the VoIpConfig section in config.xml. This parameter should be populated with a comma-separated list of Skinny variables to report. Initially supported values are 'localpartyname' and 'callmanager'. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@549 09dcff7a-b715-0410-9601-b79a96267cd0
2008-04-15Added support for the case where the SIP INVITE has no SDP - but SDP is to ↵Gerald Begumisa
be later obtained from a later SIP 200 OK. For this to work, set the parameter SipUse200OkMediaAddress to true (this should be configured under the VoIpPlugin section of config.xml). git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@534 09dcff7a-b715-0410-9601-b79a96267cd0
2008-03-06Changed the way direction is determined while recording SIP-based VoIP ↵Gerald Begumisa
sessions. A new configuration parameter, SipDomains, has been created and should be set under the VoIpPlugin section in config.xml. This parameter should contain a comma separated list of domains. So, if the domain of the SIP "from" URI matches any entry in this list, direction is set to "out". If the domain of the SIP "to" URI matches any entry in this list, direction is set to "in". If both domains of the "from" and "to" URIs match entries in this list, direction is set to "out" which is also the default case. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@527 09dcff7a-b715-0410-9601-b79a96267cd0
2008-02-20Logging improvement.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@525 09dcff7a-b715-0410-9601-b79a96267cd0
2008-02-18Added configuration variable <SkinnyTcpPort> for the <VoIpPlugin> section of ↵Gerald Begumisa
config.xml. This should be set to the port from which Skinny control traffic is expected. If not set, then defaults to 2000. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@522 09dcff7a-b715-0410-9601-b79a96267cd0
2008-01-21Fixed potential orkaudio crash when RTP payload type was 127.Henri Herscher
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@520 09dcff7a-b715-0410-9601-b79a96267cd0
2007-11-26Improved SIP error packet logging to include information from the session's ↵Gerald Begumisa
INVITE where possible git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@510 09dcff7a-b715-0410-9601-b79a96267cd0
2007-11-16Added support to 200 OK packets in the same fashion as INVITE packetsGerald Begumisa
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@507 09dcff7a-b715-0410-9601-b79a96267cd0
2007-11-06Added '*', '.', '-', '+' and '_' to the list of acceptable characters for ↵Henri Herscher
SIP URI user part. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@503 09dcff7a-b715-0410-9601-b79a96267cd0
2007-09-28Adjustment to solve a potential performance problem that could arise from ↵Gerald Begumisa
the load toll associated with repeated string comparison git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@498 09dcff7a-b715-0410-9601-b79a96267cd0