Hi Joćo,<div><br></div><div>Today I got the following log message and recalled your advice to launch a new thread:</div><div><br></div><div> switch_core_session.c:1171 Session 73 (sofia/external/00...mynumber) Locked, Waiting on external entities</div>
<div><br></div><div>We had a problem to establish a call (NO_ROUTE_DESTINATION) - previously all calls to same direction were successful.</div><div><br></div><div>Is this kind of problems you meant to avoid by launching new thread?</div>
<div>If not, could anyone please advice what does this message mean (Locked, Waiting on external entities) and whether it can cause a call attempt to fail with NO_ROUTE_DESTINATION?</div><div><br></div><div>I am referring to:</div>
<div>2010/5/22 Joćo Mesquita <span dir="ltr"><<a href="mailto:jmesquita@freeswitch.org">jmesquita@freeswitch.org</a>></span><br><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
As I have been advised back in the days, if you happen to do this, copy the vars from the session thread and launch a new one, otherwise you are going to lock sessions no matter what.</blockquote></div><div><br></div><div>
Thank you,</div><div>Vitalie</div><div><br><br><div class="gmail_quote">2010/5/22 Joćo Mesquita <span dir="ltr"><<a href="mailto:jmesquita@freeswitch.org">jmesquita@freeswitch.org</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
As I have been advised back in the days, if you happen to do this, copy the vars from the session thread and launch a new one, otherwise you are going to lock sessions no matter what.<div><br></div><font color="#888888"><div>
JM</div></font><div><div></div><div class="h5"><div>
<br><br><div class="gmail_quote">On Fri, May 21, 2010 at 7:27 PM, Michael Collins <span dir="ltr"><<a href="mailto:msc@freeswitch.org" target="_blank">msc@freeswitch.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I can vouch for the fact that some folks keep showing up and asking for this kind of feature. We're not big fans of the straight-to-db paradigm, but others certainly are. I think the devs would be agreeable to have this in contrib for people to play with at their own risk. As long as the core devs & company don't have to answer questions about your buggy module ;) then it should be okay. Just be ready to offer support for your module because everyone who uses it will come asking for advice. <br>
<br>-MC<br><br><div class="gmail_quote"><div><div></div><div>On Fri, May 21, 2010 at 7:57 AM, Vitalii Colosov <span dir="ltr"><<a href="mailto:vetali100@gmail.com" target="_blank">vetali100@gmail.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><div><div></div><div>
<div>Hi group,</div><div><br></div><div>I would like to create and contribute to the community a module: "mod_cdr_logic" (or whatever name will be proposed).</div><div>Do you think ***from your experience*** that there is a practical need in such module, or better to concentrate on something else :-) ?</div>
<div><br></div><div><br></div><div>In high level:</div><div>Module will export CDRs directly into the database with failover, applying business rules (with regular expressions) to the values exported</div><div><br></div>
<div>
More detailed:</div><div>After the call is finished, module will export selected chanel variables directly into any provided table (odbc used).</div><div>It will apply business rules to the selected values (based on regular expressions, condition-action dialplan style).<span style="white-space:pre">                </span></div>
<div>Module will produce one CDR per leg (outgoing/incoming, configurable).</div><div>Also it will support fail over: if the main database is not available, it will try to export into a backup database, and if that will be down as well, it will dump into a local CSV file.</div>
<div><br></div><div><br></div><div><br></div><div>In the config file one will provide:</div><div><span style="white-space:pre">        </span>1.Mapping rule - variable name to the corresponding table field name</div>
<div><span style="white-space:pre">        </span>2.Set of business rules to apply</div><div><span style="white-space:pre">        </span></div><div><span style="white-space:pre">        </span></div>
<div>Config file example (will be in regular xml eventually):</div><div>--------------------------------------------------------------------</div><div>#these are the values that are taken directly from channel variables</div>
<div><channel_variables_map></div><div> #channel variable-->mapped to the table field</div><div> calling_number->calling_number</div><div> destination_number->called_number</div><div> dialed_dtmf_digits->dialed_digits </div>
<div><channel_variables_map/></div><div><br></div><div><br></div><div>#these are the new values that will be determined at the business rules stage</div><div><new_variables></div><div> sales_department_call->sales_department_call</div>
<div> technical_department_call->technical_department_call</div><div> one_more_lost_client->one_more_lost_client</div><div> one_more_happy_client->one_more_happy_client </div><div><new_variables/></div>
<div><br></div><div><br></div><div><rules><span style="white-space:pre">        </span></div><div><span style="white-space:pre">                </span><condition field="dialed_dtmf_digits" expression="^(1)(\d+)"><span style="white-space:pre">                                </span></div>
<div><span style="white-space:pre">                        </span><action set="sales_department_call=1"/></div><div><span style="white-space:pre">                        </span><anti-action set="technical_department_call=1"/><span style="white-space:pre">                </span></div>
<div><span style="white-space:pre">                </span><condition/><span style="white-space:pre">                                                </span></div><div><span style="white-space:pre">                </span><condition field="hangup_cause" expression="NO_ANSWER"><span style="white-space:pre">                                </span></div>
<div><span style="white-space:pre">                        </span><action set="one_more_lost_client=1"/></div><div><span style="white-space:pre">                        </span><anti-action set="one_more_happy_client=1"/></div>
<div><span style="white-space:pre">                </span><condition/><span style="white-space:pre">                                                </span></div><div><rules/></div><div>--------------------------------------------------------------------</div>
<div><br></div><div><br></div><div>Would be glad to hear your opinion regarding usefulness or useless of such module in the contrib dir.</div><div><br></div><div><br></div><div>Thank you,</div><div>Vitalie</div><div><br>
</div>
<div><br></div>
<br></div></div>_______________________________________________<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br>
<br>_______________________________________________<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br></div>