I suggest you listen to Ken Rice's "DIY dialplan" presentation:<br><a href="http://torrents.freeswitch.org/conf_call_2012-05-16.torrent">http://torrents.freeswitch.org/conf_call_2012-05-16.torrent</a><br><br>
He makes a lot of interesting statements about doing modules. He may not answer all of these questions specifically but it's definitely worth your time.<br><a href="http://torrents.freeswitch.org/conf_call_2012-05-16.torrent">http://torrents.freeswitch.org/conf_call_2012-05-16.torrent</a><br>
<br>-MC<br><br><div class="gmail_quote">On Mon, Jul 30, 2012 at 3:26 PM, Juan Pablo L. <span dir="ltr"><<a href="mailto:jpablolorenzetti@hotmail.com" target="_blank">jpablolorenzetti@hotmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi, yes thanks! i checked that and i do not have an issue in building the module, that<br>
is clear thanks to that page and other module source codes, what i do not understand<br>
are things like (locking mainly): when freswitch calls the unload function in the module,<br>
is there a chance that some of the code could be in the middle of execution in a different call (different thread)?<br>
, can the load function be called more than once ? i know (deducted really) that the main function,<br>
the one that actually implements the functionality can be called from different threads (as i read freeswitch uses different<br>
threads to treat incoming calls into the switch) so if i have something shared but i know it wont change<br>
for as long as the module is loaded i do not need to put a lock but that same thing has some memory allocated<br>
that will be freed when freeswitch deleted the memory pool after unloading the module that was passed at loading time ..<br>
i also read that using the session memory pool is not good idea, so almos all stock modules use it like vm ?<br>
so i m trying to figure out all these but i do not find docs about it ... and you know how murphy is ..<br>
<br>
<br>
<br>
----------------------------------------<br>
> Date: Tue, 31 Jul 2012 00:05:50 +0200<br>
> From: <a href="mailto:daniel.swarbrick@gmail.com">daniel.swarbrick@gmail.com</a><br>
> To: <a href="mailto:freeswitch-dev@lists.freeswitch.org">freeswitch-dev@lists.freeswitch.org</a><br>
> Subject: Re: [Freeswitch-dev] about developing modules and documentation<br>
><br>
> Have you checked<br>
> <a href="http://wiki.freeswitch.org/wiki/Authoring_Freeswitch_Modules" target="_blank">http://wiki.freeswitch.org/wiki/Authoring_Freeswitch_Modules</a> ?<br>
><br>
> On 30/07/12 23:55, Juan Pablo L. wrote:<br>
> > Hi, i m not sure if this is the correct list but i m developing a module to perform<br>
> > some services but i do not have a clear understanding how modules are treated/managed<br>
> > in freeswitch and its internal flow when it is calling the functions from modules, etc etc .. i m looking<br>
> > into other modules source codes but there are pieces (well all the code related to multi-threated) that<br>
> > i do not understand because i do not have this base. thanks!<br>
><br>
><br>
> _________________________________________________________________________<br>
> Professional FreeSWITCH Consulting Services:<br>
> <a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
> <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
><br>
> FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>
> <a href="http://www.cudatel.com" target="_blank">http://www.cudatel.com</a><br>
><br>
> Official FreeSWITCH Sites<br>
> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
> <a href="http://wiki.freeswitch.org" target="_blank">http://wiki.freeswitch.org</a><br>
> <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
><br>
> Join Us At ClueCon - Aug 7-9, 2012<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>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>
<a href="http://www.cudatel.com" target="_blank">http://www.cudatel.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://wiki.freeswitch.org" target="_blank">http://wiki.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
Join Us At ClueCon - Aug 7-9, 2012<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>
</blockquote></div><br><br clear="all"><br>-- <br>Michael S Collins<br>Twitter: @mercutioviz<br><a href="http://www.FreeSWITCH.org" target="_blank">http://www.FreeSWITCH.org</a><br><a href="http://www.ClueCon.com" target="_blank">http://www.ClueCon.com</a><br>
<a href="http://www.OSTAG.org" target="_blank">http://www.OSTAG.org</a><br><br><br>