[Asterisk-Users] Enabling rtcachefriends prevents phones from
calling each other
Kevin P. Fleming
kpfleming at digium.com
Mon Jul 11 18:48:19 MST 2005
Star User wrote:
> So despite the fact that phone B's registration data (IP address and port) is in Server A's database, the Asterisk on Server A doesn't know how to route the call to phone B. It looks like Asterisk is using cached data and ignoring the database, but the registration info for phone B never got into the cache.
rtcachefriends is not designed for use in this way, it assumes it has
_exclusive_ control of the database. If Server A makes _any_ reference
at all to Phone B before it has registered to Server B, then Server A
will have a cached "unknown address" for Phone B, expecting that it will
later see a registration for Phone B. It will not ever look back into
the database for Phone B's address until the cached record expires from
memory.
Basically, you cannot cache records when you are sharing a database,
unless the systems doing the caching are aware of each other and can
tell each other when to flush and/or update their caches.
More information about the asterisk-users
mailing list