[OpenSIPS-Users] async and event handlers
John Quick
john.quick at smartvox.co.uk
Mon Apr 8 09:36:39 EDT 2019
Hi Bogdan,
I call save(location) from the script in the usual way.
>From observation of events triggered by this process, I found (as you would
expect):
E_UL_CONTACT_INSERT event is triggered whenever a contact is inserted
E_UL_CONTATC_DELETE event is triggered whenever a contact is deleted
It is my intention to use these events to update a record stored in another
completely separate database.
This additional database is used - indirectly - to control core FreeSwitch
telephony servers. It allows them to know if a particular AOR is registered
and thereby avoids the need to send an INVITE to the OpenSIPS Proxy and get
back a 404 when the user has no devices registered.
I am updating the additional database from the event handlers by calling
cache_store(). [It is actually a couchbase store.]
My question is this: Can I use async() or launch() as a wrapper for a
cache_store() function call made from within an event handler? Is there any
advantage to doing so or can I regard event handlers as a safe place to
initiate blocking operations because, I assume, events must already have
their own queue.
I tried Ben's suggestion to make the event handler itself async, but this
failed as explained earlier in this thread.
John Quick
Smartvox Limited
> Hi John,
>
> I don't think you can "replicate" the event triggers with some
> avp_db_query() from script. When you so a save(location), you never know
> if that call will translate into updating an existing contact or in
> inserting a new one - this is no visible at script level
>
> Regards,
>
> Bogdan-Andrei Iancu
More information about the Users
mailing list