Debian Fusionpbx Pkg or Source Install
Pre Install Information
This script uses Sqlite by default for the fusionpbx database.
If you wish to use Postgresql locally or on a remote database server.
You need to edit the script and enable the pgsql-client or pgsql-server option.
You will need to fill in the required information following the option.
This Install if you do not select extra options . Will Install A very Minimal But operational pbx system.
Install Debian Wheezy with iso
Download and install a minimal Debian wheezy
Get iso's here: Offline Install Iso:
i386: http://cdimage.debian.org/debian-cd/7.7.0/i386/iso-cd/debian-7.7.0-i386-CD-1.iso
amd64: http://cdimage.debian.org/debian-cd/7.7.0/amd64/iso-cd/debian-7.7.0-amd64-CD-1.iso
Net Install iso:
net-x86: http://cdimage.debian.org/debian-cd/7.7.0/i386/iso-cd/debian-7.7.0-i386-netinst.iso
net-amd64: http://cdimage.debian.org/debian-cd/7.7.0/amd64/iso-cd/debian-7.7.0-amd64-netinst.iso
Burn the iso to disk Or use http://unetbootin.sourceforge.net/ to create your installation thumb stick. (Win/Linux)
Steps for Install
Step 1 : Install a minimal version of debian. (Including ssh server)
step 2 : ssh into the system..
(MENT FOR STABLE / PRODUCTION SYSTEM INSTALLS / USE AT OWN RISK ... FOR TESTING AND DEVELOPMENT)
then get: wget http://fusionpbx.googlecode.com/svn/trunk/scripts/install/Debian/FusionPbx-Debian-Optional-Pkgs-or-Source-Install.sh
step 3 : chmod +x FusionPbx-Debian-Optional-Pkgs-or-Source-Install.sh
step 4 : nano / vi the FusionPbx-Debian-Optional-Pkgs-or-Source-Install.sh script and select the extra options you want
In this script section change the ( n to y ) to enable or ( y to n ) to disable the option.
Please read all the infor in the top of the script and make sure you understand it.
################################################################################ # # Pre-Install Information: # # This script uses Sqlite by default for the fusionpbx database. # # If you wish to use postgresql locally or on a remote server. # # You need to edit the script and enable the pgsql-client or pgsql option # # and fill in the required information. # ################################################################################
################### FreeSWITCH Debian FHS Configuration ########################
" FreeSWITCH Debian FHS Configuration "
Locations: prefix: /usr exec_prefix: ${prefix} bindir: ${exec_prefix}/bin sysconfdir: /etc/freeswitch libdir: ${exec_prefix}/lib
certsdir: /etc/freeswitch/tls dbdir: /var/lib/freeswitch/db grammardir: /usr/share/freeswitch/grammar htdocsdir: /usr/share/freeswitch/htdocs logfiledir: /var/log/freeswitch modulesdir: /usr/lib/freeswitch/mod pkgconfigdir: ${exec_prefix}/lib/pkgconfig recordingsdir: /var/lib/freeswitch/recordings runtimedir: /var/run/freeswitch scriptdir: /var/lib/freeswitch/scripts soundsdir: /usr/share/freeswitch/sounds storagedir: /var/lib/freeswitch/storage cachedir: /var/cache/freeswitch ################################################################################ ######################################## #<------Start/Begin Edit HERE---------> ######################################## ######################## # Freeswitch Options ######################## ############################################################ # Select to use the Release or head branch of freeswitch # if you select to change y to n it will use 1.5 head branch ############################################################ freeswitch_stable="y" ################################################################################ # If you select to use the freeswitch pkgs it will use the prebuilt debian pkgs. # If you select not to use the freeswitch debian pkgs it will use git and pull # down all the build deps and and git the freeswitch src and build and install # from the freeswitch source code using the debian fhs lay out. ################################################################################ use_freeswitch_pkgs="n" ##################################################################################################### # Set what language lang/say pkgs and language sound files to use. ( Only if pkgs install is selected ) # en-ca=English/CA en-us=English/US (default) fr-ca=French/Canadian pt-br=Portuguese/Brazill # ru-ru=Russian/Russia sv-se=Swedish/Sweden zh-cn=chinese/Mandarin zh-hk=chinese/HongKong ##################################################################################################### use_lang="en-us" ################################################################################ #Set what sounds to use when using the freeswitch source build. # cdsounds = 8k / 16k / 32k / 48k # if you select not to use cd sounds it will use # hdsounds = 8k / 16k sounds only ################################################################################ use_cd_sounds=="y" ################################################################################ # If you select not to use pkgs but to build from source. Here is a option to # set how many COU_CORES are used to compile with ################################################################################ CPU_CORES=1 ################################################################################ # If you select not to use pkgs but to build from source. Here is a option to # pull and use the freeswitch contribs src for extra modules. (UNDER DEVELOPMENT) ################################################################################ use_freeswitch_contrib="n" ################################################################################ # Enable / Build Freetdm into freeswitch (UNDER DEVELOPMENT) ################################################################################ use_freetdm="n"
################################################################################ # Enable / Build GsmOpen into freeswitch (UNDER DEVELOPMENT) ################################################################################ use_gsmopen="n" ################################################################################ #Freeswutch Modules Selection ################################################################################ use_extra_modules="n"
##################################################### #Freeswitch Default Enabled Modules ( Required for base build ) ##################################################### #applications/mod_commands #applications/mod_conference #applications/mod_db #applications/mod_dptools #applications/mod_enum #applications/mod_esf #applications/mod_expr #applications/mod_fifo #applications/mod_fsv #applications/mod_hash #applications/mod_httapi #applications/mod_sms #applications/mod_spandsp #applications/mod_valet_parking #applications/mod_voicemail #codecs/mod_amr #codecs/mod_bv #codecs/mod_b64 #codecs/mod_g723_1 #codecs/mod_g729 #codecs/mod_h26x #codecs/mod_vp8 #codecs/mod_opus #dialplans/mod_dialplan_asterisk #dialplans/mod_dialplan_xml #endpoints/mod_rtc #endpoints/mod_verto #endpoints/mod_loopback #endpoints/mod_skinny #endpoints/mod_sofia #event_handlers/mod_cdr_csv #event_handlers/mod_cdr_sqlite #event_handlers/mod_event_socket #formats/mod_local_stream #formats/mod_native_file #formats/mod_portaudio_stream #formats/mod_sndfile #formats/mod_tone_stream #languages/mod_lua #loggers/mod_console #loggers/mod_logfile #loggers/mod_syslog #say/mod_say_en #xml_int/mod_xml_cdr #xml_int/mod_xml_rpc #xml_int/mod_xml_scgi
##################################################### # Fusionpbx Default enabled Modules ##################################################### #applications/mod_blacklist #applications/mod_callcenter #applications/mod_cidlookup #applications/mod_curl #applications/mod_distributor #applications/mod_esl #applications/mod_lcr #applications/mod_memcache #codecs/mod_amrwb #codecs/mod_celt #codecs/mod_codec2 #codecs/mod_ilbc #codecs/mod_isac #codecs/mod_silk #codecs/mod_siren #codecs/mod_theora #mod_portaudio #mod_portaudio_stream #mod_dingaling #mod_spy #mod_translat #mod_flite #mod_pocketsphinx #mod_tts_commandline #mod_event_multicast #mod_event_test #mod_shout #mod_rtmp (sipml5) #mod_random
################################################################################ #Enable optional modules from list above here used for fusionpnbx build !!!!!! ################################################################################ fusionpbx_modules_add=( mod_blacklist mod_callcenter mod_cidlookup mod_curl mod_distributor \ mod_esl mod_lcr mod_memcache mod_amrwb mod_celt mod_codec2 mod_isac mod_silk mod_siren \ mod_theora mod_portaudio mod_dingaling mod_spy mod_translate mod_flite mod_pocketsphinx \ mod_tts_commandline mod_event_multicast mod_event_test mod_shout mod_rtmp mod_random )
############################# # Optional Freeswitch Modules ############################# #applications/mod_abstraction #applications/mod_avmd #applications/mod_bert #applications/mod_cluechoo #applications/mod_directory #applications/mod_easyroute #applications/mod_fsk #applications/mod_http_cache #applications/mod_ladspa #applications/mod_mongo #applications/mod_mp4 #applications/mod_nibblebill #applications/mod_oreka #applications/mod_osp #applications/mod_prefix #applications/mod_rad_auth #applications/mod_redis #applications/mod_rss #applications/mod_sonar #applications/mod_snapshot #applications/mod_snipe_hunt #applications/mod_snom #applications/mod_soundtouch #applications/mod_stress #applications/mod_vmd #applications/mod_voicemail_ivr #applications/mod_random #asr_tts/mod_cepstral #asr_tts/mod_unimrcp #codecs/mod_com_g729 #codecs/mod_dahdi_codec #codecs/mod_mp4v #codecs/mod_sangoma_codec #dialplans/mod_dialplan_directory #directories/mod_ldap #endpoints/mod_alsa #endpoints/mod_h323 #endpoints/mod_khomp #endpoints/mod_opal #endpoints/mod_skypopen #endpoints/mod_unicall #event_handlers/mod_cdr_mongodb #event_handlers/mod_cdr_pg_csv #event_handlers/mod_erlang_event #event_handlers/mod_event_zmq #event_handlers/mod_format_cdr #event_handlers/mod_json_cdr #event_handlers/mod_radius_cdr #event_handlers/mod_odbc_cdr #event_handlers/mod_rayo #event_handlers/mod_snmp #formats/mod_shell_stream #formats/mod_ssml #formats/mod_vlc #languages/mod_basic #languages/mod_java #languages/mod_managed #languages/mod_perl #languages/mod_python #languages/mod_v8 #languages/mod_yaml #loggers/mod_graylog2 #say/mod_say_de #say/mod_say_es #say/mod_say_es_ar #say/mod_say_fa #say/mod_say_fr #say/mod_say_he #say/mod_say_hr #say/mod_say_hu #say/mod_say_it #say/mod_say_ja #say/mod_say_nl #say/mod_say_pl #say/mod_say_pt #say/mod_say_ru #say/mod_say_th #say/mod_say_zh #say/mod_say_sv #xml_int/mod_xml_ldap #xml_int/mod_xml_radius #mod_posix_timer #mod_timerfd
#../../libs/freetdm/mod_freetdm # Experimental Modules (don't cry if they're broken) #../../contrib/mod/xml_int/mod_xml_odbc ################################################################################ # Please Select from the optional modules above and put them in the ( ). Use only # the 2nd part of the name so like applications/mod_abstraction use only the # mod_abstraction part. (UNDER DEVELOPMENT ) ################################################################################ ################################################### # Add / Enable optional modules from list above here ################################################### if $use_extra_modules == "y" ; then extra_modules_add=( ) fi ################################# # Freeswitch Contrib Modules #################################
#../../contrib/ledr/c/mod_odbc_ ################################################################################################# # Options contrib modules (only if you selected to use the contribs git option ) # (future Option) (UNDER DEVELOPMENT ) ################################################################################################# if $use_freeswitch_contrib == "y" ; then contrib_modules_add=( ../../contrib/ledr/c/mod_odbc_query cd mo ) fi ############################################################################### #Enable optional modules from list above here used for fusionpnbx build !!!!!! ################################################################################ if $use_freetdm == "y" ; then freetdm_modules_add=( ../../libs/freetdm/mod_freetdm ) fi ################################################################################ #Enable optional modules from list above here used for fusionpnbx build !!!!!! ################################################################################ if $use_gsmopen == "y" ; then gsmopen_modules_add=( gsmopen mod_siren mod_xml_curl ) fi ################################################################ # Option to disable some loging execpt for warnings and errors ################################################################ logging_level="n"
#################### # FUSIONPBX OPTIONS #################### ######################################################## # Select to use the Stable or Dev Branch of fusionpbx # Change the y to n to use the dev branch for fusionpbx ######################################################## use_stable="y" ############################################################################# #Set how long to keep freeswitch/fusionpbx log files 1 to 30 days (Default:5) ############################################################################# keep_logs=5 ####################################################################### #Set mp3/wav file upload/post size limit ( Must Have the M on the end ) ####################################################################### upload_size="25M" ########################################## #----Optional Fusionpbx Apps/Modules---- ########################################## ####################################### # DO NOT SELECT FROM BOTH !!!!!!!!!! ####################################### ################################################################### # If you wish to install all options use THE ALL OPTION ONLY!!!!!!! ################################################################### all="n" #: Install all extra modules for fusionpbx and related freeswitch deps ############################################################### # Else select options fusionpbx module/appsfrom here........ ############################################################### adminer="n" # : integrated for an administrator in the superadmin group to enable easy database access backup="n" # : pbx backup module. backup sqlite db / configs/ logs call_broadcast="n" # : Create a recording and select one or more groups to have the system call and play the recording call_center="n" # : display queue status, agent status, tier status for call centers using mod_callcenter call queues call_flows="n" # : Typically used with day night mode. To direct calls between two destinations. conference_centers="n" # : tools for multi room confrences and room contol conference="n" # : tools for single room confrences and room contol content="n" # : Advanced-Content Manager edit="n" # : multi tools for editing (templates/xmlfiles/configfiles/scripts) files exec="n" # : comman shells pages for executing (php/shells) commands fax="n" # : fusionpbx send/recieve faxes service fifo="n" # : first in first out call queues system hot_desk="n" # : allows users to login and recieve calls on any office phone schemas="n" # : services="n" # : allows interaction with the processes running on your server sipml5="n" # : php base softphone sql_query="n" # : allows you to interactively submit SQL queries to the database used in FusionPBX traffic_graph="n" # : php graph for monitoing the network interface traffic xmpp="n" # : Configure XMPP to work with Google talk or other jabber servers aastra="n" # : phone provisioning tool & templates for aastra phones atcom="n" # : phone provisioning tool & templates for atcom phones cisco="n" # : phone provisioning tool & templates for cisco phones grandstream="n" # : phone provisioning tool & templates for grandstream phones linksys="n" # : phone provisioning tool & templates for linksys phones panasonic="n" # : phone provisioning tool & templates for panasonic phones polycom="n" # : phone provisioning tool & templates for polycom phones snom="n" # : provisioning tool & templates for snom phones yealink="n" # : phone provisioning tool & templates for yealink phones verto="n" # (x86/amd64 Only) (future option on arm) accessible_theme="n" # : accessible theme for fusionpbx classic_theme="n" # : classic theme for fusionpbx default_theme="n" # : default theme for fusionpbx minimized_theme="n" # : minimal theme for fusionpbx ###################################### # POSTGRESQL ( Optional Not Required) ###################################### ################################################ # Please Select Server or Client not both !!!!!! ################################################ ################################################################################# # Install postgresql Client 9.4 for connection to remote postgresql servers (y/n) ################################################################################# postgresql_client="n"
################################################################################# # Install postgresql server 9.4 (y/n) (client included)(Local Machine) # Notice: # You should not use postgresql server on a nand/emmc/sd. It cuts the performance # life in half due to all the needed reads and writes. This cuts the life of # your pbx emmc/sd in half. ################################################################################# postgresql_server="n" ########################################################## # Set Postgresql Server Admin username ( Lower case only ) ########################################################## pgsql_admin=pgsqladmin ###################################### # Set Postgresql Server Admin password ###################################### pgsql_admin_passwd=pgsqladmin2015 #################################################################################### # Set Database Name used for fusionpbx in the postgresql server (Default: fusionpbx) #################################################################################### db_name=fusionpbx #################################################################################### # Set FusionPBX database admin name.(used by fusionpbx to access the database table # in the postgresql server (Default: fusionpbx) #################################################################################### db_user_name=fusionpbxadmin ################################################################################### # Set FusionPBX database admin password .(used by fusionpbx to access the database # table in the postgresql server). Please set a very secure password !!!!!! ################################################################################### db_user_passwd=fusionpbx2015 ############################################################################### # Disable xml_cdr files in /var/log/freeswitch/xml_cdr and only log cdr to the # sqlite or pgsql database only. ############################################################################### xml_cdr_files == "y" ################################################################ #Install Ajenti Optional Admin Portal Optional (Not Required) ################################################################ install_ajenti="n" #################################### #<------Stop/End Edit Here--------> ####################################