Hi Ellie, the second case was my case - I added: enum_file="enum.json" restarted sprout and - voila - works fine - thanks.
I don't see my DNS being queried for ENUM. How to enable this? Additional question - how to force sprout to talk to MGCF with UDP transport? I tried with appending ";transport=UDP" route entry at the bgcf.json file - didn't help. Regards, Janek On Tue, Apr 22, 2014 at 6:21 PM, Eleanor Merry <[email protected] > wrote: > Hi Janek, > > > > Thanks for sending the logs over. > > > > It looks like Sprout is never attempting enum processing. This will either > be because sprout doesn’t recognise domain.com as the home domain, or > because sprout doesn’t think it has any ENUM service. > > > > For the first case, can you confirm that domain.com is the home domain? > This is taken from “home_domain” in /etc/clearwater/config. > > > > For the second case, Sprout needs to know what enum file you’re using > (this isn’t clear in the wiki, I’m going to update it now). Can you add > “enum_file=<enum.json > file>” to your /etc/clearwater/user_settings file, and restart sprout > (“service sprout stop”). > > > > Ellie > > > > > > *From:* Jasio Kololski [mailto:[email protected]] > *Sent:* 22 April 2014 16:51 > *To:* Eleanor Merry > *Cc:* [email protected] > *Subject:* Re: [Clearwater] IBCF/BGCF configuration > > > > Hello Ellie, > > I have changed the bgcf.json file to: > > { > "routes" : [ > { "name" : "MGCF", > "domain" : "mgcf.domain.com", > "route" : ["10.193.153.100"] > } > ] > } > > the enum.json file was ok - no extras after the number - it appeared in > the mail after copy/paste. > > Unfortunately the changes I made didn't help. > > I still can't see the ENUM being queried: > > 22-04-2014 15:40:49.987 Debug pjsip: sip_endpoint.c Processing incoming > message: Request msg INVITE/cseq=84697600 (rdata0x1bc6e58) > 22-04-2014 15:40:49.987 Verbose stack.cpp:226: RX 1519 bytes Request msg > INVITE/cseq=84697600 (rdata0x1bc6e58) from UDP 10.193.153.20:45321: > --start msg-- > > INVITE sip:[email protected];user=phone SIP/2.0 > Via:SIP/2.0/UDP > 10.193.153.20;branch=z9hG4bKAS.-11o46re-10.193.153.115V5054-0-84697600-1297073918-1398181250046- > From:"user 298"<sip:[email protected] > ;user=phone>;tag=1297073918-1398181250046- > To:<sip:[email protected];user=phone> > Call-ID:[email protected] > CSeq:84697600 INVITE > Contact:<sip:10.193.153.20:5060> > P-Asserted-Identity:"user 298"<sip:[email protected]>,"user 298"< > tel:+12201234290 <+12201234290>> > Privacy:none > Route:<sip:[email protected]:5054;lr> > P-Charging-Vector:icid-value="a3eca51d51d54adcb92cb2b2d0aafac9@0: > 0:0:0:0:0:0:[email protected]" > Allow:ACK,BYE,CANCEL,INFO,INVITE,OPTIONS,PRACK,REFER,NOTIFY > Accept:application/media_control+xml,application/sdp,multipart/mixed > Supported: > Max-Forwards:10 > Content-Type:application/sdp > Content-Length:513 > > v=0 > o=AS 3234 1 IN IP4 10.193.3.103 > s=- > c=IN IP4 10.193.3.103 > t=0 0 > m=audio 5062 RTP/AVP 96 97 98 9 100 102 0 8 103 3 104 101 > a=rtpmap:96 opus/48000/2 > a=fmtp:96 usedtx=1 > a=rtpmap:97 SILK/24000 > a=rtpmap:98 SILK/16000 > a=rtpmap:9 G722/8000 > a=rtpmap:100 speex/32000 > a=rtpmap:102 speex/16000 > a=rtpmap:0 PCMU/8000 > a=rtpmap:8 PCMA/8000 > a=rtpmap:103 iLBC/8000 > a=rtpmap:3 GSM/8000 > a=rtpmap:104 speex/8000 > a=rtpmap:101 telephone-event/8000 > a=extmap:1 urn:ietf:params:rtp-hdrext:csrc-audio-level > > --end msg-- > 22-04-2014 15:40:49.987 Debug stack.cpp:411: Queuing cloned received > message 0x7ffb282065c8 for worker threads > 22-04-2014 15:40:49.988 Debug stack.cpp:189: Worker thread dequeue message > 0x7ffb282065c8 > 22-04-2014 15:40:49.988 Debug pjsip: sip_endpoint.c Distributing rdata to > modules: Request msg INVITE/cseq=84697600 (rdata0x7ffb282065c8) > 22-04-2014 15:40:49.988 Debug stateful_proxy.cpp:246: Proxy RX request > 22-04-2014 15:40:49.988 Debug aschain.h:124: AsChain inc ref > 0x7ffb50002180 -> 3 > 22-04-2014 15:40:49.988 Info stateful_proxy.cpp:451: Original dialog for > odi_WedEIb7OQM found: AsChain-orig[0x7ffb50002180]:2/2 > 22-04-2014 15:40:49.988 Debug stateful_proxy.cpp:454: Retrieved ACR > 0x7ffb5003d7b0 for existing AS chain > 22-04-2014 15:40:49.988 Debug stateful_proxy.cpp:471: Got our Route > header, session case orig, OD=AsChain-orig[0x7ffb50002180]:2/2 > 22-04-2014 15:40:49.988 Debug pjutils.cpp:507: Found Route header, URI = > sip:[email protected]:5054;lr > 22-04-2014 15:40:49.988 Debug pjutils.cpp:510: Route header is local > 22-04-2014 15:40:49.988 Debug stateful_proxy.cpp:1424: Top Route header is > local - erasing > 22-04-2014 15:40:49.988 Debug stateful_proxy.cpp:511: Trust mode > TRUSTED(,,), serving state orig AsChain-orig[0x7ffb50002180]:2/2 > 22-04-2014 15:40:49.989 Debug pjsip: tsx0x7ffb5c003 Transaction created > for Request msg INVITE/cseq=84697600 (rdata0x7ffb282065c8) > 22-04-2014 15:40:49.989 Debug stateful_proxy.cpp:1891: UASTransaction > constructor (0x7ffb5c0046e0) > 22-04-2014 15:40:49.989 Debug stateful_proxy.cpp:1892: ACR (0x7ffb5003d7b0) > 22-04-2014 15:40:49.989 Debug pjsip: tsx0x7ffb5c003 Incoming Request msg > INVITE/cseq=84697600 (rdata0x7ffb282065c8) in state Null > 22-04-2014 15:40:49.989 Debug pjsip: tsx0x7ffb5c003 State changed from > Null to Trying, event=RX_MSG > 22-04-2014 15:40:49.989 Debug stateful_proxy.cpp:350: tsx0x7ffb5c003f78 - > tu_on_tsx_state UAS, TSX_STATE RX_MSG state=Trying > 22-04-2014 15:40:49.989 Debug pjsip: endpoint Response msg > 408/INVITE/cseq=84697600 (tdta0x7ffb5c004830) created > 22-04-2014 15:40:49.989 Debug stateful_proxy.cpp:3211: Report SAS start > marker - trail (34) > 22-04-2014 15:40:49.989 Debug pjsip: endpoint Response msg > 100/INVITE/cseq=84697600 (tdta0x7ffb5c005a50) created > 22-04-2014 15:40:49.989 Info pjutils.cpp:1376: Cloning header! > 140716687054376 > 22-04-2014 15:40:49.989 Debug pjsip: tsx0x7ffb5c003 Sending Response msg > 100/INVITE/cseq=84697600 (tdta0x7ffb5c005a50) in state Trying > 22-04-2014 15:40:49.989 Debug pjsip: sip_resolve.c Target ' > 10.193.153.20:5060' type=UDP resolved to '10.193.153.20:5060' type=UDP > (UDP transport) > 22-04-2014 15:40:49.990 Verbose stack.cpp:242: TX 548 bytes Response msg > 100/INVITE/cseq=84697600 (tdta0x7ffb5c005a50) to UDP 10.193.153.20:5060: > --start msg-- > > SIP/2.0 100 Trying > Via: SIP/2.0/UDP > 10.193.153.20;received=10.193.153.20;branch=z9hG4bKAS.-11o46re-10.193.153.115V5054-0-84697600-1297073918-1398181250046- > Call-ID: [email protected] > From: "user 298" <sip:[email protected] > ;user=phone>;tag=1297073918-1398181250046- > To: <sip:[email protected];user=phone> > CSeq: 84697600 INVITE > P-Charging-Vector: icid-value=a3eca51d51d54adcb92cb2b2d0aafac9@0: > 0:0:0:0:0:0:[email protected] > Content-Length: 0 > > > --end msg-- > 22-04-2014 15:40:49.990 Debug pjsip: tsx0x7ffb5c003 State changed from > Trying to Proceeding, event=TX_MSG > 22-04-2014 15:40:49.990 Debug stateful_proxy.cpp:350: tsx0x7ffb5c003f78 - > tu_on_tsx_state UAS, TSX_STATE TX_MSG state=Proceeding > 22-04-2014 15:40:49.990 Debug stateful_proxy.cpp:2429: Looking for AS > chain for incoming transaction request, serving state = orig > AsChain-orig[0x7ffb50002180]:2/2 > 22-04-2014 15:40:49.990 Debug stateful_proxy.cpp:2439: Picking up original > AS chain > 22-04-2014 15:40:49.990 Debug stateful_proxy.cpp:2165: Performing > originating call processing > 22-04-2014 15:40:49.990 Debug stateful_proxy.cpp:2550: Applying > originating services > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:462: SPT class SessionCase: > result false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:569: Add to group 0 val false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:462: SPT class SIPHeader: > result false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:569: Add to group 0 val true > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:462: SPT class SessionCase: > result false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:569: Add to group 1 val false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:462: SPT class SIPHeader: > result false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:569: Add to group 1 val true > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:587: Result group 0 val false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:587: Result group 1 val false > 22-04-2014 15:40:49.991 Debug ifchandler.cpp:591: iFC does not match > 22-04-2014 15:40:49.991 Debug aschain.cpp:231: No match for > AsChain-orig[0x7ffb50002180]:2/2 > 22-04-2014 15:40:49.991 Debug stateful_proxy.cpp:2559: Done internal step > - advance link to AsChain-orig[0x7ffb50002180]:3/2 and go around again > 22-04-2014 15:40:49.991 Debug aschain.cpp:220: No ASs left in chain > 22-04-2014 15:40:49.992 Info stateful_proxy.cpp:2567: Originating services > disposition 2 > 22-04-2014 15:40:49.992 Info stateful_proxy.cpp:2242: Sprout has I-CSCF > function enabled > 22-04-2014 15:40:49.992 Debug acr.cpp:48: Created ACR (0x7ffb5c003a90) > 22-04-2014 15:40:49.992 Debug pjutils.cpp:251: aor_from_uri converted > sip:[email protected];user=phone to sip:[email protected] > 22-04-2014 15:40:49.992 Debug icscfrouter.cpp:339: Perform LIR - impu > sip:[email protected], originating false, auth_type None > 22-04-2014 15:40:49.993 Debug httpconnection.cpp:159: Allocated CURL > handle 0x7ffb5c009cd0 > 22-04-2014 15:40:49.996 Debug httpconnection.cpp:456: Sending HTTP request > : > http://hs.domain.com:8888/impu/sip%3A%2B12201234111%40domain.com/location(try > 0) on new connection > 22-04-2014 15:40:50.010 Debug httpconnection.cpp:482: Received HTTP error > response : > http://hs.domain.com:8888/impu/sip%3A%2B12201234111%40domain.com/location: > HTTP response code said error > 22-04-2014 15:40:50.010 Error httpconnection.cpp:536: > http://hs.domain.com:8888/impu/sip%3A%2B12201234111%40domain.com/locationfailed > at server 10.193.153.114 : HTTP response code said error (22 404) : > fatal > 22-04-2014 15:40:50.010 Debug statistic.cpp:103: Send new value for > statistic connected_homesteads, size 2 > 22-04-2014 15:40:50.011 Debug zmq_lvc.cpp:167: Update to > connected_homesteads statistic > 22-04-2014 15:40:50.011 Debug zmq_lvc.cpp:250: Clearing message cache for > 0x7ffb64009dc0 > 22-04-2014 15:40:50.011 Error httpconnection.cpp:574: cURL failure with > cURL error code 22 (see man 3 libcurl-errors) and HTTP error code 404 > 22-04-2014 15:40:50.011 Debug acr.cpp:82: Sending Null ACR (0x7ffb5c003a90) > 22-04-2014 15:40:50.011 Debug stateful_proxy.cpp:2295: No valid S-CSCFs > found > 22-04-2014 15:40:50.011 Debug acr.cpp:82: Sending Null ACR (0x7ffb5c003a90) > 22-04-2014 15:40:50.011 Debug acr.cpp:53: Destroyed ACR (0x7ffb5c003a90) > 22-04-2014 15:40:50.011 Debug pjsip: tsx0x7ffb5c003 Sending Response msg > 408/INVITE/cseq=84697600 (tdta0x7ffb5c004830) in state Proceeding > 22-04-2014 15:40:50.011 Debug pjsip: tdta0x7ffb5c00 Destroying txdata > Response msg 100/INVITE/cseq=84697600 (tdta0x7ffb5c005a50) > 22-04-2014 15:40:50.011 Verbose stack.cpp:242: TX 519 bytes Response msg > 408/INVITE/cseq=84697600 (tdta0x7ffb5c004830) to UDP 10.193.153.20:5060: > --start msg-- > > SIP/2.0 404 Not Found > Via: SIP/2.0/UDP > 10.193.153.20;received=10.193.153.20;branch=z9hG4bKAS.-11o46re-10.193.153.115V5054-0-84697600-1297073918-1398181250046- > Call-ID: [email protected] > From: "user 298" <sip:[email protected] > ;user=phone>;tag=1297073918-1398181250046- > To: <sip:[email protected] > ;user=phone>;tag=z9hG4bKAS.-11o46re-10.193.153.115V5054-0-84697600-1297073918-1398181250046- > CSeq: 84697600 INVITE > Content-Length: 0 > > > --end msg-- > > > > On Tue, Apr 22, 2014 at 4:40 PM, Eleanor Merry < > [email protected]> wrote: > > Hi Janek, > > Looking at your configuration files, what I think is happening (on an > external call) is: > > - Sprout rewrites the domain to mgcf.domain.com successfully. > - Sprout checks if there are any BGCF routes for the domain ' > mgcf.domain.com'. > - This fails, as the domain in the BGCF file is '10.193.153.100' > - Sprout attempts to route the call directly to mgcf.domain.com, which > fails. > > I'd need to see the sprout log files to confirm this though. > > The "domain" in the bgcf.json file should be the domain that you want > calls to route to (in this case mgcf.domain.com). The "route" should > contain the hostnames/IP address of nodes used to route to this domain (in > this case just the MGCF itself), e.g.: > > { "name" : "MGCF", > "domain" : "mgcf.domain.com", > "route" : ["10.193.153.100"] > } > > Can you make this change to the bgcf.json and see if external calls then > get routed correctly? > > If they don't, can you also attach the debug logs from sprout during an > external call attempt? Sprout logs are in /var/log/sprout/. To set the logs > to debug level you will need to create/edit the file > /etc/clearwater/user_settings and add log_level=5, and then run "service > sprout stop" to restart the sprout server (it's automatically restarted by > monit). > > Also, the initial prefix in the enum configuration file (for internal > calls) doesn't look right: > > "prefix" : "12201234 <[email protected]>" > > The prefix should just be the (initial) numbers to match, e.g.: > > "prefix" : "12201234" > > Hope this helps, > > Ellie > > > > -----Original Message----- > From: [email protected] [mailto: > [email protected]] On Behalf Of Jasio > Kololski > Sent: 22 April 2014 14:33 > To: [email protected] > Subject: [Clearwater] IBCF/BGCF configuration > > Hello Community, > > I am having problem setting up IBCF/BGCF configuration. > IMS->PSTN call cannot get through. > After AS returns originating INVITE, I keep getting sprout response 404 > Not Found for non-IMS call. > It sends that after querying HSS for external user. > At this point it should do ENUM query for this user and based on this, > query HSS or route it towards MGCF that I have setup? > I can't see any DNS/ENUM queries from sprout... > Is there anything to be turned on for it to work? > > On sprout I configured bgcf.json file as follows: > { > "routes" : [ > { "name" : "MGCF", > "domain" : "10.193.153.100", > "route" : ["mgcf"] > } > ] > } > > enum.json file contains: > { > "number_blocks" : [ > { "name" : "Internal numbers", > > "prefix" : "12201234 <[email protected]>", > > "regex" : "!^(.*)$!sip:\\[email protected]!" > }, > > { "name" : "External numbers", > "prefix" : "", > "regex" : "!^(.*)$!sip:\\[email protected]!" > } > > ] > } > Regards, > > Janek > > _______________________________________________ > Clearwater mailing list > [email protected] > http://lists.projectclearwater.org/listinfo/clearwater > > > _______________________________________________ Clearwater mailing list [email protected] http://lists.projectclearwater.org/listinfo/clearwater
