Forum Replies Created
-
AuthorPosts
-
in reply to: PHP / 500 error viewing some pages #6649
The problem you are experiencing is most likely due to a PHP caching/optimization program installed in your server. For example, the APC (alternative PHP caching module) has some bugs that will cache an included file and they try to include it again (resulting in a PHP redefinition error, require_once error, etc). For details of the APC bug and possible solutions check out this link: https://pantheon.io/docs/alternative-php-cache/
There are caching modules from other vendors (eg: Zend) with some similar issues. So you may also wish to disable caching of SecAst files since they don’t create much load on a server (relatively static, low volume). This is not a SecAst bug, but future versions of SecAst will try to detect the caching software and work around the issue.
in reply to: Asterisk + FreePBX 10 not shutting down on demotion #6648Seeing a status from systemctl that the Asterisk service is dead is not necessarily a problem. Systemd reports on services it starts & stops; and since HAAst does not start/stop Asterisk through systemd it’s normal to see a message like this. More specifically, the Linux distro + FreePBX distro + Asterisk combination will report different status results for individual services. So seeing a systemctl status report that something is dead/not started/started may be misleading.
If you are sure that the Asterisk service should be stopped (based on the status of the peer), then we recommend paring back your environment to a single simple PBX (strip down the layers). This will let you trace the problem down to a single cause:
- Disable HAAst layer
- Power down the remote PBX (peer). Now we’re working with only the local peer (less variables to check)
- Disable the haast service and reboot the local peer
- After reboot check if Asterisk is running
- Check the haast log to ensure it did not start
- If HAAst and Asterisk are stopped lets try operating on FreePBX directly. (Proceed to step 2)
- If you got here that means you forgot to disable automatic start of Asterisk/FreePBX as outlined in the installation guide.
- Test FreePBX layer directly
- Start FreePBX with ‘fwconsole start’.
- Were there any warnings?
- Is Asterisk running normally?
- Now stop FreePBX with ‘fwconsole stop’
- Were there any warnings?
- Is Asterisk stopped?
- If you see FreePBX errors correct them and reboot the PBX and return to step 2A
- if you don’t see any errors then HAAst is having trouble controlling FreePBX. Check the ‘distribution’ setting in the haast.conf file
- If haast.conf settings are correct test the Asterisk layer directly
- Test Asterisk layer directly
- Ensure the FreePBX service / start command is disabled as per the HAAst installation guide
- Reboot the PBX
- If asterisk is started that means you forgot to disable automatic start of Asterisk/FreePBX as outlined in the installation guide.
- Start and stop the asterisk service using ‘service’ or ‘systemctl’ commands appropriate for your distribution. Did this show an error?
- If you got to this point contact Telium support for assistance through SSH.
Most users find a FreePBX internal problem (eg: ) and upon resolution all works fine again. If you are new to FreePBX you will discover (google) that these types of problems are with FreePBX are well documented. FreePBX may fail to start, fail to stop, etc. which also blocks the Asterisk process from starting/stopping. There is nothing Telium/HAAst can do about this (i.e. FreePBX issue). But if you encounter symptoms as described in the original question then try this procedure to help diagnose the problem.
Telium can offer some suggestions on diagnosing such FreePBX issues but tracking down the cause of FreePBX error messages can be time consuming. Please note that other distributions such as xCALLY Motion do not encounter this type of problem.
in reply to: Can’t find Qt prerequisite package #6647Most Linux distributions are starting to include Qt version 5.7 (as of December 2016) so check available repos (including testing repos) first to ensure it’s not there. If you can find Qt version 5.5 or later as a package it’s best to install from your package manager. Otherwise continue on below.
If you are running Ubuntu you can check this link for a step-by-step guide to installing Qt 5.x: http://sourcedigit.com/19858-how-to-install-qt-5-6-1-on-ubuntu-16-04/
If your system runs headless (i.e. no graphical shell) then you can also modify the Qt installer to run without its GUI as described here:
http://stackoverflow.com/questions/25105269/silent-install-qt-run-installer-on-ubuntu-serverIf the above suggestions don’t work, then we recommend you download ‘Qt Creator’ directly from http://www.qt.io This package is overkill, but it does an excellent job of installing everything you need (and more) relating to Qt.
After that you should have Qt 5.7 or later installed, including other Qt dependencies listed in the installation guide.
in reply to: Asterisk still running after peer demotion #6645Asterisk should not be running after a peer has switched to the standby state. This problem usually occurs if the wrong distribution number is selected in the [asterisk] stanza of haast.conf
Please ensure that you are using the correct distribution number in haast.conf. If you change the distribution number then you must restart the computer (since some poorly written configuration generators remain in an unstable state if not shut down the way they want to).
in reply to: Uploading QueueMetrics data before peer demotes #6644You should use the Asterisk pre-stop event handler to run qloaderd (which uploads queue_log data into a MySQL database for further analysis).
Create a bash script called asterisk.stop.pre and place it in the HAAst event’s directory. In that script call qloaderd with any parameters you need.
in reply to: Immediate re-registration of nurse phones #6643Yes – we have created tools which use the REST API/web interface of phones (and base stations) to force immediate re-registration following a failover of the cluster. This solution is implementation specific however (make and model of phone, where phone IP data is stored, etc), so please contact Telium professional services who can design a solution for your specific needs.
This tool should be placed into Asterisk post-start event handler (in HAAst), which will cause the nurse phones to immediately reconnect to the active peer following cluster failover.
in reply to: Sensor for failover on network cable disconnected #6642I have included a sample sensor below using ping, which will test if your NIC is down or the cable is unplugged. The basic idea is to test reachability for the item after the item you want tested; so to test your cable ping the firewall.
Instead of creating 3 sensors (cable, firewall, ITSP) you can actually combine them into a single sensor which I’ll call ‘route-to-itsp’. By checking the entire path in one sensor you test all of the items along the way:
; Ensure connection to ITSP is ok including NIC, cables, router, gateway, and ITSP
route-to-itsp/description=Connection to ITSP
route-to-itsp/type=ping
route-to-itsp/input=received
route-to-itsp/parameters=Count: 5 | interface:eth1 | host: 173.239.164.41
route-to-itsp/scoring=in reply to: How to synchronize my files & databases #6641You don’t mention if you are using a configuration generator (eg: xCally Motion, FreePBX, Elastix, etc), so I’ll provide two answers:
Using A Configuration Generator
If you are using a configuration generator, then the easiest way to setup synchronization is to copy the appropriate sample sync config files into your HAAst configuration directory. For example, if you are using xCALLY Motion then you will need both the basic Asterisk configuration synchronization, as well as the xCALLY Motion configuration synchronization. So copy the following files:- asteriskconfig.sync.conf
- xcally_motion.sync.conf
from the sample_files/synchronizations directory to the /etc/xdg/telium/haast.conf.d directory and then restart HAAst. (Do so on both peers). Your files and databases will start to synchronize now. (If you are using some other configuration generator, just replace the xCALLY Motion file with the most appropriate sample for your configuration generator).
Using Only Asterisk
If you are not using a configuration generator (as is often the case with large Asterisk installations of 1000 or more phone sets), then the easiest way to setup synchronization is to use one or more sample synchronization files as a starting point. To being with, copy the following file:- asteriskconfig.sync.conf
from the sample_files/synchronizations directory to the /etc/xdg/telium/haast.conf.d directory (on both peers) for basic synchronization of the /etc/asterisk folder contents, ASTdb, and voicemail. After that, have a look at the sample *.sync.conf files for ideas of what else you can sync.
Customizing The Data Sent To The Standby Peer
If you need to customize content that is synchronized in (eg: to modify the dialplan/trunks/tftp files/etc for the local machine) then have a look at the sample_files/events directory for sample sync.stop.post* files which demonstrate how to perform post-sync customization. You can copy any of these sample files to your /usr/local/haast/events directory to enable them, but be sure to edit each event handler to match your unique system and needs. Note that the name of the event handler file must match the name of the sync job in order to be associated as a related event handler. (e.g. sync job ‘mysql’ would look for a file called ‘sync.stop.post.mysql’ to be linked as the post-sync event handler).in reply to: Hacker database lookups are failing #6640I don’t see any product registration matching your email address, which means you are most likely running the Free Edition of SecAst. Only the Commercial Unlimited edition of SecAst includes access to the hacker database (IP addresses) and fraud database (phone numbers).
So the warning you see on screen is correct – you only get access to those databases if you purchase the Commercial Unlimited edition, or purchase a SecData subscription separately.
in reply to: Call volume / capacity of HAAst #6639HAAst is load tested to approximately 50 call setups per second (3000 call setups per minute) – so that should not be a problem. The constraint will most likely be the hardware upon which you run Asterisk. HAAst is written entirely in C++ and CPU requirements are generally very low. If in doubt conduct a HAAst trial and monitor CPU load and memory utilization to determine how many setups per minute your hardware can handle.
If you need assistance determining the call volume capacity of your hardware please contact Telium support for assistance.
in reply to: How can I extend my maintenance agreement #6836You are welcome to download the latest software from the Telium website, and overwrite your installation. Please be sure to carefully compare the included config file to check for changes in stanzas, key names, new keys, etc.
If you are running the Free Edition the new software will work immediately. If you have an active maintenance agreement then the upgrade will work as well.
However, if your maintenance agreement has expired then the upgrade will revert to the Free Edition. Since you cannot extend a maintenance agreement that has expired you would have to purchase a new license.
If your maintenance agreement is still active then you can extend it for as long as you like (purchased in 1 year increments from the BUY tab on the Telium web site).
in reply to: How can I extend my maintenance agreement #6637You are welcome to download the latest software from the Telium website, and overwrite your installation. Please be sure to carefully compare the included config file to check for changes in stanzas, key names, new keys, etc.
If you are running the Free Edition the new software will work immediately. If you have an active maintenance agreement then the upgrade will work as well.
However, if your maintenance agreement has expired then the upgrade will revert to the Free Edition. Since you cannot extend a maintenance agreement that has expired you would have to purchase a new license.
If your maintenance agreement is still active then you can extend it for as long as you like (purchased in 1 year increments from the BUY tab on the Telium web site).
in reply to: How can I extend my maintenance agreement #6638You are welcome to download the latest software from the Telium website, and overwrite your installation. Please be sure to carefully compare the included config file to check for changes in stanzas, key names, new keys, etc.
If you are running the Free Edition the new software will work immediately. If you have an active maintenance agreement then the upgrade will work as well.
However, if your maintenance agreement has expired then the upgrade will revert to the Free Edition. Since you cannot extend a maintenance agreement that has expired you would have to purchase a new license.
If your maintenance agreement is still active then you can extend it for as long as you like (purchased in 1 year increments from the BUY tab on the Telium web site).
First of all make sure you know which system is generating the error (the host running HAAst, or the host which the post-sync script is connecting to). That may change the answer, and/or where you need to apply changes.
One of these solutions should help:
- Try adding the “-t” parameter to the ssh command to create a pseudo terminal for the command to run in.
- Instead of “-t” try “-tt” to force a tty (even if ssh has no local tty).
- Remove sudo completely from the command in your bash script. Since the HAAst (service) runs as root the processes it forks also run as root (unless the system is further locked down). Assuming error is locally generated.
- Comment out the line “Defaults requiretty” in the /etc/sudoers file. Then sudo won’t require a TTY anymore for sudo commands. (But undstand security implications).
- Use the “su –c” command instead of sudo
in reply to: AstDB synchronizing in FreePBX 2.10 #6635Instead of relying on FreePBX to recreate the AstDB, you should let HAAst synchronize it. (This is the standard HAAst configuration as of Jan 2016). To have HAAst synchronize the AstDB add an entry like this to the haast configuration:
asteriskdb/description=Asterisk internal database
asteriskdb/type=astdb
asteriskdb/interval=300
asteriskdb/debug=off
asteriskdb/postsynccondition=never
asteriskdb/postsyncruntime=60If you use the sample Asterisk sync file (sample_files/synchronizations/asteriskconfig.sync.conf) then this will be setup for you automatically.
Warning: Do not try to synchronize this file using ‘file’ type. HAAst must read and write this file using SQL commands or you risk corrupting the file. As well, do not put this file on a DRBD partition, nor put it on a network share if there is any chance of the peer reading/writing this file at the same time.
HAAst also has the ability replicated all keys from the AstDB, or generate new values for keys which must be unique, or leave each node with original values. Please contact Telium support for details on how to configure HAAst to control these keys during replication.
- Disable HAAst layer
-
AuthorPosts