PBXDom, Behind The Scenes

Hadi Hakimi
Hadi Hakimi
3 min read

If you’re wondering what technology has been used to develop PBXDom, then put some time to read through this. Over this tiny little piece, I’m going to tell you about the core technology being used to provide super fast and efficient service on PBXDom, as well as presenting a few reasons for such a pick.

In the first place, PBXDom was developed using PHP and MySQL and a bunch of other programming languages like Delphi. Although PHP did not sound like a bad idea in 2013, when the development process began, but very soon as the platform was launched on the worldwide web, the team realized that due to some reasons, especially performance and speed, it would be better to rewrite the whole program using another programming technology. As difficult as it might sound, but the team had become determined to go through all that effort and lay all the bricks down on the wall all over again.

And I personally think that it was such a brilliant decision of the PBXDom team. Because at that point and time, PBXDom was still a toddler and not this huge and big with lots of functionalities and features. Of course, it was complex, but still, it was possible—at least, in comparison to what and how we know PBXDom today.

PBXDom Beta version, or what’s known in Business Minimum Viable Program (MVP), initially had only 6 widgets and 3 reports. Today, everything about the old PBXDom is totally different and incomparable with the current version at work.

Now PBXDom is such a huge, massive platform with dozens of widgets, reports, charts, and hidden functionalities with very complicated structures in the backend to provide an extensive range of services for all the call monitoring management needs of the clients.

As really required, after the very first months, the team decided to replace PHP with Node.js developing an environment at the server-side level. This change could bring a whole range of possibilities for PBXDom, especially when it comes to performance and speed of delivering the service to the customers.

Node.js is an application runtime environment that allows developers to code server-side applications using JavaScript programming language. And to put it ever so briefly, this technology has been the most efficient choice for an application like PBXDom. Node.js has proved to be able to process a large amount of data through the veins of PBXDom in no time.

PBXDom speed of gathering, processing, organizing, analyzing, and delivering the data to thousands or maybe millions of customers—all in just a few milliseconds in real-time—made the team of PBXDom gets determined to prefer Node.js as opposed to other available options, like Ruby on Rails—which is also a good choice for its own purposes.

If you have the experience of working with real-time widgets on PBXDom, then you already have seen how responsive they are. There are four super-quick real-time widgets on PBXDom that become possible to develop by using this possibility.

And very interestingly, PBXDom is not the only application utilizing Node.js. Many other big companies have managed to use this developing environment to facilitate their whole underlying infrastructures, like Paypal and Walmart.

If you have any questions and feedback, then we’ll be glad to hear from you. Please feel free to contact us!