Hacker News new | ask | show | jobs
by mc_ 3137 days ago
Just curious how you evaluated projects like FreeSWITCH and Kamailio and what you found lacking/horrible? We have been building on them for 8+ years now with no major issues. We've found both communities and core teams to be helpful and responsive with bug reports, feature requests, and pull requests.
2 comments

For me, I want something that immediately works with local phones and local calling, built in admin panel that shows active calls, transfer calls, build out prompts for conferencing, 1st class iOS / Android support. Web app integration to accept calls there. Database driven. I know these things are possible but it's a ton of work and messing with configs and lacking documentation. My goal is to make express.js but for voip. code it however you want, offer a preset with admin panel, mobile apps, and default middleware for conferencing, whispering, etc. Keeping all setup as code.
Understood. I don't want to deter you; I will instead suggest taking a little more time to learn about telecom, SIP, and running telecom infrastructure. Just glancing at your repo, I see you are trying to send/receive the SIP yourself, which is ambitious. SIP interop probably accounts for a larger-than-it-should-be percentage of support issues; non-negligible amounts of time are spent arguing with other carriers and phone manufacturers about interpretations of the SIP RFCs.

Spend some time trawling the various soft-switch mailing lists. Join the VoiceOps mailing list and trawl through there. Read the SIP RFCs and curse their use of MAY and MIGHT and SHOULD! :)

There's a lot of wisdom baked into the projects about how to handle phone calls; I don't know that there's money to be made redoing their work to be honest. Scratch the itch for sure! But be honest in your expectations - you're probably looking at years before your project becomes viable (unless there's a JS/Node SIP stack out there you could plug into already?) in a commercial sense.

Best of luck!

Thanks for all the tips! Yes I have been reading through the SIP RFC’s haha. Making this for the company I work at so I have a small amount of phones. I may publish a list of the ones the library will support. But I figure, if it gets big enough, other people can help fix the issues between phones. Everything just feels so old school and a pain to configure. It’s worth trying, who knows if I’ll get it to a working state. But I truly think it’ll be way better than anything out there!
FWIW, I went down this road a few years ago. If I were you, I'd seriously consider rescoping your project. Asterisk is a beast, but it is capable of doing everything you want. If the problem you're trying to solve is that Asterisk is a pain to install, configure, and administer, why not solve that problem? An easy way to install Asterisk + a nice control panel on top of it would be really appealing to a lot of people.
Because that wouldn't solve half the problems and some things just aren't possible. Building off existing open source phone solutions is like asking a team to continue building on top of garbage code, have you looked at the FreePBX repos on github? I don't understand how you could ever extend it
FreePBX is not great, but I'm not saying that you should use it. I'm saying that you should use Asterisk, which is what FreePBX is built on top of.

Asterisk is really, really solid, and will handle a lot of things for you that you shouldn't have to care about handling - lower level stuff.

Check this out: http://www.igorescobar.com/blog/2014/08/13/working-with-aste...

If you're going through the SIP RFCs for what you want, you're attacking the problem at the wrong layer of the stack. It's just not necessary to write your own SIP stack. It'd be like writing SSL negotiation logic for a web app: totally pointless. Just use what already works and extend it with the fancy UI and dev experience that you want. It's totally possible.

Referring to FreeSWITCH in particular here (although it is the case for Asterisk, OpenSIPS and Kamailio at least)... The books cover those topics!
Hey! You seem to have a lot of experience on the VoIP field, any suggestion for my situation?

https://news.ycombinator.com/item?id=15690623

Thanks

Every suggestion will be Asterisk / FreeSwitch (have fun learning how to configure it all and good luck coming back to it in a year) or a hosted solution, this is what I want to solve :) I will admit I am new to this field but that is my impression so far.