<p>George Joseph has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.asterisk.org/c/testsuite/+/19293">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">geolocation: Add basic incoming testsuite tests<br><br>Change-Id: I1116865b558c566c6a0974096306192cf4f25932<br>---<br>A tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/extensions.conf<br>A tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/geolocation.conf<br>A tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip.conf<br>A tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip_wizard.conf<br>A tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_ca.xml<br>A tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_gml.xml<br>A tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_uri.xml<br>A tests/channels/pjsip/geolocation/incoming/basic/test-config.yaml<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/extensions.conf<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/geolocation.conf<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip.conf<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip_wizard.conf<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite.xml<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_ca.xml<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_gml.xml<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_uri.xml<br>A tests/channels/pjsip/geolocation/incoming/profile_precedence/test-config.yaml<br>A tests/channels/pjsip/geolocation/incoming/tests.yaml<br>A tests/channels/pjsip/geolocation/tests.yaml<br>M tests/channels/pjsip/tests.yaml<br>20 files changed, 1,056 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/93/19293/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/extensions.conf b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/extensions.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..8d80158</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/extensions.conf</span><br><span>@@ -0,0 +1,17 @@</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 to ${EXTEN})</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Set(mycountry=US)</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Set(GEOLOC_PROFILE(location_info_refinement,r)=lang=en-GB,country=$\{mycountry})</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,UserEvent(Geoloc,LocInfo: "${GEOLOC_PROFILE(effective_location)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Busy(0)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+exten = charlie,1,NoOp(Incoming call to ${EXTEN})</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Set(mycountry=US)</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Set(GEOLOC_PROFILE(location_info_refinement,r)=verticalAxis=99.99)</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,UserEvent(Geoloc,LocInfo: "${GEOLOC_PROFILE(effective_location)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Busy(0)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+exten = david,1,NoOp(Incoming call to ${EXTEN})</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,UserEvent(Geoloc,LocInfo: "${GEOLOC_PROFILE(effective_location)}", GeolocRouting: "${GEOLOC_PROFILE(allow_routing_use)}", GeolocSrc: "${GEOLOC_PROFILE(location_source)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Busy(0)</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/geolocation.conf b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/geolocation.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..cab5f98</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/geolocation.conf</span><br><span>@@ -0,0 +1 @@</span><br><span style="color: hsl(120, 100%, 40%);">+; Nothing to see here.</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip.conf b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..b992a58</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip.conf</span><br><span>@@ -0,0 +1,10 @@</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>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip_wizard.conf b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip_wizard.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..eff5133</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/configs/ast1/pjsip_wizard.conf</span><br><span>@@ -0,0 +1,21 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[common](!)</span><br><span style="color: hsl(120, 100%, 40%);">+type = wizard</span><br><span style="color: hsl(120, 100%, 40%);">+has_hint = no</span><br><span style="color: hsl(120, 100%, 40%);">+accepts_registrations = no</span><br><span style="color: hsl(120, 100%, 40%);">+sends_registrations = no</span><br><span style="color: hsl(120, 100%, 40%);">+accepts_auth = no</span><br><span style="color: hsl(120, 100%, 40%);">+sends_auth = no</span><br><span style="color: hsl(120, 100%, 40%);">+aor/max_contacts = 1</span><br><span style="color: hsl(120, 100%, 40%);">+aor/qualify_frequency = 0</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/identify_by = ip,auth_username,username</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/context = default</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/transport = ipv4-tcp</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/ice_support = false</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/allow = !all,ulaw</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/direct_media = false</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[alice](common)</span><br><span style="color: hsl(120, 100%, 40%);">+remote_hosts = 127.0.0.2:5060</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/callerid = Alice <alice></span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/geoloc_incoming_call_profile = <discard_config></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_ca.xml b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_ca.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..45252f4</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_ca.xml</span><br><span>@@ -0,0 +1,109 @@</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 entity="pres:ness@example.com"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns="urn:ietf:params:xml:ns:pidf"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns:ca="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"</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%);">+ xmlns:gbp="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"</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:gp="urn:ietf:params:xml:ns:pidf:geopriv10"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns:con="urn:ietf:params:xml:ns:geopriv:conf"</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%);">+ <dm:person id="civicaddr"></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%);">+ <ca:civicAddress xml:lang="en-AU"></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:country>AU</ca:country></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A1>NSW</ca:A1></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A3>Wollongong</ca:A3></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A4>North Wollongong</ca:A4></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:RD>Flinders</ca:RD></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:STS>Street</ca:STS></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:RDBR>Campbell Street</ca:RDBR></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:LMK>Gilligan's Island</ca:LMK></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:LOC>Corner</ca:LOC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:NAM> Video Rental Store </ca:NAM></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:PC>2500</ca:PC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:ROOM> Westerns and Classics </ca:ROOM></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:PLC>store</ca:PLC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:POBOX>Private Box 15</ca:POBOX></span><br><span style="color: hsl(120, 100%, 40%);">+ </ca:civicAddress></span><br><span style="color: hsl(120, 100%, 40%);">+ <con:confidence pdf="normal">77</con:confidence></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%);">+ <gp:retransmission-allowed>yes</gp:retransmission-allowed></span><br><span style="color: hsl(120, 100%, 40%);">+ <gp:ruleset-preference>https:/www/more.com</gp:ruleset-preference></span><br><span style="color: hsl(120, 100%, 40%);">+ <gp:retention-expires>2007-06-22T20:57:29Z</gp:retention-expires></span><br><span style="color: hsl(120, 100%, 40%);">+ </gp:usage-rules></span><br><span style="color: hsl(120, 100%, 40%);">+ </gp:geopriv></span><br><span style="color: hsl(120, 100%, 40%);">+ <dm:timestamp>2007-06-22T20:57:29Z</dm:timestamp></span><br><span style="color: hsl(120, 100%, 40%);">+ </dm:person></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="486" 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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_gml.xml b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_gml.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..acfd08d</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_gml.xml</span><br><span>@@ -0,0 +1,100 @@</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="486" rtd="true"/></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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_uri.xml b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_uri.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..c9b0b9c</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/sipp/invite_uri.xml</span><br><span>@@ -0,0 +1,63 @@</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%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+<scenario name="INVITE with Geolocation URI"></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];transport=[transport]></span><br><span style="color: hsl(120, 100%, 40%);">+ Subject: Test</span><br><span style="color: hsl(120, 100%, 40%);">+ Geolocation: <http://something.com;loc-src=www.asterisk.org></span><br><span style="color: hsl(120, 100%, 40%);">+ Geolocation-Routing: yes</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: application/sdp</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%);">+ 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 101</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:0 PCMU/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:101 telephone-event/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=fmtp:101 0-16</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%);">+</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="486" rtd="true"/></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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/basic/test-config.yaml b/tests/channels/pjsip/geolocation/incoming/basic/test-config.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..9117fc4</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/basic/test-config.yaml</span><br><span>@@ -0,0 +1,139 @@</span><br><span style="color: hsl(120, 100%, 40%);">+testinfo:</span><br><span style="color: hsl(120, 100%, 40%);">+ summary: 'Test basic civicAddress, GML and URI parsing.'</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 civicAddress, GML and URI parsing, the GEOLOC_PROFILE dialplan</span><br><span style="color: hsl(120, 100%, 40%);">+ function, and variable substitution.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - Sipp sends 3 parallel invites to Asterisk, one for each location</span><br><span style="color: hsl(120, 100%, 40%);">+ info type. Bob gets civicAddress, Charlie gets GML and David gets URI.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - The dialplan sets some local variables.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - The dialplan uses the GEOLOC_PROFILE function to alter fields in</span><br><span style="color: hsl(120, 100%, 40%);">+ the civicAddress and GML documents with the escaped names of the</span><br><span style="color: hsl(120, 100%, 40%);">+ variables just set.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - The GEOLOC_PROFILE function re-resolves the effective_location</span><br><span style="color: hsl(120, 100%, 40%);">+ which should now contain the values of the variables set earlier.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - The dialplan sends UserEvents with the new effective_location</span><br><span style="color: hsl(120, 100%, 40%);">+ which we test below.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - The URI test, doesn't test variable substitution but does test</span><br><span style="color: hsl(120, 100%, 40%);">+ the value of the GeolocationRouting header.</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_config_wizard'</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%);">+ 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_ca.xml', '-i':'127.0.0.2',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-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%);">+ - { 'key-args': { 'scenario':'invite_gml.xml', '-i':'127.0.0.2',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5061', '-t': 't1', '-s':'alice' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'charlie']}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - { 'key-args': { 'scenario':'invite_uri.xml', '-i':'127.0.0.2',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5062', '-t': 't1', '-s':'alice' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'david']}</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'bob'</span><br><span style="color: hsl(120, 100%, 40%);">+ requirements:</span><br><span style="color: hsl(120, 100%, 40%);">+ match:</span><br><span style="color: hsl(120, 100%, 40%);">+# In the original request, the language was en-AU</span><br><span style="color: hsl(120, 100%, 40%);">+# and the country was AU.</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%);">+# them to en-GB and US respectively.</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: "lang=en-GB,country=US,A1=NSW,A3=Wollongong,A4=North Wollongong,RD=Flinders,STS=Street,RDBR=Campbell Street,LMK=Gilligan's Island,LOC=Corner,NAM=Video Rental Store,PC=2500,ROOM=Westerns and Classics,PLC=store,POBOX=Private Box 15"</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%);">+ 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%);">+ Exten: 'bob'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'charlie'</span><br><span style="color: hsl(120, 100%, 40%);">+ requirements:</span><br><span style="color: hsl(120, 100%, 40%);">+ match:</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=90 radians,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%);">+ 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%);">+ Exten: 'charlie'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'david'</span><br><span style="color: hsl(120, 100%, 40%);">+ requirements:</span><br><span style="color: hsl(120, 100%, 40%);">+ match:</span><br><span style="color: hsl(120, 100%, 40%);">+# We don't actually change anything fir URI</span><br><span style="color: hsl(120, 100%, 40%);">+# We just test for the URI, GeolocationRouting header,</span><br><span style="color: hsl(120, 100%, 40%);">+# and the "loc-src" URI parameter.</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: "URI=http://something.com;loc-src=www.asterisk.org"</span><br><span style="color: hsl(120, 100%, 40%);">+ GeolocRouting: "yes"</span><br><span style="color: hsl(120, 100%, 40%);">+ GeolocSrc: "www.asterisk.org"</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%);">+ 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%);">+ Exten: 'david'</span><br><span style="color: hsl(120, 100%, 40%);">+ count: '1'</span><br><span style="color: hsl(120, 100%, 40%);">+ stop_test:</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/extensions.conf b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/extensions.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..ff3a23f</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/extensions.conf</span><br><span>@@ -0,0 +1,5 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[default]</span><br><span style="color: hsl(120, 100%, 40%);">+exten = alice,1,NoOp(Incoming call from ${CALLERID(all)})</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,UserEvent(Geoloc,LocInfo: "${GEOLOC_PROFILE(effective_location)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,UserEvent(Geoloc,LocInfo: "${GEOLOC_PROFILE(effective_location,r)}")</span><br><span style="color: hsl(120, 100%, 40%);">+same = n,Busy(0)</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/geolocation.conf b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/geolocation.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..e36296f</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/geolocation.conf</span><br><span>@@ -0,0 +1,30 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[charlie-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/${CALLERID(num)}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[charlie]</span><br><span style="color: hsl(120, 100%, 40%);">+type = profile</span><br><span style="color: hsl(120, 100%, 40%);">+profile_precedence = prefer_config</span><br><span style="color: hsl(120, 100%, 40%);">+location_reference = charlie-loc</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[david-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/${CALLERID(num)}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[david]</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 = david-loc</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[eddie-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/${CALLERID(num)}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[eddie]</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 = eddie-loc</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip.conf b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..655424b</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip.conf</span><br><span>@@ -0,0 +1,11 @@</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>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip_wizard.conf b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip_wizard.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..005d005</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/configs/ast1/pjsip_wizard.conf</span><br><span>@@ -0,0 +1,36 @@</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[common](!)</span><br><span style="color: hsl(120, 100%, 40%);">+type = wizard</span><br><span style="color: hsl(120, 100%, 40%);">+has_hint = no</span><br><span style="color: hsl(120, 100%, 40%);">+accepts_registrations = no</span><br><span style="color: hsl(120, 100%, 40%);">+sends_registrations = no</span><br><span style="color: hsl(120, 100%, 40%);">+accepts_auth = no</span><br><span style="color: hsl(120, 100%, 40%);">+sends_auth = no</span><br><span style="color: hsl(120, 100%, 40%);">+aor/max_contacts = 1</span><br><span style="color: hsl(120, 100%, 40%);">+aor/qualify_frequency = 0</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/identify_by = ip,auth_username,username</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/context = default</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/transport = ipv4-tcp</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/ice_support = false</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/allow = !all,ulaw</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/direct_media = false</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[bob](common)</span><br><span style="color: hsl(120, 100%, 40%);">+remote_hosts = 127.0.0.2:5060</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/callerid = Bob <bob></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[charlie](common)</span><br><span style="color: hsl(120, 100%, 40%);">+remote_hosts = 127.0.0.3:5060</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/callerid = Charlie <charlie></span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/geoloc_incoming_call_profile = charlie</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[david](common)</span><br><span style="color: hsl(120, 100%, 40%);">+remote_hosts = 127.0.0.4:5060</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/callerid = David <david></span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/geoloc_incoming_call_profile = david</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+[eddie](common)</span><br><span style="color: hsl(120, 100%, 40%);">+remote_hosts = 127.0.0.5:5060</span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/callerid = Eddie <eddie></span><br><span style="color: hsl(120, 100%, 40%);">+endpoint/geoloc_incoming_call_profile = eddie</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite.xml b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..b66838d</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite.xml</span><br><span>@@ -0,0 +1,61 @@</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%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+<scenario name="INVITE with Geolocation URI"></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];transport=[transport]></span><br><span style="color: hsl(120, 100%, 40%);">+ Subject: Test</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: application/sdp</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%);">+ 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 101</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:0 PCMU/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:101 telephone-event/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=fmtp:101 0-16</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%);">+</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="486" rtd="true"/></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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_ca.xml b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_ca.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..45252f4</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_ca.xml</span><br><span>@@ -0,0 +1,109 @@</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 entity="pres:ness@example.com"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns="urn:ietf:params:xml:ns:pidf"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns:ca="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"</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%);">+ xmlns:gbp="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"</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:gp="urn:ietf:params:xml:ns:pidf:geopriv10"</span><br><span style="color: hsl(120, 100%, 40%);">+ xmlns:con="urn:ietf:params:xml:ns:geopriv:conf"</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%);">+ <dm:person id="civicaddr"></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%);">+ <ca:civicAddress xml:lang="en-AU"></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:country>AU</ca:country></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A1>NSW</ca:A1></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A3>Wollongong</ca:A3></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:A4>North Wollongong</ca:A4></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:RD>Flinders</ca:RD></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:STS>Street</ca:STS></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:RDBR>Campbell Street</ca:RDBR></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:LMK>Gilligan's Island</ca:LMK></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:LOC>Corner</ca:LOC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:NAM> Video Rental Store </ca:NAM></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:PC>2500</ca:PC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:ROOM> Westerns and Classics </ca:ROOM></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:PLC>store</ca:PLC></span><br><span style="color: hsl(120, 100%, 40%);">+ <ca:POBOX>Private Box 15</ca:POBOX></span><br><span style="color: hsl(120, 100%, 40%);">+ </ca:civicAddress></span><br><span style="color: hsl(120, 100%, 40%);">+ <con:confidence pdf="normal">77</con:confidence></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%);">+ <gp:retransmission-allowed>yes</gp:retransmission-allowed></span><br><span style="color: hsl(120, 100%, 40%);">+ <gp:ruleset-preference>https:/www/more.com</gp:ruleset-preference></span><br><span style="color: hsl(120, 100%, 40%);">+ <gp:retention-expires>2007-06-22T20:57:29Z</gp:retention-expires></span><br><span style="color: hsl(120, 100%, 40%);">+ </gp:usage-rules></span><br><span style="color: hsl(120, 100%, 40%);">+ </gp:geopriv></span><br><span style="color: hsl(120, 100%, 40%);">+ <dm:timestamp>2007-06-22T20:57:29Z</dm:timestamp></span><br><span style="color: hsl(120, 100%, 40%);">+ </dm:person></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="486" 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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_gml.xml b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_gml.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..acfd08d</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_gml.xml</span><br><span>@@ -0,0 +1,100 @@</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="486" rtd="true"/></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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_uri.xml b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_uri.xml</span><br><span>new file mode 100644</span><br><span>index 0000000..c9b0b9c</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/sipp/invite_uri.xml</span><br><span>@@ -0,0 +1,63 @@</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%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+<scenario name="INVITE with Geolocation URI"></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];transport=[transport]></span><br><span style="color: hsl(120, 100%, 40%);">+ Subject: Test</span><br><span style="color: hsl(120, 100%, 40%);">+ Geolocation: <http://something.com;loc-src=www.asterisk.org></span><br><span style="color: hsl(120, 100%, 40%);">+ Geolocation-Routing: yes</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: application/sdp</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%);">+ 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 101</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:0 PCMU/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=rtpmap:101 telephone-event/8000</span><br><span style="color: hsl(120, 100%, 40%);">+ a=fmtp:101 0-16</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%);">+</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="486" rtd="true"/></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%);">+</scenario></span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/profile_precedence/test-config.yaml b/tests/channels/pjsip/geolocation/incoming/profile_precedence/test-config.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..893a205</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/profile_precedence/test-config.yaml</span><br><span>@@ -0,0 +1,164 @@</span><br><span style="color: hsl(120, 100%, 40%);">+testinfo:</span><br><span style="color: hsl(120, 100%, 40%);">+ summary: 'Test profile_precedence on incoming requests.'</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 profile_precedence on incoming requests.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - Sipp sends 4 parallel invites to Asterisk for various</span><br><span style="color: hsl(120, 100%, 40%);">+ profile precedences.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - Bob has no geolocation profile at all so his info gets dropped.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - Charlie has prefer_config set so the incoming info is dropped</span><br><span style="color: hsl(120, 100%, 40%);">+ and the configured info is used.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - David has prefer_incoming set to the configured info is dropped</span><br><span style="color: hsl(120, 100%, 40%);">+ and the incoming info is used.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ - Eddie also has prefer_incoming set but he's not sending any info</span><br><span style="color: hsl(120, 100%, 40%);">+ in the invite so the configured info gets used.</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_config_wizard'</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%);">+ 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_ca.xml', '-i':'127.0.0.2',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5060', '-t': 't1', '-s':'bob' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'alice']}</span><br><span style="color: hsl(120, 100%, 40%);">+ - { 'key-args': { 'scenario':'invite_uri.xml', '-i':'127.0.0.3',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5060', '-t': 't1', '-s':'charlie' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'alice']}</span><br><span style="color: hsl(120, 100%, 40%);">+ - { 'key-args': { 'scenario':'invite_gml.xml', '-i':'127.0.0.4',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5060', '-t': 't1', '-s':'david' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'alice']}</span><br><span style="color: hsl(120, 100%, 40%);">+ - { 'key-args': { 'scenario':'invite.xml', '-i':'127.0.0.5',</span><br><span style="color: hsl(120, 100%, 40%);">+ '-p':'5060', '-t': 't1', '-s':'eddie' },</span><br><span style="color: hsl(120, 100%, 40%);">+ 'ordered-args': [ '-bind_local', '-key', 'dest', 'alice']}</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'bob'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ requirements:</span><br><span style="color: hsl(120, 100%, 40%);">+ match:</span><br><span style="color: hsl(120, 100%, 40%);">+# Bob has no geoloc profile so there should be nothing here.</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: "^$"</span><br><span style="color: hsl(120, 100%, 40%);">+ count: '2'</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%);">+ 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%);">+ CallerIDNum: 'bob'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'charlie'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: 'URI=http://something.com/\${CALLERID\(num\)}'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'charlie'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: 'URI=http://something.com/charlie'</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%);">+ 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%);">+ CallerIDNum: 'charlie'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'david'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: "shape=Ellipsoid,crs=3d,orientation=90 radians,pos=42.5463 -73.2512 26.3,semiMajorAxis=7.7156,semiMinorAxis=3.31,verticalAxis=28.7"</span><br><span style="color: hsl(120, 100%, 40%);">+ count: '2'</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%);">+ 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%);">+ CallerIDNum: 'david'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'eddie'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: 'URI=http://something.com/\${CALLERID\(num\)}'</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%);">+ 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: 'Geoloc'</span><br><span style="color: hsl(120, 100%, 40%);">+ CallerIDNum: 'eddie'</span><br><span style="color: hsl(120, 100%, 40%);">+ Exten: 'alice'</span><br><span style="color: hsl(120, 100%, 40%);">+ LocInfo: 'URI=http://something.com/eddie'</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%);">+ 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%);">+ CallerIDNum: 'eddie'</span><br><span style="color: hsl(120, 100%, 40%);">+ count: '1'</span><br><span style="color: hsl(120, 100%, 40%);">+ stop_test:</span><br><span>diff --git a/tests/channels/pjsip/geolocation/incoming/tests.yaml b/tests/channels/pjsip/geolocation/incoming/tests.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..7b45529</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/incoming/tests.yaml</span><br><span>@@ -0,0 +1,4 @@</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: 'basic'</span><br><span style="color: hsl(120, 100%, 40%);">+ - test: 'profile_precedence'</span><br><span>diff --git a/tests/channels/pjsip/geolocation/tests.yaml b/tests/channels/pjsip/geolocation/tests.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..40038e5</span><br><span>--- /dev/null</span><br><span>+++ b/tests/channels/pjsip/geolocation/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%);">+ - dir: 'incoming'</span><br><span>diff --git a/tests/channels/pjsip/tests.yaml b/tests/channels/pjsip/tests.yaml</span><br><span>index bc4424a..b080292 100644</span><br><span>--- a/tests/channels/pjsip/tests.yaml</span><br><span>+++ b/tests/channels/pjsip/tests.yaml</span><br><span>@@ -8,6 +8,7 @@</span><br><span> - dir: 'configuration'</span><br><span> - dir: 'dialplan_functions'</span><br><span> - dir: 'diversion'</span><br><span style="color: hsl(120, 100%, 40%);">+ - dir: 'geolocation'</span><br><span> - dir: 'history_info'</span><br><span> - dir: 'headers'</span><br><span> - dir: 'identify'</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/c/testsuite/+/19293">change 19293</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/+/19293"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: testsuite </div>
<div style="display:none"> Gerrit-Branch: 18 </div>
<div style="display:none"> Gerrit-Change-Id: I1116865b558c566c6a0974096306192cf4f25932 </div>
<div style="display:none"> Gerrit-Change-Number: 19293 </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>