Asterisk crashes on load

asterisk-invalid-pointerWhile loading Asterisk crashes with “invalid pointererror like in the backtrace below:

Loading Continue reading

How to reset MySQL/MariaDB root password

mysql-logo-imageStart session ssh (using root if possible).

Edit my.cnf file using.

sudo vi /etc/my.cnf

Add line to [mysqld] block: Continue reading

Parse JSON in Asterisk: how to install res_json

Asterisk PBXIf you need to talk to external API and parse JSON in Asterisk dialplan you will need res_json installed. Unfortunately it’s not bundled in Asterisk installation yet but here is how you can install res_json in Asterisk: Continue reading

Calculate Difference between two Time Values in Asterisk Dialplan

Asterisk PBXFor calculating the difference between two times in Asterisk dialplan, the time values should be converted to an epoch value first. This  can be done using the asterisk function STRFTIME. Use the below dialplan to convert current time to an epoch value

Set(time=${STRFTIME(${EPOCH},,%s)}) Continue reading

New encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)

odoo-logoDuring the step of database creation in Odoo database manager the following database creation error occurs:

New encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)

Odoo-database-creation-error Continue reading

A2Billing wholesale: fake ring and incorrect billing

a2billingOften in A2billing wholesale setup one might find that A2Billing starts billing for calls too early (before the call is  answered). Another frequently asked question is “fake ring”.

Let’s go through each of issues. Continue reading

A2Billing wholesale configuration

a2billingIn order to use A2Billing for wholesale you need to modify a few settings.

Log in to A2Billing as usual and go to System Settings -> Global List menu. Set Display setting to All and now you can use browser to quickly find needed setting (Ctrl+F).

Play Audio (this will disable all stream file but not the Get Data , for wholesale ensure that the authentication works and than number_try = 1 ) = Yes Continue reading

FreePBX error gui_hidden has a deprecated constructor

freepbxHaving fresh manual installation of FreePBX 14 on CentOS 7 and when access GUI for the first time it throws the following error: Methods with the same name as their class will not be constructors in a future version of PHP; gui_hidden has a deprecated constructor.

In Apache’s error log file I found the following:

Whoops\Exception\ErrorException: Methods with the same name as their class will not be constructors in a future version of PHP; dayNightObject has a deprecated constructor in file /var/www/html/admin/modules/daynight/ on line 9
Stack trace:
1. Whoops\Exception\ErrorException->() /var/www/html/admin/modules/daynight/
2. Whoops\Run->handleError() /var/www/html/admin/bootstrap.php:362
3. require_once() /var/www/html/admin/bootstrap.php:362
4. require_once() /etc/freepbx.conf:9
5. include_once() /var/lib/asterisk/bin/retrieve_conf:19 Continue reading

How to convert an OVA virtual machine to VHD

virtualbox-convert-ova-to-vhd-vmdk-vdiI’ve got an OVA virtual machine image of VirtualBox. As I use Hyper-V I need to convert ova to VHD before I’ll be able to import OVA virtual machine to Hyper-V.

In order to do this you will need VirtualBox’s VBoxManage.exe utility. You can get it without actually installing VirtualBox on your system by using portable version from website.

After extraction you will find VBoxManage.exe in Portable-VirtualBox\app64 folder.

Convert OVA to VHD in two steps: Continue reading

How to traverse FTP directories with CURL

When doing FTP commands to traverse the remote file system, there are a few different ways cURL can proceed to reach the target file, the file the user wants to transfer.


cURL can do one change directory (CWD) command for every individual directory down the file tree hierarchy. If the full path is one/two/three/file.txt, that method means doing three CWD commands before asking for the file.txt file to get transferred. This method thus creates quite a large number of commands if the path is many levels deep. This method is mandated by an early spec (RFC 1738) and is how curl acts by default: Continue reading

Load more