Forked dialing and CDRs
I'm using XML CDRs, posting to a rails app to capture and display CDR records. Incoming calls are forked to both internal extensions and external cell phones. The mapping is looked up in the DB via a javascript call which hands back a dialstring similar to: 2008-08-05 10:09:21 [INFO] mod_dptools.c:862 log_function() dial_string={ignore_early_media=true}sofia/internal/101%192.168.1.20,sofia/internal/102%192.168.1.20,sofia/loopback/CELL%192.168.1.20:5061 The sofia/internal/##%domain works as expected. I get one CDR with everything stacked up in the XML. The sofia/loopback/##@domain:5061 generates a new CDR. This is expected but is a pain in the rear since it means that I have to cross-correlated log entries to show the one that one the race and suppress/roll up the rest. Ok, so why don't I do: sofia/gateway/mygateway/cellnumber%domain ? Because I want to do other work before dialing out the gateway and to centralize the work done for that dialout. Specifically, I do real-time rating to determine which actual gateway to route the call through and also handle failover if a particular gateway doesn't terminate the call with an expected error code. There is a level of abstraction missing here I think. The transfer application does exactly what I want to do. I give it a context and a # and it routes the call as expected. But transfer can't handle forked dialing. For that I need bridge. The bridge application can fork but requires too much knowledge about the transport/gateway/etc. Thoughts?
participants (1)
-
Rupa Schomaker (lists)