In modules/rtpengine/rtpengine.c:

> +
> +/*
> + * Main balancing routine. This DO try to keep the same proxy for
> + * the call if some proxies were disabled or enabled (e.g. kamctl command)
> + */
> +static struct rtpp_node *
> +select_rtpp_node(str callid, int do_test, int op)
> +{
> +	if(!active_rtpp_set) {
> +		LM_ERR("script error - no valid set selected\n");
> +		return NULL;
> +	}
> +
> +	// calculate and choose a node
> +	if (op == OP_OFFER) {
> +		// run the selection algorithm

"Offer" doesn't necessarily mean that this will be a new entry. A re-invite will also do an "offer" but needs to do a lookup into the hash table first. I think a lookup should always be done first, with fallback to creating a new entry in case of an offer.


Reply to this email directly or view it on GitHub.