<p>George Joseph has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.asterisk.org/c/testsuite/+/19310">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">geolocation:  Add round-trip testsuite test<br><br>Change-Id: Ieb15c1eef4d94b0e3f7d0622e6d4559c8897a4c6<br>---<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/extensions.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/geolocation.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/pjsip.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/extensions.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/geolocation.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/pjsip.conf<br>A tests/channels/pjsip/geolocation/round-trip/gml/sipp/invite_gml.xml<br>A tests/channels/pjsip/geolocation/round-trip/gml/test-config.yaml<br>A tests/channels/pjsip/geolocation/round-trip/tests.yaml<br>M tests/channels/pjsip/geolocation/tests.yaml<br>10 files changed, 334 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/testsuite refs/changes/10/19310/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/extensions.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/extensions.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..196b02c</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/extensions.conf</span><br><span>@@ -0,0 +1,15 @@</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[predial]</span><br><span style="color: hsl(120, 100%, 40%);">+exten = s,1,NoOp(Predial)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Set(GEOLOC_PROFILE(location_info_refinement,a)=verticalAxis=99.99)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = Return()</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[postdial]</span><br><span style="color: hsl(120, 100%, 40%);">+exten = s,1,NoOp(Postdial)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Set(GEOLOC_PROFILE(location_info_refinement,a)=orientation=180)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = Return()</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[default]</span><br><span style="color: hsl(120, 100%, 40%);">+exten = bob,1,NoOp(Incoming call)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Dial(PJSIP/bob@ast2,10,B(predial^s^1)b(postdial^s^1))</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Hangup()</span><br><span>\ No newline at end of file</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/geolocation.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/geolocation.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..941c174</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/geolocation.conf</span><br><span>@@ -0,0 +1,5 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[alice]</span><br><span style="color: hsl(120, 100%, 40%);">+type = profile</span><br><span style="color: hsl(120, 100%, 40%);">+profile_precedence = discard_config</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+; ast2 uses the built-in <discard_config> profile</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/pjsip.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/pjsip.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..49bcf16</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast1/pjsip.conf</span><br><span>@@ -0,0 +1,56 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[system]</span><br><span style="color: hsl(120, 100%, 40%);">+type=system</span><br><span style="color: hsl(120, 100%, 40%);">+timer_t1=100</span><br><span style="color: hsl(120, 100%, 40%);">+timer_b=6400</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ipv4-tcp]</span><br><span style="color: hsl(120, 100%, 40%);">+type=transport</span><br><span style="color: hsl(120, 100%, 40%);">+protocol=tcp</span><br><span style="color: hsl(120, 100%, 40%);">+bind=127.0.0.1:5060</span><br><span style="color: hsl(120, 100%, 40%);">+symmetric_transport = yes</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[alice]</span><br><span style="color: hsl(120, 100%, 40%);">+type = aor</span><br><span style="color: hsl(120, 100%, 40%);">+max_contacts = 1</span><br><span style="color: hsl(120, 100%, 40%);">+contact = sip:127.0.0.3:5060</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[alice]</span><br><span style="color: hsl(120, 100%, 40%);">+type = endpoint</span><br><span style="color: hsl(120, 100%, 40%);">+aors = alice</span><br><span style="color: hsl(120, 100%, 40%);">+identify_by = ip,auth_username,username</span><br><span style="color: hsl(120, 100%, 40%);">+context = default</span><br><span style="color: hsl(120, 100%, 40%);">+transport = ipv4-tcp</span><br><span style="color: hsl(120, 100%, 40%);">+callerid = "Alice" <alice></span><br><span style="color: hsl(120, 100%, 40%);">+geoloc_incoming_call_profile = alice</span><br><span style="color: hsl(120, 100%, 40%);">+ice_support = false</span><br><span style="color: hsl(120, 100%, 40%);">+allow = (ulaw)</span><br><span style="color: hsl(120, 100%, 40%);">+direct_media = false</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[alice-identify]</span><br><span style="color: hsl(120, 100%, 40%);">+type = identify</span><br><span style="color: hsl(120, 100%, 40%);">+match = 127.0.0.3:5060/255.255.255.255</span><br><span style="color: hsl(120, 100%, 40%);">+srv_lookups = false</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint = alice</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast2]</span><br><span style="color: hsl(120, 100%, 40%);">+type = aor</span><br><span style="color: hsl(120, 100%, 40%);">+max_contacts = 1</span><br><span style="color: hsl(120, 100%, 40%);">+contact = sip:127.0.0.2:5060</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast2]</span><br><span style="color: hsl(120, 100%, 40%);">+type = endpoint</span><br><span style="color: hsl(120, 100%, 40%);">+aors = ast2</span><br><span style="color: hsl(120, 100%, 40%);">+identify_by = ip,auth_username,username</span><br><span style="color: hsl(120, 100%, 40%);">+context = default</span><br><span style="color: hsl(120, 100%, 40%);">+transport = ipv4-tcp</span><br><span style="color: hsl(120, 100%, 40%);">+geoloc_outgoing_call_profile = <discard_config></span><br><span style="color: hsl(120, 100%, 40%);">+ice_support = false</span><br><span style="color: hsl(120, 100%, 40%);">+allow = (ulaw)</span><br><span style="color: hsl(120, 100%, 40%);">+direct_media = false</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast2-identify]</span><br><span style="color: hsl(120, 100%, 40%);">+type = identify</span><br><span style="color: hsl(120, 100%, 40%);">+match = 127.0.0.2:5060/255.255.255.255</span><br><span style="color: hsl(120, 100%, 40%);">+srv_lookups = false</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint = ast2</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/extensions.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/extensions.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..03a2d17</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/extensions.conf</span><br><span>@@ -0,0 +1,6 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[default]</span><br><span style="color: hsl(120, 100%, 40%);">+exten = bob,1,NoOp(Incoming call)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Answer()</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,UserEvent(GeolocInfo,LocInfo: "${GEOLOC_PROFILE(effective_location)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Wait(2)</span><br><span style="color: hsl(120, 100%, 40%);">+same  = n,Hangup()</span><br><span>\ No newline at end of file</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/geolocation.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/geolocation.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..41d1380</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/geolocation.conf</span><br><span>@@ -0,0 +1,11 @@</span><br><span style="color: hsl(120, 100%, 40%);">+; Since "prefer_incoming is set, these shouldn't actually be used.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast1-loc]</span><br><span style="color: hsl(120, 100%, 40%);">+type = location</span><br><span style="color: hsl(120, 100%, 40%);">+format = URI</span><br><span style="color: hsl(120, 100%, 40%);">+location_info = URI=http://something.com</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast1]</span><br><span style="color: hsl(120, 100%, 40%);">+type = profile</span><br><span style="color: hsl(120, 100%, 40%);">+profile_precedence = prefer_incoming</span><br><span style="color: hsl(120, 100%, 40%);">+location_reference = ast1-loc</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/pjsip.conf b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/pjsip.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..df62e99</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/configs/ast2/pjsip.conf</span><br><span>@@ -0,0 +1,33 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[system]</span><br><span style="color: hsl(120, 100%, 40%);">+type=system</span><br><span style="color: hsl(120, 100%, 40%);">+timer_t1=100</span><br><span style="color: hsl(120, 100%, 40%);">+timer_b=6400</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ipv4-tcp]</span><br><span style="color: hsl(120, 100%, 40%);">+type=transport</span><br><span style="color: hsl(120, 100%, 40%);">+protocol=tcp</span><br><span style="color: hsl(120, 100%, 40%);">+bind=127.0.0.2:5060</span><br><span style="color: hsl(120, 100%, 40%);">+symmetric_transport = yes</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast1]</span><br><span style="color: hsl(120, 100%, 40%);">+type = aor</span><br><span style="color: hsl(120, 100%, 40%);">+max_contacts = 1</span><br><span style="color: hsl(120, 100%, 40%);">+contact = sip:127.0.0.1:5060</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast1]</span><br><span style="color: hsl(120, 100%, 40%);">+type = endpoint</span><br><span style="color: hsl(120, 100%, 40%);">+aors = ast1</span><br><span style="color: hsl(120, 100%, 40%);">+identify_by = ip,auth_username,username</span><br><span style="color: hsl(120, 100%, 40%);">+context = default</span><br><span style="color: hsl(120, 100%, 40%);">+transport = ipv4-tcp</span><br><span style="color: hsl(120, 100%, 40%);">+geoloc_incoming_call_profile = ast1</span><br><span style="color: hsl(120, 100%, 40%);">+ice_support = false</span><br><span style="color: hsl(120, 100%, 40%);">+allow = (ulaw)</span><br><span style="color: hsl(120, 100%, 40%);">+direct_media = false</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[ast4-identify]</span><br><span style="color: hsl(120, 100%, 40%);">+type = identify</span><br><span style="color: hsl(120, 100%, 40%);">+match = 127.0.0.1/255.255.255.255</span><br><span style="color: hsl(120, 100%, 40%);">+srv_lookups = false</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint = ast1</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/sipp/invite_gml.xml b/tests/channels/pjsip/geolocation/round-trip/gml/sipp/invite_gml.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..1d4eff5</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/sipp/invite_gml.xml</span><br><span>@@ -0,0 +1,129 @@</span><br><span style="color: hsl(120, 100%, 40%);">+<?xml version="1.0" encoding="ISO-8859-1" ?></span><br><span style="color: hsl(120, 100%, 40%);">+<!DOCTYPE scenario SYSTEM "sipp.dtd" [</span><br><span style="color: hsl(120, 100%, 40%);">+<!ENTITY geopriv SYSTEM "geopriv.xml"></span><br><span style="color: hsl(120, 100%, 40%);">+]></span><br><span style="color: hsl(120, 100%, 40%);">+<scenario name="INVITE with Civic Address PIDF-LO"></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <send retrans="500"></span><br><span style="color: hsl(120, 100%, 40%);">+    <![CDATA[</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    INVITE sip:[dest]@[remote_ip]:[remote_port] SIP/2.0</span><br><span style="color: hsl(120, 100%, 40%);">+    Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]</span><br><span style="color: hsl(120, 100%, 40%);">+    From: <sip:[service]@[local_ip]:[local_port]>;tag=[call_number]</span><br><span style="color: hsl(120, 100%, 40%);">+    To: <sip:[dest]@[remote_ip]:[remote_port]></span><br><span style="color: hsl(120, 100%, 40%);">+    Call-ID: [call_id]</span><br><span style="color: hsl(120, 100%, 40%);">+    CSeq: 1 INVITE</span><br><span style="color: hsl(120, 100%, 40%);">+    Max-Forwards: 70</span><br><span style="color: hsl(120, 100%, 40%);">+    Contact: <sip:[service]@[local_ip]:[local_port]></span><br><span style="color: hsl(120, 100%, 40%);">+    Subject: Test</span><br><span style="color: hsl(120, 100%, 40%);">+    Geolocation: <cid:target123@atlanta.example.com></span><br><span style="color: hsl(120, 100%, 40%);">+    Allow: OPTIONS, SUBSCRIBE, NOTIFY, PUBLISH, INVITE, ACK, BYE, CANCEL, PRACK, REGISTER, REFER, MESSAGE</span><br><span style="color: hsl(120, 100%, 40%);">+    User-Agent: Test</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Type: multipart/mixed;boundary=boundary</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Length: [len]</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    --boundary</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Type: application/pidf+xml</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-ID: <target123@atlanta.example.com></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <?xml version="1.0" encoding="UTF-8"?></span><br><span style="color: hsl(120, 100%, 40%);">+    <presence xmlns="urn:ietf:params:xml:ns:pidf"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:gbp="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:cl="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:gml="http://www.opengis.net/gml"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:gs="http://www.opengis.net/pidflo/1.0"</span><br><span style="color: hsl(120, 100%, 40%);">+    xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"</span><br><span style="color: hsl(120, 100%, 40%);">+    entity="pres:alice@atlanta.example.com"></span><br><span style="color: hsl(120, 100%, 40%);">+        <dm:device id="target123-1"></span><br><span style="color: hsl(120, 100%, 40%);">+            <gp:geopriv></span><br><span style="color: hsl(120, 100%, 40%);">+                <gp:location-info></span><br><span style="color: hsl(120, 100%, 40%);">+                    <gs:Ellipsoid srsName="urn:ogc:def:crs:EPSG::4979"></span><br><span style="color: hsl(120, 100%, 40%);">+                        <gs:orientation uom="urn:ogc:def:uom:EPSG::9102">90</gs:orientation></span><br><span style="color: hsl(120, 100%, 40%);">+                        <gml:pos>42.5463 -73.2512 26.3</gml:pos></span><br><span style="color: hsl(120, 100%, 40%);">+                        <gs:semiMajorAxis uom="urn:ogc:def:uom:EPSG::9001">7.7156</gs:semiMajorAxis></span><br><span style="color: hsl(120, 100%, 40%);">+                        <gs:semiMinorAxis uom="urn:ogc:def:uom:EPSG::9001">3.31</gs:semiMinorAxis></span><br><span style="color: hsl(120, 100%, 40%);">+                        <gs:verticalAxis uom="urn:ogc:def:uom:EPSG::9001">28.7</gs:verticalAxis></span><br><span style="color: hsl(120, 100%, 40%);">+                    </gs:Ellipsoid></span><br><span style="color: hsl(120, 100%, 40%);">+                </gp:location-info></span><br><span style="color: hsl(120, 100%, 40%);">+                <gp:usage-rules></span><br><span style="color: hsl(120, 100%, 40%);">+                    <gbp:retransmission-allowed>no</span><br><span style="color: hsl(120, 100%, 40%);">+                    </gbp:retransmission-allowed></span><br><span style="color: hsl(120, 100%, 40%);">+                    <gbp:retention-expiry>2010-11-14T20:00:00Z</span><br><span style="color: hsl(120, 100%, 40%);">+                    </gbp:retention-expiry></span><br><span style="color: hsl(120, 100%, 40%);">+                </gp:usage-rules></span><br><span style="color: hsl(120, 100%, 40%);">+                <gp:method>802.11</gp:method></span><br><span style="color: hsl(120, 100%, 40%);">+            </gp:geopriv></span><br><span style="color: hsl(120, 100%, 40%);">+            <dm:deviceID>mac:1234567890ab</dm:deviceID></span><br><span style="color: hsl(120, 100%, 40%);">+            <dm:timestamp>2010-11-04T20:57:29Z</dm:timestamp></span><br><span style="color: hsl(120, 100%, 40%);">+        </dm:device></span><br><span style="color: hsl(120, 100%, 40%);">+    </presence></span><br><span style="color: hsl(120, 100%, 40%);">+    --boundary</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Type: application/sdp</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    v=0</span><br><span style="color: hsl(120, 100%, 40%);">+    o=- 20110306451 20110306451 IN IP[media_ip_type] [media_ip]</span><br><span style="color: hsl(120, 100%, 40%);">+    s=-</span><br><span style="color: hsl(120, 100%, 40%);">+    c=IN IP[media_ip_type] [media_ip]</span><br><span style="color: hsl(120, 100%, 40%);">+    t=0 0</span><br><span style="color: hsl(120, 100%, 40%);">+    m=audio [media_port] RTP/AVP 0</span><br><span style="color: hsl(120, 100%, 40%);">+    a=rtpmap:0 PCMU/8000</span><br><span style="color: hsl(120, 100%, 40%);">+    a=ptime:20</span><br><span style="color: hsl(120, 100%, 40%);">+    a=sendrecv</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    --boundary--</span><br><span style="color: hsl(120, 100%, 40%);">+    ]]></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    </send></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <recv response="100" optional="true"></span><br><span style="color: hsl(120, 100%, 40%);">+    </recv></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <recv response="180" optional="true"></span><br><span style="color: hsl(120, 100%, 40%);">+    </recv></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <recv response="183" optional="true"></span><br><span style="color: hsl(120, 100%, 40%);">+    </recv></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <recv response="200" rtd="true"/></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <send></span><br><span style="color: hsl(120, 100%, 40%);">+    <![CDATA[</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    ACK sip:[dest]@[remote_ip]:[remote_port] SIP/2.0</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_Via:]</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_From:]</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_To:]</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_Call-ID:]</span><br><span style="color: hsl(120, 100%, 40%);">+    CSeq: 1 ACK</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_Contact:]</span><br><span style="color: hsl(120, 100%, 40%);">+    [last_Allow:]</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Length: 0</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    ]]></span><br><span style="color: hsl(120, 100%, 40%);">+    </send></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <pause milliseconds="1000"/></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <send></span><br><span style="color: hsl(120, 100%, 40%);">+    <![CDATA[</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    BYE sip:[dest]@[remote_ip]:[remote_port] SIP/2.0</span><br><span style="color: hsl(120, 100%, 40%);">+    Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]</span><br><span style="color: hsl(120, 100%, 40%);">+    From: sipp <sip:[service]@[local_ip]:[local_port]>;tag=[call_number]</span><br><span style="color: hsl(120, 100%, 40%);">+    To: sut <sip:[dest]@[remote_ip]:[remote_port]>[peer_tag_param]</span><br><span style="color: hsl(120, 100%, 40%);">+    Call-ID: [call_id]</span><br><span style="color: hsl(120, 100%, 40%);">+    CSeq: 2 BYE</span><br><span style="color: hsl(120, 100%, 40%);">+    Contact: alice <sip:[service]@[local_ip]:[local_port]></span><br><span style="color: hsl(120, 100%, 40%);">+    Max-Forwards: 70</span><br><span style="color: hsl(120, 100%, 40%);">+    Subject: Performance Test</span><br><span style="color: hsl(120, 100%, 40%);">+    Content-Length: 0</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    ]]></span><br><span style="color: hsl(120, 100%, 40%);">+    </send></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    <recv response="200" rtd="true"/></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/gml/test-config.yaml b/tests/channels/pjsip/geolocation/round-trip/gml/test-config.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..35d4334</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/gml/test-config.yaml</span><br><span>@@ -0,0 +1,66 @@</span><br><span style="color: hsl(120, 100%, 40%);">+testinfo:</span><br><span style="color: hsl(120, 100%, 40%);">+    summary: 'Test Geolocation GML Round-Trip.'</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    description: |</span><br><span style="color: hsl(120, 100%, 40%);">+        'Test GML parsing and the GEOLOC_PROFILE dialplan function</span><br><span style="color: hsl(120, 100%, 40%);">+        using sipp to create the incoming document and send it to the first</span><br><span style="color: hsl(120, 100%, 40%);">+        asterisk instance.  The dialplan function alters the verticalAxis</span><br><span style="color: hsl(120, 100%, 40%);">+        and orientation and calls "bob" on the second asterisk instance.</span><br><span style="color: hsl(120, 100%, 40%);">+        The second instance dialplan sends a UserEvent with the parsed</span><br><span style="color: hsl(120, 100%, 40%);">+        effective location which is checked below.</span><br><span style="color: hsl(120, 100%, 40%);">+        '</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+properties:</span><br><span style="color: hsl(120, 100%, 40%);">+    dependencies:</span><br><span style="color: hsl(120, 100%, 40%);">+        - app : 'sipp'</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : 'app_userevent'</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : 'res_geolocation'</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : 'res_pjsip'</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : 'res_pjsip_geolocation'</span><br><span style="color: hsl(120, 100%, 40%);">+    tags:</span><br><span style="color: hsl(120, 100%, 40%);">+        - pjsip</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+test-modules:</span><br><span style="color: hsl(120, 100%, 40%);">+    test-object:</span><br><span style="color: hsl(120, 100%, 40%);">+        config-section: test-object-config</span><br><span style="color: hsl(120, 100%, 40%);">+        typename: sipp.SIPpTestCase</span><br><span style="color: hsl(120, 100%, 40%);">+    modules:</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            config-section: ami-config</span><br><span style="color: hsl(120, 100%, 40%);">+            typename: 'pluggable_modules.EventActionModule'</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+test-object-config:</span><br><span style="color: hsl(120, 100%, 40%);">+    reactor-timeout: 15</span><br><span style="color: hsl(120, 100%, 40%);">+    asterisk-instances: 2</span><br><span style="color: hsl(120, 100%, 40%);">+    memcheck-delay-stop: 7</span><br><span style="color: hsl(120, 100%, 40%);">+    stop-after-scenarios: false</span><br><span style="color: hsl(120, 100%, 40%);">+    fail-on-any: false</span><br><span style="color: hsl(120, 100%, 40%);">+    test-iterations:</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+             scenarios:</span><br><span style="color: hsl(120, 100%, 40%);">+                - { 'key-args': { 'scenario':'invite_gml.xml', '-i':'127.0.0.3', '-p':'5060', '-t': 't1', '-s':'alice' },</span><br><span style="color: hsl(120, 100%, 40%);">+                  'ordered-args': [ '-bind_local', '-key', 'dest', 'bob']}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ami-config:</span><br><span style="color: hsl(120, 100%, 40%);">+    -</span><br><span style="color: hsl(120, 100%, 40%);">+        ami-events:</span><br><span style="color: hsl(120, 100%, 40%);">+            id: '1'</span><br><span style="color: hsl(120, 100%, 40%);">+            type: 'headermatch'</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    Event: 'UserEvent'</span><br><span style="color: hsl(120, 100%, 40%);">+                    UserEvent: 'GeolocInfo'</span><br><span style="color: hsl(120, 100%, 40%);">+#                   In the original request, the verticalAxis was 28.7.</span><br><span style="color: hsl(120, 100%, 40%);">+#                   The GEOLOC_PROFILE dialplan app should have changed</span><br><span style="color: hsl(120, 100%, 40%);">+#                   it to 99.99.</span><br><span style="color: hsl(120, 100%, 40%);">+                    LocInfo: "shape=Ellipsoid,crs=3d,orientation=180 degrees,pos=42.5463 -73.2512 26.3,semiMajorAxis=7.7156,semiMinorAxis=3.31,verticalAxis=99.99"</span><br><span style="color: hsl(120, 100%, 40%);">+            count: '1'</span><br><span style="color: hsl(120, 100%, 40%);">+    -</span><br><span style="color: hsl(120, 100%, 40%);">+        ami-events:</span><br><span style="color: hsl(120, 100%, 40%);">+            id: '0'</span><br><span style="color: hsl(120, 100%, 40%);">+            type: 'headermatch'</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    Event: 'Hangup'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: '2'</span><br><span style="color: hsl(120, 100%, 40%);">+        stop_test:</span><br><span>diff --git a/tests/channels/pjsip/geolocation/round-trip/tests.yaml b/tests/channels/pjsip/geolocation/round-trip/tests.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..f40f972</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/round-trip/tests.yaml</span><br><span>@@ -0,0 +1,3 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# Enter tests here in the order they should be considered for execution:</span><br><span style="color: hsl(120, 100%, 40%);">+tests:</span><br><span style="color: hsl(120, 100%, 40%);">+    - test: 'gml'</span><br><span>diff --git a/tests/channels/pjsip/geolocation/tests.yaml b/tests/channels/pjsip/geolocation/tests.yaml</span><br><span>index 40038e5..fc79860 100644</span><br><span>--- a/tests/channels/pjsip/geolocation/tests.yaml</span><br><span>+++ b/tests/channels/pjsip/geolocation/tests.yaml</span><br><span>@@ -1,3 +1,4 @@</span><br><span> # Enter tests here in the order they should be considered for execution:</span><br><span> tests:</span><br><span>     - dir: 'incoming'</span><br><span style="color: hsl(120, 100%, 40%);">+    - dir: 'round-trip'</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/c/testsuite/+/19310">change 19310</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/c/testsuite/+/19310"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: testsuite </div>
<div style="display:none"> Gerrit-Branch: 16 </div>
<div style="display:none"> Gerrit-Change-Id: Ieb15c1eef4d94b0e3f7d0622e6d4559c8897a4c6 </div>
<div style="display:none"> Gerrit-Change-Number: 19310 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: George Joseph <gjoseph@digium.com> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>