On Fri, 2 Nov 2007, Juha Heinanen wrote:
Chris Heiser writes:
Call comes in for user A:
- Use avp_db_load to find that user A wants to parallel fork to 123 and 456
- Call to 123 fails because there's no registration
- Call to 456 times out
== At this point we serial fork to the next step which might hbe - Just call my cell
What's unclear to me is how to actually achieve this logic. I mean, getting the initial parallel fork is quite simple using avp_pushto.
you can add permanent registrations for the aor of the user pointing to 123, 456 and your mobile number. just make sure that q value of the mobile is lower that q value of 123 and 456.
if 123 and 456 are registered endpoints, how do I influence their q value?
And lets complicate things more, what if I wanted to call 123 first, then my cell, then 123 again?
Would I solve all this by adding permanent registrations that point back to OpenSER for registered endpoints, etc...? So a user would have a bunch of permanent registrations with decreasing q values that point into OpenSER, PSTN gateway, Voicemail, etc...?
Comments? Ideas? Thoughts? Am I totally insane? Should I be using a specific module for this?
you should be able to accomplish the above this using lcr modules's load_contacts()/next_contacts() functions.
-- juha