[svn-commits] jrose: testsuite/asterisk/trunk r4547 - in /asterisk/trunk/tests/channels/pjs...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Thu Jan 9 17:54:03 CST 2014
Author: jrose
Date: Thu Jan 9 17:54:01 2014
New Revision: 4547
URL: http://svnview.digium.com/svn/testsuite?view=rev&rev=4547
Log:
Testsuite: Add PJSIP hold and unhold tests
review: https://reviewboard.asterisk.org/r/3105/
Added:
asterisk/trunk/tests/channels/pjsip/hold/
asterisk/trunk/tests/channels/pjsip/hold/configs/
asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/
asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf (with props)
asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf (with props)
asterisk/trunk/tests/channels/pjsip/hold/run-test (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/
asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml (with props)
asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_unhold_sans_sdp.xml (with props)
asterisk/trunk/tests/channels/pjsip/hold/test-config.yaml (with props)
Modified:
asterisk/trunk/tests/channels/pjsip/tests.yaml
Added: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf Thu Jan 9 17:54:01 2014
@@ -1,0 +1,9 @@
+[general]
+PHONE_TO_DIAL=PJSIP/phone_B
+
+[default]
+; Dial with no options; use bridge set up based on peer definitions
+exten => basicdial,1,NoOp()
+ same => n,Dial(PJSIP/phone_B,,g)
+ same => n,UserEvent(TestStatus, extension: basicdial)
+ same => n,Hangup()
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/extensions.conf
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf Thu Jan 9 17:54:01 2014
@@ -1,0 +1,28 @@
+[local]
+type=transport
+protocol=udp
+bind=127.0.0.1:5060
+
+[phone_A]
+type=aor
+contact=sip:phone_A at 127.0.0.2:5060
+
+[phone_A]
+type=endpoint
+aors=phone_A
+context=default
+disallow=all
+allow=ulaw
+direct_media=no
+
+[phone_B]
+type=aor
+contact=sip:phone_B at 127.0.0.3:5060
+
+[phone_B]
+type=endpoint
+aors=phone_B
+context=default
+disallow=all
+allow=ulaw
+direct_media=no
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/configs/ast1/pjsip.conf
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/run-test
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/run-test?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/run-test (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/run-test Thu Jan 9 17:54:01 2014
@@ -1,0 +1,174 @@
+#!/usr/bin/env python
+'''
+Copyright (C) 2014, Digium, Inc.
+Jonathan Rose <jrose at digium.com>
+
+This program is free software, distributed under the terms of
+the GNU General Public License Version 2.
+'''
+
+import sys
+import logging
+
+sys.path.append("lib/python")
+
+from asterisk.TestCase import TestCase
+from asterisk.sipp import SIPpScenario
+from twisted.internet import reactor
+
+logger = logging.getLogger(__name__)
+INJECT_FILE = "inject.csv"
+
+
+class SIPHold(TestCase):
+ def __init__(self):
+ TestCase.__init__(self)
+ self.create_asterisk()
+
+ self.sipp_scn_phone_a = [{'scenario': 'phone_A.xml',
+ '-i': '127.0.0.2', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_A.xml',
+ '-i': '127.0.0.2', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_A.xml',
+ '-i': '127.0.0.2', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_A.xml',
+ '-i': '127.0.0.2', '-p': '5060',
+ '-inf': INJECT_FILE}]
+ self.sipp_scn_phone_b = [{'scenario': 'phone_B_media_restrict.xml',
+ '-i': '127.0.0.3', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_B_unhold_sans_sdp.xml',
+ '-i': '127.0.0.3', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_B_IP_restrict.xml',
+ '-i': '127.0.0.3', '-p': '5060',
+ '-inf': INJECT_FILE},
+ {'scenario': 'phone_B_IP_media_restrict.xml',
+ '-i': '127.0.0.3', '-p': '5060',
+ '-inf': INJECT_FILE}]
+
+ self.passed = True
+ self.moh_start_events = 0
+ self.moh_stop_events = 0
+ self.hold_events = 0
+ self.unhold_events = 0
+ self.user_events = 0
+ self.__test_counter = 0
+
+ def ami_connect(self, ami):
+ TestCase.ami_connect(self, ami)
+ ami.registerEvent('UserEvent', self.user_event_handler)
+
+ ami.registerEvent('MusicOnHoldStart', self.moh_start_event_handler)
+ ami.registerEvent('MusicOnHoldStop', self.moh_stop_event_handler)
+
+ ami.registerEvent('Hold', self.hold_event_handler)
+ ami.registerEvent('Unhold', self.unhold_event_handler)
+
+ logger.info("Starting SIP scenario")
+ self.execute_scenarios()
+
+ def execute_scenarios(self):
+ def __check_scenario_a(result):
+ self.__a_finished = True
+ return result
+
+ def __check_scenario_b(result):
+ self.__b_finished = True
+ return result
+
+ def __execute_next_scenario(result):
+ if self.__a_finished and self.__b_finished:
+ self.__test_counter += 1
+ self.reset_timeout()
+ self.execute_scenarios()
+ return result
+
+ if self.__test_counter == len(self.sipp_scn_phone_a):
+ logger.info("All scenarios executed")
+ return
+
+ sipp_a = SIPpScenario(self.test_name,
+ self.sipp_scn_phone_a[self.__test_counter])
+ sipp_b = SIPpScenario(self.test_name,
+ self.sipp_scn_phone_b[self.__test_counter])
+
+ # Start up the listener first - Phone A calls Phone B
+ self.__a_finished = False
+ self.__b_finished = False
+ db = sipp_b.run(self)
+ da = sipp_a.run(self)
+
+ da.addCallback(__check_scenario_a)
+ da.addCallback(__execute_next_scenario)
+ db.addCallback(__check_scenario_b)
+ db.addCallback(__execute_next_scenario)
+
+ def user_event_handler(self, ami, event):
+ self.user_events += 1
+ if (self.user_events == len(self.sipp_scn_phone_a)):
+ logger.info("All user events received; stopping reactor")
+ self.stop_reactor()
+
+ def moh_start_event_handler(self, ami, event):
+ logger.debug("Received MOH start event")
+ self.moh_start_events += 1
+
+ def moh_stop_event_handler(self, ami, event):
+ logger.debug("Received MOH stop event")
+ self.moh_stop_events += 1
+
+ def hold_event_handler(self, ami, event):
+ logger.debug("Recieved Hold event")
+ self.hold_events += 1
+
+ def unhold_event_handler(self, ami, event):
+ logger.debug("Received Unhold event")
+ self.unhold_events += 1
+
+ def run(self):
+ TestCase.run(self)
+ self.create_ami_factory()
+
+
+def main():
+ test = SIPHold()
+ test.start_asterisk()
+ reactor.run()
+ test.stop_asterisk()
+
+ if (test.moh_start_events != len(test.sipp_scn_phone_a)):
+ logger.error("Failed to receive %d MOH start events (received %d)" %
+ (len(test.sipp_scn_phone_a), test.moh_start_events))
+ test.passed = False
+ if (test.moh_stop_events != len(test.sipp_scn_phone_a)):
+ logger.error("Failed to receive %d MOH stop events (received %d)" %
+ (len(test.sipp_scn_phone_a), test.moh_stop_events))
+ test.passed = False
+ if (test.hold_events != len(test.sipp_scn_phone_a)):
+ logger.error("Failed to receive %d Hold events (received %d)" %
+ (len(test.sipp_scn_phone_a), test.hold_events))
+ test.passed = False
+ if (test.unhold_events != len(test.sipp_scn_phone_a)):
+ logger.error("Failed to receive %d Unhold events (received %d)" %
+ (len(test.sipp_scn_phone_a), test.unhold_events))
+ test.passed = False
+ if (test.user_events != len(test.sipp_scn_phone_a)):
+ logger.error("Failed to receive %d user test events (received %d)" %
+ (len(test.sipp_scn_phone_a), test.user_events))
+ test.passed = False
+
+ if test.passed:
+ return 0
+ else:
+ return 1
+
+
+if __name__ == "__main__":
+ sys.exit(main())
+
+
+# vim:sw=4:ts=4:expandtab:textwidth=79
Propchange: asterisk/trunk/tests/channels/pjsip/hold/run-test
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/run-test
------------------------------------------------------------------------------
svn:executable = *
Propchange: asterisk/trunk/tests/channels/pjsip/hold/run-test
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/run-test
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv Thu Jan 9 17:54:01 2014
@@ -1,0 +1,2 @@
+SEQUENTIAL
+phone_A;phone_B;basicdial
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/inject.csv
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml Thu Jan 9 17:54:01 2014
@@ -1,0 +1,92 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Phone A Hold with IP and Media Restrictions">
+
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field2]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[call_number]
+ To: <sip:[field2]@[remote_ip]:[remote_port];user=phone>
+ CSeq: 1 INVITE
+ Call-ID: [call_id]
+ Contact: <sip:[field0]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1324901698 1324901698 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendrecv
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="180" optional="true" />
+
+ <recv response="183" optional="true" />
+
+ <recv response="200" />
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field0] <sip:[field0]@[remote_ip]>;tag=[call_number]
+ To: <sip:[field1]@[remote_ip];user=phone>[peer_tag_param]
+ CSeq: 1 ACK
+ Call-ID: [call_id]
+ Contact: <sip:[field0]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <recv request="BYE"/>
+
+ <send retrans="500">
+ <![CDATA[
+ SIP/2.0 200 OK
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field0]@[local_ip]:[local_port];transport=[transport]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ Supported: 100rel,replaces
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1324901698 1324901698 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendrecv
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+</scenario>
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_A.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml Thu Jan 9 17:54:01 2014
@@ -1,0 +1,220 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Phone B Hold with IP and Media Restrictions">
+ <Global variables="global_call_id"/>
+ <Global variables="prime_tag"/>
+
+ <recv request="INVITE" crlf="true">
+ <action>
+ <ereg regexp=".*"
+ header="Call-ID:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="global_call_id"/>
+ <ereg regexp="tag=.*"
+ header="From:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="prime_tag"/>
+ </action>
+ </recv>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 100 Trying
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 180 Ringing
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Allow-Events: talk,hold,conference
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <pause milliseconds="200"/>
+
+ <send retrans="500">
+ <![CDATA[
+ SIP/2.0 200 OK
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ Supported: 100rel,replaces
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendonly
+ m=audio 2226 RTP/AVP 0 101
+ a=sendonly
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <!-- RECV ACK -->
+ <recv request="ACK"/>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="3000"/>
+
+ <!-- Modify RTP session to be send only -->
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 0.0.0.0
+ t=0 0
+ m=audio 2226 RTP/AVP 0 101
+ a=sendonly
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <pause milliseconds="200"/>
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time, then send the un-hold -->
+ <pause milliseconds="3000"/>
+
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003605 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendrecv
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="500"/>
+
+ <send>
+ <![CDATA[
+ BYE sip:[field1]@1[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/UDP [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>[peer_tag_param]
+ CSeq: [cseq] BYE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+
+</scenario>
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_media_restrict.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml Thu Jan 9 17:54:01 2014
@@ -1,0 +1,220 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Phone B Hold with IP and Media Restrictions">
+ <Global variables="global_call_id"/>
+ <Global variables="prime_tag"/>
+
+ <recv request="INVITE" crlf="true">
+ <action>
+ <ereg regexp=".*"
+ header="Call-ID:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="global_call_id"/>
+ <ereg regexp="tag=.*"
+ header="From:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="prime_tag"/>
+ </action>
+ </recv>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 100 Trying
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 180 Ringing
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Allow-Events: talk,hold,conference
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <pause milliseconds="200"/>
+
+ <send retrans="500">
+ <![CDATA[
+ SIP/2.0 200 OK
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ Supported: 100rel,replaces
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendonly
+ m=audio 2226 RTP/AVP 0 101
+ a=sendonly
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <!-- RECV ACK -->
+ <recv request="ACK"/>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="2000"/>
+
+ <!-- Modify RTP session to be send only -->
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 0.0.0.0
+ t=0 0
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <pause milliseconds="200"/>
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time, then send the un-hold -->
+ <pause milliseconds="2000"/>
+
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003605 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendrecv
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="2000"/>
+
+ <send>
+ <![CDATA[
+ BYE sip:[field1]@1[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/UDP [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>[peer_tag_param]
+ CSeq: [cseq] BYE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+
+</scenario>
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_IP_restrict.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml Thu Jan 9 17:54:01 2014
@@ -1,0 +1,221 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Phone B Hold with Media Restrictions">
+ <Global variables="global_call_id"/>
+ <Global variables="prime_tag"/>
+
+ <recv request="INVITE" crlf="true">
+ <action>
+ <ereg regexp=".*"
+ header="Call-ID:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="global_call_id"/>
+ <ereg regexp="tag=.*"
+ header="From:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="prime_tag"/>
+ </action>
+ </recv>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 100 Trying
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 180 Ringing
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Allow-Events: talk,hold,conference
+ Accept-Language: en
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <pause milliseconds="200"/>
+
+ <send retrans="500">
+ <![CDATA[
+ SIP/2.0 200 OK
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ Supported: 100rel,replaces
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendonly
+ m=audio 2226 RTP/AVP 0 101
+ a=sendonly
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <!-- RECV ACK -->
+ <recv request="ACK"/>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="3000"/>
+
+ <!-- Modify RTP session to be send only -->
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003604 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendonly
+ m=audio 2226 RTP/AVP 0 101
+ a=sendonly
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <pause milliseconds="200"/>
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time, then send the un-hold -->
+ <pause milliseconds="3000"/>
+
+ <send retrans="500">
+ <![CDATA[
+ INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>;[$prime_tag]
+ CSeq: [cseq] INVITE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Supported: 100rel,replaces
+ Allow-Events: talk,hold,conference
+ Max-Forwards: 70
+ Content-Type: application/sdp
+ Content-Length: [len]
+
+ v=0
+ o=- 1325003603 1325003605 IN IP4 [local_ip]
+ s=Polycom IP Phone
+ c=IN IP4 [local_ip]
+ t=0 0
+ a=sendrecv
+ m=audio 2226 RTP/AVP 0 101
+ a=sendrecv
+ a=rtpmap:0 PCMU/8000
+ a=rtpmap:101 telephone-event/8000
+ ]]>
+ </send>
+
+ <recv response="100" optional="true" />
+
+ <recv response="200" />
+
+ <send>
+ <![CDATA[
+ ACK sip:[field1]@[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]>;tag=[call_number]
+ To: <sip:[field0]@[remote_ip];user=[field0]>[peer_tag_param]
+ CSeq: [cseq] ACK
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+ <!-- Wait some period of time -->
+ <pause milliseconds="500"/>
+
+ <send>
+ <![CDATA[
+ BYE sip:[field1]@1[remote_ip]:[remote_port] SIP/2.0
+ Via: SIP/2.0/UDP [local_ip]:[local_port];branch=[branch]
+ From: [field1] <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
+ To: [field0] <sip:[field1]@[remote_ip]>[peer_tag_param]
+ CSeq: [cseq] BYE
+ Call-ID: [$global_call_id]
+ Contact: <sip:[field1]@[local_ip]:[local_port]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Max-Forwards: 70
+ Content-Length: 0
+ ]]>
+ </send>
+
+
+</scenario>
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_media_restrict.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_unhold_sans_sdp.xml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_unhold_sans_sdp.xml?view=auto&rev=4547
==============================================================================
--- asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_unhold_sans_sdp.xml (added)
+++ asterisk/trunk/tests/channels/pjsip/hold/sipp/phone_B_unhold_sans_sdp.xml Thu Jan 9 17:54:01 2014
@@ -1,0 +1,209 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Phone B Hold">
+ <Global variables="global_call_id"/>
+ <Global variables="prime_tag"/>
+
+ <recv request="INVITE" crlf="true">
+ <action>
+ <ereg regexp=".*"
+ header="Call-ID:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="global_call_id"/>
+ <ereg regexp="tag=.*"
+ header="From:"
+ search_in="hdr"
+ check_it="true"
+ assign_to="prime_tag"/>
+ </action>
+ </recv>
+
+ <send>
+ <![CDATA[
+ SIP/2.0 100 Trying
+ [last_Via:]
+ [last_From:]
+ [last_To:];tag=[call_number]
+ [last_Call-ID:]
+ [last_CSeq:]
+ Contact: <sip:[field1]@[local_ip]:[local_port];transport=[transport]>
+ User-Agent: PolycomSoundPointIP-SPIP_430-UA/3.2.3.1734
+ Accept-Language: en
+ Content-Length: 0
[... 235 lines stripped ...]
More information about the svn-commits
mailing list