Thanks for the advice, Steven!<div><br></div><div>I would like to thank all the responders, I managed to create an application that uses core ODBC and is accessing MySQL table to get the needed information.</div><div><br></div>
<div>It took less then 3 hours...</div><div><br></div><div>Taking into consideration that I did not have any idea from the beginning, looks like the learning curve here is just perfectly optimized for the newbies... :-)</div>
<div><br></div><div>FreeSWITCH really rocks!</div><div><br></div><div>Will keep learning.</div><div><br></div><div>Regards,</div><div>Vitalie<br><br><div class="gmail_quote">2010/4/23 Steven Ayre <span dir="ltr"><<a href="mailto:steveayre@gmail.com">steveayre@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">If you're looking for help on writing new applications then of course<br>
everything under src/mod/applications/*/ provide good examples.<br>
<br>
There's also some documentation online of the APIs available to you<br>
within FreeSWITCH:<br>
<a href="http://docs.freeswitch.org/" target="_blank">http://docs.freeswitch.org/</a><br>
<br>
In particular I recommend you look at the following sections<br>
Modules -> Brought To You By APR<br>
Modules -> Core Library<br>
<br>
Core Library will tell you the APIs for interacting with<br>
sessions/channels (calls) and provide you with useful interfaces for<br>
doing may useful things like DB access, hash tables, file access etc,<br>
while APR gives you a platform independant way of doing things like<br>
like memory allocation, network access, threading etc. Using them will<br>
save you much of the work and keeps the program style nicely<br>
consistent across FreeSWITCH. Done right your module should also work<br>
on any platform FS runs on without any changes needed (unless you app<br>
depends on something that really is platform-specific such as loading<br>
a DLL file on Windows).<br>
<br>
-Steve<br>
<div><div></div><div class="h5"><br>
<br>
<br>
On 23 April 2010 15:19, Vitalii Colosov <<a href="mailto:vetali100@gmail.com">vetali100@gmail.com</a>> wrote:<br>
> OK I think I found, need to use: SWITCH_ADD_APP<br>
> Thank you very much!!!<br>
><br>
> 2010/4/23 Vitalii Colosov <<a href="mailto:vetali100@gmail.com">vetali100@gmail.com</a>><br>
>><br>
>> Thanks Mathieu,<br>
>> This really helped!<br>
>> I was able to get Hello World string during the module load :-)<br>
>> Moving to the next step, how can I define an application, let say<br>
>> "skel_app" inside this module?<br>
>> In order to be able to execute it from dialplan.<br>
>> I thought the following does this: SWITCH_ADD_API(api_interface, "skel",<br>
>> "Skel API", skel_function, "syntax");<br>
>> But when I executed "skel" from dialplan, I got error: "Invalid<br>
>> application skel".<br>
>> Could you hint me please?<br>
>> Thank you very much!<br>
>> Vitalie<br>
>><br>
>><br>
>> 2010/4/23 Mathieu Rene <<a href="mailto:mrene_lists@avgs.ca">mrene_lists@avgs.ca</a>><br>
>>><br>
>>> Hi<br>
>>><br>
>>> Look at mod_skel in src/mod/applications<br>
>>><br>
>>> Mathieu Rene<br>
>>> Avant-Garde Solutions Inc<br>
>>> Office: + 1 (514) 664-1044 x100<br>
>>> Cell: +1 (514) 664-1044 x200<br>
>>> <a href="mailto:mrene@avgs.ca">mrene@avgs.ca</a><br>
>>><br>
>>><br>
>>><br>
>>><br>
>>> On 2010-04-23, at 6:43 AM, Vitalii Colosov wrote:<br>
>>><br>
>>> > Hi dear group,<br>
>>> ><br>
>>> > I would like to start writing plugins (applications) for FreeSWITCH<br>
>>> > that will be called from dialplan:<br>
>>> ><br>
>>> > <action application="my_cool_application"...><br>
>>> ><br>
>>> > Could you please provide me some steps following which I will be able<br>
>>> > to create "helloworld" C/C++ application that will be called from dialplan?<br>
>>> ><br>
>>> > Or some link if this is already described somewhere... I tried to<br>
>>> > google but did not find that.<br>
>>> ><br>
>>> > Then, if I will create something useful, I will contribute it to the<br>
>>> > community with pleasure... :-)<br>
>>> ><br>
>>> > Thank you very much!<br>
>>> ><br>
>>> > Vitalie<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>
>>> _______________________________________________<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>
><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>
<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>
</div></div></blockquote></div><br></div>