rpm_mageia.png

MandrakeLinux (later Mandriva) was my first desktop distribution. After some time, in 2009 I decided to join as a Mandriva contributor. Later with the imminent problem of Mandriva, I continue my Linux contribution in Mageia.

Mageia Linux has some RPM policies/guidelines that not always allow any software to be packaged as RPM. Therefore, I decided to publish this SPEC/SOURCE GIT repository of RPM for Mageia to allow those who still need these RPMs to enjoy it.

I will be providing SPEC files, some patches, and sources. But in the most part of the cases, you will need to download the tarball, build the SRPM and compile in your computer.

I will be posting more SPECs as I am doing them.

Not until now, I decided to make public the Nagios Plugins for FreeSWITCH I have been developing. The idea of this plugins is to make easier your life as a system administrator. Everyone knows about Nagios, it really rocks! But Nagios lacks VoIP understanding, therefore I decided to write them.

The first public release is the 0.1.0, in which it has only one plugin that allows you to monitor extension status. I will be adding more plugins as people sponsor them or I need them. Any comment about this project is welcome.

I will create the RPM's and make them available through the OKay RPM repository.

nagios-ethereum.png

As I have started to work on the Ethereum platform, one of my first needs as a system administrator the monitoring of the health of my node. There are many projects that allow you the monitoring, one of them is the https://ethstats.net/ which it is very cool. In it you can see your general node health, but to be honest, it is quite a hassle to have the web page on, not to mention you need to install some nodejs application in your server. 

Because of this, I decided to write my own Ethereum Nagios Plugins. As I have already a Nagios deployment that monitors no less than 40 servers, it is a good idea sending an alert if something is going wrong.

The initial release of this plugins will help any system administrator to know the following:

  • Detection when the local blockchain is getting out of sync, by default (if you don't specify anything else) it will send you a CRITICAL signal if sync is behind 10 blocks, and a WARNING signal if it is behind 5 blocks.
  • Detection when the mining hash rate speed is slowing or mining activity has stopped at all, if you have one full node and many workers, usually you have a stable Hashing speed, when some workers start going down your speed will decrease and you will get an alert if this is happening.
  • Detection when you are not connected to enough peers, by default (if you don't specify anything else) it will send you a CRITICAL signal if you are connected to 5 or fewer peers in the network, and a WARNING signal if you are connected to 10 or less. The go-ethereum and the cpp-ethereum projects use 25 peers as a default value.

I will write later a guide to show you all how to implement the plugins. It is quite easy.

Good Luck!

Finally, I was able to do this XML Importer for FusionPBX. If you are a FusionPBX user, you need to know that each time you do a call, the FreeSWITCH will call a local PHP script that pushes the CDR information into the database. This piece of software will act the same way as the vanilla one that is shipped inside FusionPBX 4.1 (or better), but it adds a plugin architecture that will allow third-party integrations with the PBX. Some of the use cases I can imagine right now are:

  • Helpdesk integration: it will raise a ticket each time a call is done, later that ticket could be merged.
  • Billing integration: although I am the author of the Billing for FusionPBX (I will move the billing system to use this new importer), I know there are people who use another kind of software, so this will allow billing per call event.
  • CRM integration: usually CRM software are used to keep track of marketing activity. This will let you add call tracking.

So to be crystal, this tool will allow to import the CDR information into third-party software. This XML importer is though in a plugin architecture. You will need to code specific case plugins for it. I have put a template class in order to help the developers to code their own plugins. This template class is a abstract class, and it will help people to know what methods to code in order to success building your own plugin.

The big advantage of doing this way is you dont need to touch the main code, this will allow you to do cleaner upgrades when there is a new release of FusionPBX.

This software is released under the MPL license. At least the part that is published on Github. So, please feel free to contribute and use it.

Soon, as release one is finished, I will publish the RPM for Centos 6 and 7 and I will start deploying in the White Label Servers for my customers.

Enjoy!

geopeer_org.png

GeoPeer is a community project I am starting as an answer about Netflix announcement of blocking services to allow watching other zones. This project will allow you to use others geolocalization and to share yours at the same time. If you are in France, you will be able to watch U.S. Netflix because another user will share its geolocalization; at the same time, others users will watch French Netflix because of you. Philosophy is to give and share.

Hope to hear from you about this project.

fusionpbx-billing2.png

Billing is the capacity to let the system asks (money of course) for its use. This application requires LCR for FusionPBX because when you build a business, you are not only looking to make profits, but to save money.

Billing for FusionPBX will allow you get money. Currently, Stripe, Paypal and Off-line plugins are available, but others gateways can be coded. It supports multicurrency as well, you can bill one customer in EUR, other in USD, other in MXN and pay in USD.

The big advantage of this project is it is inside the FusionPBX itself. This allows billing for many other items, such as extra extensions, assigned DID and more.

Enjoy!

super-vpn-com.png

As a marketing strategy to target other kind of market, I have created Super VPN. This is like the low-end brand of EstoyEN. SuperVPN only offers at this moment PPTP vpn. And of course, as you were thinking, it is about 60% cheaper (keeping same quality). This project aims people who only are interested on VPN and not interested on SmartTV or videogaming consoles and very sensitive to the price.

The process is very simple, you create a joomla account and you subscribe to a paypal recurring payment. While your subscription is active, your VPN account will be active.

I hope to see you around this website.

fusionpbx-billing.png

LCR is the capacity to let the system to choose the proper route based on criteria. FreeSWITCH has mod_lcr to deal with this, but you will need an application to manage thousands of rates. The first release of this application was based on original FusionPBX's author LCR application with little fixes (we are talking about release 1.0.0). From that point, I have been adding many other capabilities to make this application a must-have for people who want to do business with VoIP.

LCR for FusionPBX will allow you to upload as many rate data you need in many carriers as well. You will be able to You will get fail-over capabilities, if your first choice fails, FreeSWITCH will try the second one and so on.

Enjoy!

The most common case of HA is done with a floating IP technique. However, this has a big restriction: all node servers must be routable with the floating IP. Being routable with the floating IP means in almost 99% of cases that all nodes must be physically speaking in the same Data Center. What does this mean to you? It is a matter of pricing and security!

Regardless if you are using virtualization or bare metal servers, not every data center is able to do a floating IP configuration. If they are, they will charge you for that configuration and the IP assignment.

All servers in the same nest is not a very good practice, if the data center is good, you will be safe. Good data centers are not cheap. Think when you have one that has been going down more than once. Moving to another data server is not very easy if you are attached to an IP.

So, here it is my solution!

I have developed what I call Low Latency PowerDNS. This plugin will allow you to setup an intelligent DNS server that will return a specific IP depending on various scenarios and the chosen algorithm. At this very moment, it supports two:

  1. Less FreeSWITCH node latency: by using some approximations, it will answer you with the IP that has less latency.
  2. Less FreeSWITCH loaded: by doing some metrics on the PBXes, it will answer with the less loaded server.

At this moment, the plugin works with FreeSWITCH, but with little modifications it will work with any kind of software. By using it, you will save money as you won't be attached to a specific IP or to a specific data center. You will be able to put servers in different data centers across the globe.