I am in desperate need of an API that can handle functions like trunk, route and extension management. Handling this using a web GUI may work for someone running a company phone system. But we are running a call center where we add hundreds of trunks at once, and almost as many routes. I understand I can use bulk files in some cases, But that also takes human intervention. To have a system that relies on human intervention seems archaic to me. I’ve seen this asked in other forum topics. In my opinion this requirement is grossly overlooked. Today’s technology pretty much requires an API for system management . To not have a management API for FreePBX is inexcusable.
If such a system exists inside or outside FreePBX, please let me know and I will apologize for everything I say here. But I do find it hard to believe this is non-existent. .
1 - Feature request and bug reports are not handled through the forums and tend to get lost (burried) here. Please submit feature requests and bug reports at http://issues.freePBX.org.
2 - This is an open source project and you are free to view the source of any open source component and modify it to your hearts content. A revamp of bulk did’s and extensions is on our radar though it hasn’t been fit in to the road map yet. We want to redo these and make them better at some point. You may consider looking at the source for these as a starting point if you want to write something.
I understand your point about placement. I was hoping maybe there was a resource I was missing out there. With such a large community I was hoping someone has a solution in place they’d be willing to share.
Modifying open source code is a double-edged sword. I can do my own cool stuff, but with new releases my cool code could be hobbled or just plain killed.
With that said I think my only alternative is to begin work in the direction of self-sufficient code. .
That is why you submit your code back, so it is not killed by an update. If you think that modifying one of those modules is the wrong route (it may be) you can use them as a reference and build your own module. We are not recommending 12 for production yet (I think we just went or are about to go RC) but you can look at the BMO stuff we are doing which makes module building super clean. The above modules can tell you “what to write” database wise. I am working on a working hello world module with my other projects but the wiki has some pseudo code to reference for things like ajax calls. You can probably throw together a REST module for your own use. Submitting stuff will go under a bit of scrutiny but also comes with the perk of peer feed back. That said you can simply write something for in house use too that does just what you want. Updates may overwrite your changes to other modules that get updated, updates won’t change your module if it is not in the repo.
Thanks for your feedback (and being so nice after my rant)… I really appreciate the help. Time to get my hands dirty in FreePBX now that our call center app is complete.