Hi Paul, I think that this link may help you: https://github.com/Metaswitch/homestead/blob/dev/docs/homestead_api.md
And this one can help to interact with Homestead databases if you need: https://github.com/Metaswitch/clearwater-docs/wiki/Troubleshooting-and-Recovery Now I try even if I am not a real Guru to give you an idea of the interaction Sprout - Homestead. You can verify the flow using tools like "tshark", you can collect a trace and then using for example wireshark you can see the flow (filtering by SIP and HTTP) and comparing it to an IMS procedure flow you should be able to understand it. The flow I am going to give to you as example is the registration, you have to remember that sprout plays, if I-CSCF functionality is enabled (like in my case), both I/S-CSCF roles. You can give a glance to the general registration procedure at the following link: http://www.eventhelix.com/ims/registration/ims_registration.pdf In IMS we have these two phases registration because of the authorization mechanism. First Sprout receives the register request, the I-CSCF part of it needs to retrieve the S-CSCF assigned to that user: you see the first HTTP get request starting from sprout to Homestead and you see a first 200 OK response with a payload like: {"result-code":2002,"scscf":"sprout_name.your.domain:5054";transport=TCP} After this the I-CSCF component of sprout knows which is the S-CSCF to which forward the request (in my case itself). Now the S-CSCF perform the second HSS query: this one will provide authentication information that will be used to challenge the user. The 200 OK response in this case looks like: {"digest":{"hal1":"xxxx","realm":"your.domain","qop":"auth"}} Now sprout answers with a 401 unauthorized challenging the user application as previewed by the standard. The user application will solve the challenge and send the solution in a new register request: you have the same interaction from the I-CSCF with homestead to retrieve the s-cscf, exactly like before. Now the information of the users such as Initial Filter Criteria are downloaded by the S-CSCF from the HSS, i.e. Homestead, using HTTP PUT this will change the registration status on the HSS. You can verify in the 200 OK answer by Homestead the presence of the IFCs data. If the authentication is correctly verified by the S-CSCF it will answer with a 200 OK and the registration process can be considered concluded. Be careful because in the middle of these messages you can find other HTTP requests directed to Ralf for billing purposes. This is not a deep explanation of the registration process, it's focused only to give a simple idea of the flow Sprout-Homestead during it. Hope this helps, Abaco P.S. if you have an external HSS the flow is practically the same, is only homestead that not having the data itself queries you HSS through Diameter protocol. From the Sprout standpoint nothing changes everything should involve only Homestead 2014-11-27 9:33 GMT+01:00 Paul Sun <[email protected]>: > Can anyone explain the flow between sprout and homestead? > > Thanks > > > - PS > > From: Paul Sun > Sent: Wednesday, November 26, 2014 3:42 PM > To: [email protected] > Subject: Flow in CLearwater in each component > > Hi > > Is there any material describing the flow in each components when a SIP > REGISTER/SUBSCRIBE/INVITE is received? E.g. when SIP REGISTER is picked up > in SPROUT, it will send HTTP request to HOMSTEAD, but what HTTP GET/PUT is > supposed to achieve? > > Thanks > > > - PS > _______________________________________________ > Clearwater mailing list > [email protected] > http://lists.projectclearwater.org/listinfo/clearwater > _______________________________________________ Clearwater mailing list [email protected] http://lists.projectclearwater.org/listinfo/clearwater
