VoIP, Linux, Security & much more fun
If you need any help regarding these subjects do not hesitate about sending me a text

Not a fan of PostgreSQL, but lately many people have come to me regardless I have published I work with MySQL/MariaDB. Because of this, I want to share with you a set of scripts to backup and restore your deployment. I am not the author of these scripts, I am just doing little modifications to clean them up and to do some more professional and advanced ones that will work not only with PostgreSQL but with MySQL and MariaDB.

These scripts are thought to work with two stand-alone servers. No clustering or load-balancing is involved.

This weekend I learned something new while coding in PHP. Not really a fan of PHP, but it has a lot of libraries I need that makes coding faster. Later when this project is finished, I might recode it in C/C++ without a rush. By the way, I am coding a crypto currency trader if you wonder what I am doing these days.

I found myself in the need of doing overcharge of PHP constructor classes. If you are new on PHP coding, overcharge is the capability that some languages have to define the same function with different parameters.


This is one of the most common issues that could carry issues if you have a MariaDB Galera Cluster. After restarting the cluster, the nodes are not joining. If you look into your log, you may find a line like this:

It may not be safe to bootstrap the cluster from this node. It was not the last one to leave the cluster and may not contain all the updates. To force cluster bootstrap with this node, edit the grastate.dat file manually and set safe_to_bootstrap to 1.

Continue reading, here there are some steps I did to recover mine.

Yesterday I have published in OKay's RPM repository RPMs for FreeSWITCH 1.6.19. FreeSWITCH is a complete VoIP switch that works on many platforms, including Centos 6 and Centos 7. This is one of the biggest packages I have ever done; there are more than 1800 hours of work behind to make it work (mainly because of the CentOS 6 support). When updating, you will notice it will download many libraries, most part of them not available anywhere.

The big difference on my RPM's is there are more sub-packages, for example, you can install only freeswitch-cli if you only need fs_cli command; Centos 6 RPMS for 32 and 64 bits are available with video support; I have imported a patch that fixes mod_nibblebill, in some situations leg b won't hang up and it will produce money losses. I have been updating some other dependencies such as VLC, OpenH264 and MPG123 with latest stable if you were using my RPM's you will notice more updates as well. Since the RPM of the 1.6.15 release, I have published the sounds for en-ca-june, the Canadian English language. If you live in Canada and you have done English exams such as CELPIP, you will notice those little differences.

In addition, these RPM's have a patch that allows the console to filter by a regular expression. If you do VoIP debugging, you will understand right away what I am talking about.

Because libyuv is now part of the core, these RPMs are compiled with video support. Yes, you read it well, both Centos 6 and 7 with video support.

If you do not know, I have been contributing for Mageia since the beginning of this awesome distribution. As a system administrator, one of my biggest concerns is having an easy and repeatable deployment method, hence I am an RPM fan. I have published in the More RPM'ss for Mageia project the RPM SPEC with some source definitions. For those who wonder why here and not in the main distribution, it is simple. This is not an open source project and the way it works, it violates many RPM policies. So, I prefer saving the Mageia team rejection and publish it as an alternative.

If you need more help than the free one provided here...