Amahi as a PBX

User avatar
rgmhtt
Posts: 421
Joined: Sun Jan 11, 2009 9:26 am

Amahi as a PBX

Postby rgmhtt » Tue Mar 17, 2009 6:51 am

on the WIki at: Google Summer of Code Ideas 2009

Asterisk and OpenPBX are listed. I have worked with Trixbox for quite some time and can share a lot of frustrations with it.

Here are my thoughts on what Amahi should provide for PBX services.

First and foremost: NO PSTN connections on the Amahi box. The cards that work are expensive. Period. End of discussion.

For PSTN access, buy a $50 Linksys box that supports connections from Asterisk. There are a number of them and then you just set up the trunks and routes in OpenPBX. Pricing is more in line with the Amahi model: CHEAP!

I would like to see support for a cell phone on a bluetooth connection using the CHANNEL MOBILE. This makes sense. A second cellphone on a plan might only add $15/mo, or when you are home, just park your cellphone near your Amahi box and use your home phones.

I have Asterisk scripts for sending faxes as emails where the fax is connected RJ12 to a VoIP box and on the same subnet as the OpenPBX system. Also there is finally good work on T.38 (fax over IP).

Using E164.org and DNS srv RR, we could all be calling one another directly through our Amahi OpenPBX boxes!

Finally, a second interface for only the VoIP boxes and phones makes sense to isolate their traffic from other home traffic (like SMB).

User avatar
cpg
Administrator
Posts: 2618
Joined: Wed Dec 03, 2008 7:40 am
Contact:

Re: Amahi as a PBX

Postby cpg » Sat May 02, 2009 1:06 pm

this is something that we can start thinking about now that we have the app insfrastructure going.

if we were to pick *one* to go with to maximize the chances of success, which one should we pick?

thanks
My HDA: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz on MSI board, 8GB RAM, 1TBx2+3TBx1

User avatar
rgmhtt
Posts: 421
Joined: Sun Jan 11, 2009 9:26 am

Re: Amahi as a PBX

Postby rgmhtt » Mon May 04, 2009 10:23 am

I only have practical experience with Trixbox that uses FreePBX. So I have a biased view.

I just got 800 calls to a free VoIP gateway working. Had to add a dial plan to strip '+' off that my ATA was adding to an 800 call string. Learned about this by asking for help on the FreePBX list, as I was not getting help on the Trixbox list on this one.

My fax T.30 over LAN to email has stopped working. I have to look into spanDSP to see what has changed since the last time this worked. Actually, I have not used it in a long time. So there might be a config problem for me to sort out.

donovanash
Posts: 3
Joined: Sun Jun 21, 2009 2:02 pm

Re: Amahi as a PBX

Postby donovanash » Sun Jun 21, 2009 2:08 pm


raphouamahi
Posts: 6
Joined: Fri Jan 15, 2010 3:00 am

I installed Asterisk + PBX on my Amahi Fedora 12 install

Postby raphouamahi » Wed Jan 20, 2010 4:25 am

Hi everybody !

Just a message to announce that I succeeded installing Asterisk and Freepbx on my Fedora 12 Amahi installation.

I've spent days and nights trying all combinations of paths, users and permissions, so I don't remember how I did it exactly.

But I can provide any conf file or path/users/permissions to any packager who wants to try an automated installation.

In a nutshell (I'm not sure) :

- I use yum to download ALL asterisk (asterisk*) files
- I created a webapp with amahi (freepbx)
- I downloaded freepbx and I've modified the amportal.conf (I've put here the default password, I've changed mine for security reason)

Code: Select all

# This file is part of FreePBX. # # FreePBX is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # # FreePBX is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with FreePBX. If not, see <http://www.gnu.org/licenses/>. # # This file contains settings for components of the Asterisk Management Portal # Spaces are not allowed! # Run /usr/src/AMP/apply_conf.sh after making changes to this file # AMPDBHOST: the host to connect to the database named 'asterisk' AMPDBHOST=localhost # AMPDBUSER: the user to connect to the database named 'asterisk' # AMPDBUSER=asteriskuser # AMPDBENGINE: the type of database to use AMPDBENGINE=mysql # AMPDBPASS: the password for AMPDBUSER # AMPDBPASS=amp109 # AMPENGINE: the telephony backend engine to use AMPENGINE=asterisk # AMPMGRUSER: the user to access the Asterisk manager interface AMPMGRUSER=admin # AMPMGRPASS: the password for AMPMGRUSER AMPMGRPASS=amp111 # AMPBIN: where command line scripts live AMPBIN=/var/lib/asterisk/bin #AMPSBIN: where (root) command line scripts live AMPSBIN=/usr/local/sbin # AMPWEBROOT: the path to Apache's webroot (leave off trailing slash) AMPWEBROOT=/var/hda/web-apps/freepbx/html # AMPCGIBIN: the path to Apache's cgi-bin dir (leave off trailing slash) AMPCGIBIN=/var/hda/web-apps/freepbx/cgi-bin # AMPWEBADDRESS: the IP address or host name used to access the AMP web admin #AMPWEBADDRESS=freepbx AMPWEBADDRESS= # FOPWEBROOT:web root for the Flash Operator Panel FOPWEBROOT=/var/hda/web-apps/freepbx/html/panel # FOPPASSWORD: the secret code for performing transfers and hangups in the Flash Operator Panel FOPPASSWORD=passw0rd # FOPSORT: FOP should sort extensions by Last Name [lastname] or by Extension [extension] FOPSORT=extension # FOPRUN: set to true if you want FOP started by freepbx_engine (amportal_start), false otherwise FOPRUN=true # AUTHTYPE: authentication type to use for web admin # If type set to 'database', the primary AMP admin credentials will be the AMPDBUSER/AMPDBPASS above # valid: none, database AUTHTYPE=none # AMPADMINLOGO: Defines the logo that is to be displayed at the TOP RIGHT of the admin screen. # This enables you to customize the look of the administration screen. # NOTE: images need to be saved in the ..../admin/images directory of your AMP install # This image should be 55px in height AMPADMINLOGO=logo.png # USECATEGORIES: Controls if the menu items in the admin interface are sorted by category (true), # or sorted alphebetically with no categories shown (false). Defaults to true. #USECATEGORIES=false # AMPEXTENSIONS: the type of view for extensions admin # If set to 'deviceanduser' Devices and Users will be administered seperately, and Users will be able to "login" to devices. # If set to 'extensions' Devices and Users will me administered in a single screen. AMPEXTENSIONS=extensions # ENABLECW: Enable call waiting by default when an extension is created (DEFAULT is yes) # Set to 'no' to if you don't want phones to be commissioned with call waiting already # enabled. The user would then be required to dial the CW feature code (*70 default) to # enable their phone. Most installations should leave this alone. It allows multi-line # phones to receive multiple calls on their line appearances. ENABLECW=yes #CWINUSEBUSY: Set to yes for extensions that have CW enabled to report as busy if # they don't answer (resulting in busy voicemail greeting). Otherwise they simply # report as no-answer (e.g. busy greeting servers no purpose CWINUSEBUSY=yes # AMPBADNUMBER: Set to false if you do not want the bad-number context generated which # traps any bogus number or freature code and plays a message to the effect. If you use # the Early Dial feature on some Grandstream phones, you will want to set this to false AMPBADNUMBER=true # The following are used to optionally have the freepbx backup program optionally # send the generated backup to an ftp server # # FTPBACKUP=YES to enable # FTPUSER, FTPPASSWORD, FTPSERVER must be set # FTPSUBDIR is an optional subdirectory at the ftp server, it will cause ftp to do a cd # # There is no error checking so you should check to make sure these are set correctly. The # ftp is saved after the backup, so it will not cause the local backup file to be effected # # FTPBACKUP=yes #FTPUSER=asterisk #FTPPASSWORD=password #FTPSUBDIR=mybackupfolder #FTPSERVER=myftpserver # SSH BACKUP INFO: must have a valid SSHRSAKEY file and server, only supported through # ssh. SUBDIR is optional and will be created if it does not exist. # # If SSHUSER is not set, it will default to the current user which is asterisk in any # standard configuration. # #SSHBACKUP=yes #SSHUSER=backups #SSHRSAKEY=/etc/asterisk/backup_rsa #SSHSUBDIR=mysubdir #SSHSERVER=mybackupserver.com # AMPPROVROOT=/var/ftp /tftpboot # One or more directories where there are provisioning files that should be included in the backup. Currently # these get backed up only, the FreePBX utility does not automatically restore them. # #AMPPROVROOT=/var/ftp /tftpboot # AMPPROVEXCLUDE=/var/ftp/exclude-from-file-list # a file containing a list of file/directories to exclude, (will be used in tar's --exclude-from argument) # #AMPPROVEXCLUDE=/var/ftp/exclude-from-file-list #AMPPROVEXCLUDELIST=/dir file # a list of files/directories to exclude, (will be used in tar's --exclude argument) # #AMPPROVEXCLUDELIST=/etc/selinux /tftpboot/polycom /tftpboot/*.ld /tftpboot/*.cmp /tftpboot/*.st #AMPBACKADMIN=true|false #option to exclude the admin/ web dir from backups. This is will result in significantly smaller backups # defaults to true - always backup admin dir #AMPBACKADMIN=true # If CUSTOMASERROR is set to false, then the Destination Registry will not report unknow destinations as errors # this should be left to the default true and custom destinations should be moved into the new custom apps registry # CUSTOMASERROR=false # if DYNAMICHINTS is set to true, Core will not statically generate hints. Instead it will make a call to the # AMPBIN php script, generate_hints.php, through an Asteirsk's #exec call. This requires Asterisk.conf to be # configured with "execincludes=yes" set in the [options] section. # DYNAMICHINTS=true # XTNCONFLICTABORT, BADDESTABORT # setting either of these to true will result in retrieve_conf aborting during a reload if an extension # conflict is detected or a destination is detected. It is usually better to allow the reload to go # through and then correct the problem but these can be set if a more strict behavior is desired # both default to false if not set XTNCONFLICTABORT=false BADDESTABORT=false # SERVERINTITLE if set to true, the browser title will be preceded with the server name. default false SERVERINTITLE=false # USEDEVSTATE = true|false # DEFAULT VALUE false # If this is set, it assumes that you are running Asterisk 1.4 or higher and want to take advantage of the # func_devstate.c backport available from Asterisk 1.6 which allows custom hints to be created to support # BLF for server side feature codes such as daynight, followme, etc. # USEDEVSTATE=true # MODULEADMINWGET=true|false # DEFAULT VALUE false # Module Admin normally tries to get its online information through direct file open type calls to URLs that # go back to the freepbx.org server. If it fails, typically because of content filters in firewalls that don't # like the way PHP formats the requests, the code will fall back and try a wget to pull the information. # This will often solve the problem. However, in such environemnts there can be a significant timeout before # the failed file open calls to the URLs return and there are often 2-3 of these that occur. Setting this value # will force FreePBX to avoid the attempt to open the URL and go straight to the wget calls. # MODULEADMINWGET=true # AMPDISABLELOG=true|false # DEFAULT VALUE true # Whether or not to invoke the freepbx log facility # AMPSYSLOGLEVEL=LOG_EMERG|LOG_ALERT|LOG_CRIT|LOG_ERR|LOG_WARNING|LOG_NOTICE|LOG_INFO|LOG_DEBUG|LOG_SQL|SQL # DEFAULT VALUE LOG_ERR # Where to log if enabled, SQL, LOG_SQL logs to old MySQL table, others are passed to syslog system to determine where to log # AMPENABLEDEVELDEBUG=true|false # DEFAULT VALUE false # Whether or not to include log messages marked as 'devel-debug' in the log system # AMPMPG123=true|false # DEFAULT VALUE true # When set to false, the old MoH behavior is adopted where MP3 files can be loaded and WAV files converted to MP3 # The new default behavior assumes you have mpg123 loaded as well as sox and will convert MP3 files to WAV. This is # highly recommended as MP3 files heavily tax the system and can cause instability on a busy phone system. # CDR DB Settings: Only used if you dont use the default values provided by freepbx. # CDRDBHOST: hostname of db server if not the same as AMPDBHOST # CDRDBPORT: Port number for db host # CDRDBUSER: username to connect to db with if its not the same as AMPDBUSER # CDRDBPASS: password for connecting to db if its not the same as AMPDBPASS # CDRDBNAME: name of database used for cdr records # CDRDBTYPE: mysql or postgres mysql is default # CDRDBTABLENAME: Name of the table in the db where the cdr is stored cdr is default # AMPVMUMASK: defaults to 077 allowing only the asterisk user to have any permissions on VM files. If set to something # like 007, it would allow the group to have permissions. This can be used if setting apache to a different # user then asterisk, so that the apache user (and thus ARI) can have access to read/write/delete the # voicemail files. If changed, some of the voicemail directory strucuters may have to be manually changed. # DASHBOARD_STATS_UPDATE_TIME=integer_seconds # DEFAULT VALUE: 6 # DASHBOARD_INFO_UPDATE_TIME=integer_seconds # DEFAULT VALUE: 20 # These can be used to change the refresh rate of the System Status Panel. Most of # the stats are updated based on the STATS interval but a few items are checked # less frequently (such as Astersisk Uptime) based on the INFO value # FOPDISABLE=true|false # DEFAULT VALUE false # Disables FOP in interface and retrieve_conf. Usefull for sqlite3 or if you don't want FOP. # ZAP2DAHDICOMPAT=true|false # DEFAULT VALUE: false # If set to true, FreePBX will check if you have chan_dadhi installed. If so, it will # automatically use all your ZAP configuration settings (devices and trunks) and # silently convert them, under the covers, to DAHDI so no changes are needed. The # GUI will continue to refer to these as ZAP but it will use the proper DAHDI channels. # This will also keep Zap Channel DIDs working. # CHECKREFERER=true|false # DEFAULT VALUE: true # When set to the default value of true, all requests into FreePBX that might possibly add/edit/delete settings will # be validated to assure the request is coming from the server. This will protect the system from CSRF (cross site # request forgery) attacks. It will have the effect of preventing legitimately entering URLs that could modify # settings which can be allowed by changing this field to false # # USEQUEUESTATE=true|false # DEFAULT VALUE: false # Setting this flag will generate the required dialplan to integrate with the following Asterisk patch: # https://issues.asterisk.org/view.php?id=15168 # This feature is planned for a future 1.6 release but given the existance of the patch can be used prior. Once # the release version is known, code will be added to automatically enable this format in versions of Asterisk # that support it. AMPDBUSER=asteriskuser AMPDBPASS=amp109 AMPDBNAME=asterisk ASTETCDIR=/etc/asterisk ASTMODDIR=/usr/lib/asterisk/modules ASTVARLIBDIR=/var/lib/asterisk ASTAGIDIR=/var/lib/asterisk/agi-bin ASTSPOOLDIR=/var/spool/asterisk ASTRUNDIR=/var/run/asterisk ASTLOGDIR=/var/log/asterisk AMPDISABLELOG=true #AMPASTERISKUSER=apache #AMPASTERISKGROUP=asterisk
- I compiled freepbx and installed it.
(you need, among others : yum install -y php5 php5-cli php5-mysql mysql-server php-pear php-db openssh-server
curl sox apache2 subversion build-essential libncurses5-dev libssl-dev libmysqlclient15-dev e2fsprogs-devel keyutils-libs-devel krb5-devel libogg libselinux-devel libsepol-devel libxml2-devel libtiff-devel gmp php-pear php-pear-DB php-gd php-mysql php-pdo kernel-devel ncurses-devel audiofile-devel libogg-devel openssl-devel mysql-devel zlib-devel perl-DateManip sendmail-cf sox bison bison-doc libasound2 libgsm1 libltdl3 libpq4 libspeex1 libsqlite0 libtonezone1 libaudiofile0 libaudiofile-dev )
(you'll need also : http://dl.atrpms.net/all/mpg123-devel-1 ... 2.i686.rpm and http://dl.atrpms.net/all/mpg123-1.9.1-13.fc12.i686.rpm)


PERMISSIONS

/etc/amportal.conf = root
/var/hda/web-apps/freepbx/=apache
/var/hda/web-apps/freepbx/html =root
/var/hda/web-apps/freepbx/html/ (everything inside) =asterisk

INIT SCRIPT

I had a problem with the amportal start.
So I've put in the init scripts something to start asterisk first (just "asterisk" and THEN amportal)

FIREWALL
Don't forget to open sip ports!

I can assist any packagers who wants more information.

Cheers!

nomail
Posts: 1
Joined: Thu Aug 12, 2010 12:31 pm

Re: Amahi as a PBX

Postby nomail » Thu Aug 12, 2010 12:32 pm

Can someone provide me please with instructions towards installing freepbx, please?
I've installed asterisk but with freepbx there is no luck.

I've tried to install freepbx but after i try ./install_amp and reboot. Asterisk won't start anymore.
/var/logs/asterisk/full doesn't really help me...
It has been 2 days and I'm getting tired :(
regards
Is

ppmt
Posts: 35
Joined: Fri Aug 20, 2010 6:29 pm

Re: Amahi as a PBX

Postby ppmt » Fri Aug 20, 2010 7:46 pm

oh yes I want a PBX on my Guruplug/Amahi as well

This would be my dream come true :)

Who is online

Users browsing this forum: No registered users and 12 guests