I would start by using FS extensively and looking at console logs or playing with ESL to understand the logic (channel states, events, etc.). Then try to understand well the code of small modules like mod_blacklist, and slowly going to the core stuff from there. FS code is in general really well put together and, compared to Asterisk, I find it very easy to read and understand without documentation. Well, maybe a few drawings could help to learn faster... Have fun, François. On Thu, 2012-02-16 at 15:41 +0600, Arif Hossain wrote:
I'm quite new to freeswitch. I have some experience in asterisk. But Mostly about how to configure asterisk. The codebase of freeswitch is quite large and seems overhelming at first sight. I'm a moderately good c programmer but i don't have a lot of experience understanding a huge codebase only by reading code.
I saw freeswitch does not come with a "developer manual" or something like that. Which would be very helpful. Because i do have a moderate knowledge about sip and telephony technologies.
So any other ways to understand freeswitch codebase(the core, and important modules like media session handling etc) efficiently? I'm willing to "learn" and contribute to the project.
I know "knowledge" is itself a "resource". But any help regarding this would be wonderful.
At this time i have checked out freeswitch code from git, loaded it in eclipse, and trying to understand some core data structures. But I've realized it would be very difficult to understand everything by myself.
Thanks in advance.