Hello,

You can use the mqueue module functions to store data about the call on the request route.and use rtimer module to créate additional timer processes to fetch those informations and send it to rabbitmq.

You will need to figure Out what interval is best for you to check if data is available on the mqueue.

Le 21 févr. 2023 16:55, Anthony Wittig <awittig@mangovoice.com> a écrit :
Hello,

I'd like to start tracking a call history/log as soon as I receive a call. I'd like the customer to be able to see that there's an incoming call to one of their numbers in real time.

I'm thinking of using the RABBITMQ Module to manually emit an event from my main route when I receive an INVITE. Is that a bad idea? What if the broker isn't located on the same host (latency/availability)? I don't want to negatively affect the call processing. 

I was looking at the Dialog Module and it has three event routes:
* event_route[dialog:start]
* event_route[dialog:end]
* event_route[dialog:failed]

It's really close to what I want, but I'd like to capture the dialog before it starts (Unconfirmed or Early). Maybe another option is to scan the Dialog table with an external process and emit events from there.

Has anyone had success in creating a realtime call history? Is there a better way to go about doing so?

Thanks!
--
Anthony Wittig
Mango Voice Developer