[Users] Re: [Devel] possibility to access dst_uri

Richard Z rzheng at gmail.com
Thu Oct 6 09:48:19 CEST 2005


Hi Bogdan,

In another thread, I talked about implementing a ring-both feature.
Call one user would ring another user as well as the registered user.
One way would be to do a lookup on one user, save all ruris and
associated dst_uris to avps. Perhaps one avp for both ruri and
dst_uri. Push the second user, another lookup, save the ruris and
dst_uris. Then reload all avps.

I don't think the logic can be implemented in branch route because it
is only called right before t_relay.

Any thoughts?

Thanks,
Richard


On 8/28/05, Bogdan-Andrei Iancu <bogdan at voice-system.ro> wrote:
> Hi Richard,
>
> that's right - you can apply in branch route exclusively per-branch changes.
>
> regards,
> bogdan
>
> Richard Z wrote:
>
> >So each branch route can have different sip message going out, e.g.
> >different sdp value for different dst_uri?
> >
> >
> >On 8/27/05, Bogdan-Andrei Iancu <bogdan at voice-system.ro> wrote:
> >
> >
> >>Hi Richard,
> >>
> >>the variables and the functions handles the dst_uri of the request (and
> >>not also of the branches); what you can do is to combine their usage
> >>with the branch route (in order to inspect the dst_uri of all branches).
> >>
> >>regards,
> >>bogdan
> >>
> >>Richard Z wrote:
> >>
> >>
> >>
> >>>Great!
> >>>
> >>>Can the change handle multiple registration of an address?
> >>>
> >>>Thanks,
> >>>Richard
> >>>
> >>>
> >>>On 8/26/05, Daniel-Constantin Mierla <daniel at voice-system.ro> wrote:
> >>>
> >>>
> >>>
> >>>
> >>>>Hello,
> >>>>
> >>>>latest openser version from cvs includes a set of new functions (core
> >>>>and avpops) and pseudo-variable which allow to access and manage the
> >>>>value of dst_uri.
> >>>>
> >>>>The dst_uri field contains the address of the next hop, when the routing
> >>>>does not follow R-URI address. Such cases are Route header driven
> >>>>routing (dst_uri is set after loose_route() to the value of next Route
> >>>>header), contacts behind nat (dst_uri is set to the address of nat after
> >>>>lookup("location")) or dispatcher usage. The dst_uri has higher priority
> >>>>in routing over R-URI but less than explicit parameters in relaying
> >>>>functions (e.g., t_relay_to*()).
> >>>>
> >>>>The field was invisible from the script but it proved in the discussions
> >>>>on the mailing list to be important to access it. For example, to detect
> >>>>whether the caller and callee are behind same nat. Also, it can be
> >>>>checked in case of preloaded Route header to secure relaying to special
> >>>>resources (e.g., pstn gateway). With the new branch_route the value of
> >>>>dst_uri can be checked for each branch.
> >>>>
> >>>>A short summary of what was added:
> >>>>
> >>>>* core functions:
> >>>>- setdsturi("uri") - set the value of dst_uri
> >>>>- resetdsturi() - reset the value of dst_uri
> >>>>- isdsturiset() - test if the value of dst_uri is null
> >>>>
> >>>>* pseudo-variables
> >>>>- $du - value of dst_uri (added long time ago)
> >>>>- $dd - domain of dst_uri
> >>>>- $dp - port of dst_uri
> >>>>- $dP - transport protocol of dst_uri
> >>>>
> >>>>* avpops changes
> >>>>- avp_write() can read the value of dst_uri and write it in an avp
> >>>>- avp_pushto() can write the value of an avp in dst_uri
> >>>>
> >>>>Tutorials and dokuwiki will be updated soon.
> >>>>
> >>>>Daniel
> >>>>
> >>>>
> >>>>
> >>>>_______________________________________________
> >>>>Devel mailing list
> >>>>Devel at openser.org
> >>>>http://openser.org/cgi-bin/mailman/listinfo/devel
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>_______________________________________________
> >>>Users mailing list
> >>>Users at openser.org
> >>>http://openser.org/cgi-bin/mailman/listinfo/users
> >>>
> >>>
> >>>
> >>>
> >>>
> >>
> >
> >
> >
>
>



More information about the Devel mailing list