Blog wizard' Post

Vodafone is very Non(GREEN)

We receive around 150 A4 pages with the call log from Vodafone. Our monthly statement looks like a heavy book. Around 95% of these pages describe the connections to the Internet from the 3G phones. As we check mail automatically, you can realize that there are a lot of connections. The statement is useless, I don’t think that many people are interested to see how many Kb they got with an email at 4:23. However, Vodafone (at least here in Romania) sends them to every customer (there are several hundred thousand users of mobile Internet). You can realize the environment waste.

What sounded like disrespect to nature was actually more. I called them to disable these logs. They told me that the logs are normal and I can disable all (phone and data) logs only. As there is no other way to see the call logs (or I am not aware of any other way) this was less desired. But I said Yes, I prefered to have no logs at all rather that contribute to this crime.

I was amazed to see that for Vodafone this looks very normal and that they treated me like a freak because I actually wanted such a non sense (no data logs)!

What if your hosting company would send the website logs at your door every month?

Read More

Feedback on VoipNow online trainings

We received a lot of feedback after the VoipNow online trainings this month. First, I apologize that we didn’t have enough seats for all of you that wanted to participate. It looks like the online trainings experiment was a very successful one. It is very easy for people to participate and the costs are much lower. Of course, there are some disadvantages because that human interaction is lost in a certain degree, compared to the on-site trainings. But overall the advantages are bigger than disadvantages.

I noticed that our attendants had many more business ideas after they joined the trainings. It is very easy to sense this using the question they ask like metrics 🙂 It looks like we do not communicate opportunities and system capabilities very well, so people need several presentations to realize them. But we will fix this. We also learned about some interesting businesses, for example one of our customers income grow with over 250% in the first five months of the year, only by upselling PBX to existing hosting customers. What started like a small experiment now requires automation investments.

I hope we will see you at the next training, BTW we published the schedule for July.

Read More

DNS Manager 3.0.1 maintenance release

Yes, we made available yesterday a new version of DNS Manager. From the functionality point of view this is a minor update, but there are some annoying bugs fixed as well.

This will be most likely the last version before the DNS Manager 3.2 release, which will come with many interesting new features, like support for SRV, NAPTR, IPv6, automatic round robin, etc. You guessed, it’s very easy to build VoIP infrastructures with the new version and we also included the support for round robin load balancing on the DNS Manager level. It’s not a simple round robin, but the resource monitoring is built into the server.

Meanwhile check the DNS Manager 3.0.1 announcement

Read More

Help us prioritize posts…

We have so many ideas for new discussion subjects… Unfortunately, this makes quite difficult to prioritize posts. Please let us know what do you want to read about and we will do our best.

Read More

Discount code for blog readers!

Yes, I managed to get approved a discount code for blog readers. It is available until the end of the month, but I am sure that some others will follow. The discount code is:


As far as I know it’s case sensitive, so make sure that you use it this way in the 4PSA Store.

Read More

Interesting stuff behind the VoipNow CallAPI

We see a lot of questions in support and sales (especially after the VoipNow 1.6.2 release) about VoipNow CallAPI. It looks to be some confusion around this subject. In VoipNow we have two CallAPIs:

  • a very easy to use HTTP interface, you can use to send calls, list, hangup, etc using HTTP GET requests.
  • an Asterisk Manager interface that technically can be used with any client that can work with Asterisk Manager

I want to discuss about the Asterisk Manager interface, as it’s more difficult to understand. As you know VoipNow is a multitenant system. This means that you can have multiple customers on the same machine. You do not want customer X to see customer Y calls or to hangup them.

Unfortunately, the Asterisk manager does not care about multi-tenancy, scales very poorly with multiple connections and the authentication mechanisms are far from great. We could have rewritten the entire manager interface, but this would have created a management issue for our Asterisk build.

The natural solution was to create a proxy. There is one Open Source proxy called Astmanproxy, which is pretty well known, so the approach is not new. New was what we wanted to achieve with this proxy:

  • Integration with VoipNow. This means that the proxy should read the MySQL database
  • Quality of Service. We were particularly interested in limiting the number of connections and number of commands sent by a user, to add black list and whitelist per IP. Otherwise you cannot really open such a service to the Internet.
  • Filtering and isolation, this means that a user logging to Call API as customer X should receive only events that are related to customer X. The proxy should ignore any command that targets a resource not owned by customer X.
  • LUA scripting for requests and answers, so the engine could translate requests and server answers before they are sent to the customer. This way the proxy could work with virtually any Asterisk Manager client, because the user can use LUA to translate requests, if these are not properly made (clients are quite different).

When we started the project we want to build these features on Astmanproxy. It was an Open Source project and we didn’t want to spend time reinventing the hot water. Unfortunately after we added most of the features to Astmanproxy, we discovered a lot of issues with it under load tests (most issues due to the threading implementation), so we started to modify it extensively. I think that today only around 20% of the original code was preserved, which is not the brightest example of software engineering.

This project was made open source and will be committed to the upcoming 4PSA Developers Network which is due this summer. I will let you know of course as soon as it will become available.

Read More

Yes, we will start to post on this blog

This blog has been dead for the last two years. When we created it, we really wanted to share interesting things and visions with it, but unfortunately we were too busy to write here :(. The fact that we finally decided to do something about this was influenced by several things:

1. I think that the time spent on this blog will be usefull for our customers. I usually find myself in the position to explain over and over the same thing, and I could explain it only once. Here.
2. We reshaped the blog to be more like a “product blog”.  So most topics will cover products, functionality and features. Of course, there will be some general posts also.
3. I hope we will gather feedback from comments.

Please do not hesitate to comment.

Read More


Here, in the 4PSA Blog you will find articles written by 4PSA staff members and their friends. We hope that you will enjoy this new area because here there are interesting people who have something to say. There will be articles about software development, Open Source, Linux, servers, hosting, enterprise and so on. We do not have any settled limits. If it’s interesting, it will be published. If you can comment and contribute, we really appreciate it.

Read More