What is our primary use case?
I have implemented FreePBX in IVR features many times because I am a hardcore developer who first prefers customization. FreePBX provides many services, but sometimes we do not need all of them, so customization is necessary. I have banking customers, hotel customers, and hospital customers, and their IVR requirements are all different.
FreePBX has a lot of GUI that sometimes we do not need. The first problem is reloading. When you do customization, you need to reload every time. This reload process should be fine-tuned because in production servers, we do not need to reload everything. These are suggestions for FreePBX improvement.
There are some limitation issues with concurrent calls. When we have concurrent calls, sometimes the entire PBX fails. We use the channel dump command to check what is wrong with FreePBX.
What is most valuable?
FreePBX is a solution that gives you the entire communication happening between party A and party B, where party A is your consumer and party B is your producer. The entire communication, discussion, and negotiation happen in one platform, which is what we call PBX. FreePBX is not only about your calling system; it is about solving customer problems. When the customer is having a problem and the producer is not able to solve it, we have that solution through a contact center solution that will provide answers to their higher management. This entire system will ease life.
Let me give a simple example. Suppose you have a company selling printers or electronic devices. I bought electronic devices from you and got a problem with my device. If you build the device, you know what type of problem customers face. At that time, you can place an agentic or AI assistant. When I call the number, they will verify my product ID. Once the product ID is verified, they will check the warranty period and immediately solve the problem with their app. This is fantastic because it provides proactive support from the customer 24 into 7 across the world.
Suppose I am running more than five or ten hotels and hospitals. If I have that type of PBX, my job will be easy because I can monitor the entire team and my agents. I can handle customer queries in a more robust and communicated way, providing proactive support. Customers will get feedback on time.
What needs improvement?
FreePBX has some monitoring and real-time monitoring features. They also have some SIP packet capturing. There is a third-party tool called Homer that is a great tool because it can capture call traces and SIP session logs and SDP logs. I can see what is going on with a particular call flow. Usually, for each call, you have the activity of that call, what happened with the call, and why the call is dropping. Are the correct codecs being received? Is there a NAT issue? Is there a firewall issue? Is there any packet loss during the call? These are the things we really need in FreePBX, but they are not currently included.
For how long have I used the solution?
I have been using FreePBX for the last decade, more than 10 years.
What do I think about the stability of the solution?
I do utilize FreePBX's call recording feature because without call recording, you cannot take proof from the customer or consumer side. Proof is really required. Sometimes customers are not favorable, but sometimes your agent is not working seriously and is not giving the right solution, so you need voice recording as proof.
FreePBX has some pros and cons like every product. For pros, FreePBX is very scalable, very flexible, and open source. It is also easy to be available for open source FreePBX, not for paid. For open source, it is very compatible with CentOS, Linux, and all kinds of open source systems. There is HA availability, high availability, and fault tolerance.
What do I think about the scalability of the solution?
For cons, suppose you have a small company where FreePBX size is comparative to larger systems. Sometimes some customers want minimalistic requirements, and FreePBX is okay for that, but they have plenty of options. We do customization where they need only a very simple inbound and outbound and IVR flow. We need to work on that type of simplex form.
Also, in FreePBX, there is no API exposed as far as I understand. There is no third-party API, plugins, or webhooks. These webhooks would integrate with third parties, but that part is missing.
How are customer service and support?
If you go with paid support, there will be a dedicated customer support team. For free support, they have a forum. You have to post your query on the forum, Asterisk community, or FreePBX community forum. There you can raise your concern, and the team will revert within four hours or within four to 24 hours response time. Tech support for FreePBX, I would rate it six to seven out of ten.
Which solution did I use previously and why did I switch?
Apart from FreePBX, I have worked on Asterisk, core Asterisk, VoIP, SIP, Amazon Connect, AWS, and all kinds of AWS services, DevOps, Terraform, Jenkins, and Docker. I am not only dedicated to the telephonic system. I explore things in different ways. The competition is very tough in the market. Amazon launched their services called Amazon Connect, which is a complete CCaaS platform. Contact Center as a Service provides customers with an entire GUI and requests them to use their services without worrying about the backend.
How was the initial setup?
It is very straightforward and not complex. However, it depends on which version you are working with. The latest versions have some time-taking parts, but you have to know about the entire setup.
What about the implementation team?
From my side, we have to take extra precautions while migrating. From a global side, we usually worked intra, and once we take the services and install the software, it becomes our responsibility to take care of it. In that case, we should take care of migrating with no downtime. We already take care with extra logics.
Which other solutions did I evaluate?
I have mostly worked on the Asterisk side, and core Asterisk and FreePBX are both the same. What I have observed in the last couple of years is that I am learning FreeSWITCH as well. Asterisk is a console layer where you have to build everything. FreeSWITCH is the same. The FreePBX UI version name is FreeSWITCH UI, and the FreeSWITCH UI name is FusionPBX. FreeSWITCH in terms of performance is better when you have a huge call tech center solution and when you have third-party scripting using Lua or GoLang or Python. You can go with FreeSWITCH.
What other advice do I have?
SIP is really needed because you do not need to add any external DGM card. You have an ethernet port, and you plug the ethernet port into your system if you are providing services physically to the data center. If everything is on cloud, then the cloud will take care of your SIP. If this PBX is not there, manual work using the phone with one-to-one communication, maintaining data, and tracking records would not be possible. FreePBX also has some monitoring and real-time monitoring features. They also have some SIP packet capturing with a third-party tool called Homer. Homer is a great tool because it can capture call traces and SIP session logs and SDP logs to see what is going on with a particular call flow. I give this review a rating of 7 out of 10.