Hi John, I’m glad to hear this is now working for you! I’ll add this to the wiki.
We’re also looking into improving the system logs – you can track this at https://github.com/Metaswitch/sprout/issues/973 if you want. Ellie From: John Green [mailto:[email protected]] Sent: 10 March 2015 11:19 To: Eleanor Merry Cc: [email protected] Subject: Re: [Clearwater] Sprout Injecting new Private Headers into SIP Message Sent to AS HI All, I solved my problem myself. I'm using the All-In-One Image in VirtualBox ( http://virtualbox.org ). Thus all modules are hosted in one OS, this includes the P-CSCF and the S-CSCF. The problem was that the Image only had the P-CSCF's Port mapped to an "outside" port, thus ALL requests was going to the P-CSCF. And thus Clearwater per the IMS spec WILL BLOCK the P-CSCF from accessing the HSS. I got the below error from the OS's system logs; Mar 5 11:49:44 cw-aio sprout[840]: 1005 - Description: http://10.0.2.15:8888/impu/sip%3A%2B17505550729%40example.com/reg-data failed to communicate with HTTP server 10.0.2.15 with curl error No error code 0. @@Cause: An HTTP connection attempt failed to the specified server with the specified error code. @@Effect: This condition impacts the ability to register, subscribe, or make a call. @@Action: (1). Check to see if the specified host has failed. (2). Check to see if there is TCP connectivity to the host by using ping and/or Wireshark. But after testing all the connections locally using telnet, they all seemed fine. The kicker was looking at the P-CSCF logs :) and there it was; 05-03-2015 12:11:37.764 UTC Error httpconnection.cpp:688: cURL failure with cURL error code 0 (see man 3 libcurl-errors) and HTTP error code 400 05-03-2015 12:11:37.764 UTC Error hssconnection.cpp:589: Could not get subscriber data from HSS With a proper HTTP 400 Status Code and everything. I had to add the port-forwarding rule in VirtualBox so it will also expose the S-CSCF's Port. Rgs, JG On Thu, Mar 5, 2015 at 10:45 AM, John Green <[email protected]<mailto:[email protected]>> wrote: HI Ellie, Thanks for the heads-up. I also found the Sprout documentation for those params you're using internally. Looks like I will also have to this. Wile we are on the 3rd-Party Registration topic, is there any reason Sprout will return Forbidden to my Request to Subscribe to "Event: reg"? Here are some examples; From my ealrier AS example Below I now return a SUBSCRIBE Request; SUBSCRIBE sip:[email protected]<mailto:sip%[email protected]> SIP/2.0 Call-ID: 6af281e71ee954c0c8c1c56e3e9fe3a5-sip:[email protected]<mailto:6af281e71ee954c0c8c1c56e3e9fe3a5-sip%[email protected]> CSeq: 1 SUBSCRIBE From: sip:work.co.za<http://work.co.za> To: sip:[email protected]<mailto:sip%[email protected]> Via: SIP/2.0/TCP ubuntu-VirtualBox:5015 ;branch=z9hG4bKe505c79194720aa936d45e5a9861f861 Accept: text/*, application/vnd.3gpp2.sms, application/pidf+xml, application/reginfo+xml Contact: sip:192.168.229.236:5015;transport=tcp Content-Length: 0 Expires: 3600 Event: reg P-Asserted-Identity: sip:work.co.za<http://work.co.za> P-Charging-Vector: icid-value=c0e5b254c76c5c36cda8ec48ad16c88a;icid-generated-at=ubuntu-VirtualBox;orig-ioi=ubuntu-VirtualBox And here is the response from Sprout; SIP/2.0 403 Forbidden Via: SIP/2.0/TCP ubuntu-VirtualBox:5015;received=10.0.2.2;branch=z9hG4bKe505c79194720aa936d45e5a9861f861 Call-ID: 6af281e71ee954c0c8c1c56e3e9fe3a5-sip:[email protected]<mailto:6af281e71ee954c0c8c1c56e3e9fe3a5-sip%[email protected]> From: <sip:work.co.za<http://work.co.za>> To: <sip:[email protected]<mailto:sip%[email protected]>>;tag=z9hG4bKe505c79194720aa936d45e5a9861f861 CSeq: 1 SUBSCRIBE P-Charging-Vector: icid-value="c0e5b254c76c5c36cda8ec48ad16c88a";orig-ioi=ubuntu-VirtualBox;icid-generated-at=ubuntu-VirtualBox Content-Length: 0 Apologies if I should have rather made a new thread for this :) Rgs, JG On Wed, Mar 4, 2015 at 8:25 PM, Eleanor Merry <[email protected]<mailto:[email protected]>> wrote: Hi John, I believe the extension 'tag' is non-standard - do you know of any standards documentation that covers this extension? The standard way of doing this through parameters on the SIP URI (and it's what we do for our application servers). Also, on a third-party registration, it is possible to pass a custom payload to the AS using the service information element in the IFC (please see TS 29.228, B.2.2 and TS 24.229, 5.4.1.7). Ellie -----Original Message----- From: [email protected]<mailto:[email protected]> [mailto:[email protected]<mailto:[email protected]>] On Behalf Of John Green Sent: 27 February 2015 06:26 To: [email protected]<mailto:[email protected]> Subject: [Clearwater] Sprout Injecting new Private Headers into SIP Message Sent to AS Hi List, I would like Sprout to inject some Custom Headers for me into the SIP Messages it sends to my Sip Application Server the values being saved inside the iFC (Is this possible per normal spec?). Below is a simple 3rd Party Register Message That was sent to my AS; REGISTER sip:192.168.229.236:5015;transport=tcp SIP/2.0 Via: SIP/2.0/TCP 10.0.2.15:58807<http://10.0.2.15:58807> ;rport;branch=z9hG4bKPj2wWD0fxBhQXWFvjsOaNqj0oxTvisCLHH Max-Forwards: 70 From: <sip:10.0.2.15>;tag=pGvsSjQu9FvJ1uKnPN1UWsrZP97kENGa To: <sip:[email protected]<mailto:sip%[email protected]>> Contact: <sip:10.0.2.15:5054<http://10.0.2.15:5054>>;transport=TCP Call-ID: MfgyuXpfxXbgDw1.twamvwzqjgGx8uLq CSeq: 1 REGISTER Expires: 0 P-Access-Network-Info: ADSL;utran-cell-id-3gpp=00000000 P-Visited-Network-ID: example.com<http://example.com> Content-Length: 0 And here is my iFC. { "3P-REGISTER" : "<InitialFilterCriteria><Priority>1</Priority><TriggerPoint><ConditionTypeCNF></ConditionTypeCNF><SPT><ConditionNegated>0</ConditionNegated><Group>0</Group><Method>REGISTER</Method><Extension></Extension></SPT></TriggerPoint><ApplicationServer><ServerName>sip:192.168.229.236:5015<http://192.168.229.236:5015> ;transport=tcp</ServerName><DefaultHandling>0</DefaultHandling><Extension><Tags> OnlineBillingTriggered </Tags></Extension><ServiceInfo></ServiceInfo></ApplicationServer></InitialFilterCriteria>" } I would like to use this to send Strings (Saved in the iFC) to my AS about what to Charge or do with the SIP-Message (Something like a converged SIP-AS). An example of the feature can be find the Public Oracle Docs, (Tagging a Session) https://docs.oracle.com/cd/E23521_01/doc.60/e23532/sbors_app_ifc.htm#autoId14 Here is a snipped from the iFC in the above.link; <Extension> <Tags>OnlineBillingTriggered</Tags> </Extension> The above <Tags> will cause the following header to be added to the SIP-Message sent to the AS; x-wcs-tags = OnlineBillingTriggered Thanks for reading this, what do you guys think ? Maby there is a better way to send arbitrary data to my AS from the S-CSCF ? I was also thinking about Private/Custom URI Parameters in the URI set in the <ServerName> ? Kind Regards, John _______________________________________________ Clearwater mailing list [email protected]<mailto:[email protected]> http://lists.projectclearwater.org/listinfo/clearwater _______________________________________________ Clearwater mailing list [email protected] http://lists.projectclearwater.org/listinfo/clearwater
