Difference between revisions of "Talk:FreePBX"
Unnilennium (talk | contribs) |
Unnilennium (talk | contribs) |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Note box|}} | ||
+ | Please note that FreePBX is a GUI and Asterisk is the telephony engine. The asterisk engine can load modules that perform specific tasks. One of these (set of) modules is DAHDI. DAHDI is required if you want to connect your Asterisk PBX to e.g. POTS or ISDN for local physical breakout. Before Asterisk 1.6, DAHDI was also required as a timing source for the conference application, but for later Asterisk 1.6 and later this is no longer a dependency. | ||
+ | |||
+ | DAHDI is absolutely '''NOT''' required if you only use SIP/IAX2 trunks via a trunk provider for breakout to the telephony network (SS7). So all DADHI issues may not be valid for a lot of users who do not need DAHDI, and FreePBX and Asterisk work perfectly without DAHDI, if you only need SIP/IAX2 trunks. | ||
+ | |||
+ | Even if you do need to break out locally, ATA's or routers with POTS lines come in handy and you don't need DAHDI either, thus keeping your SME Server stable and without any hassle. Therefore I would like to see the FreePBX contrib evolve to a more basic contrib, where DAHDI can be 'activated' after initial install and as a seperate procedure. | ||
+ | |||
+ | ---- | ||
+ | |||
retrieve_conf failed to sym link: | retrieve_conf failed to sym link: | ||
/etc/asterisk/sip_notify.conf from core/etc | /etc/asterisk/sip_notify.conf from core/etc | ||
Line 7: | Line 16: | ||
chown asterisk:asterisk /etc/asterisk/sip_notify.conf | chown asterisk:asterisk /etc/asterisk/sip_notify.conf | ||
[[User:Unnilennium|Unnilennium]] 23:59, 1 November 2012 (MDT) | [[User:Unnilennium|Unnilennium]] 23:59, 1 November 2012 (MDT) | ||
+ | |||
+ | == version for SME8 == | ||
+ | |||
+ | need to update freepbx framework until at least 2.8 | ||
+ | and would be better in http://www.freepbx.org/trac/milestone/2.10 or http://www.freepbx.org/trac/milestone/2.9 | ||
+ | |||
+ | as current version of asterisk is 1.6 in sme8 | ||
+ | |||
+ | for sme7 should not update after 2.8 as asterisk 1.4 is not supported anymore | ||
+ | |||
+ | 17:22, 10 November 2012 (MST)[[User:Unnilennium|Unnilennium]] | ||
+ | |||
+ | == install on SME8 with kernel >2.6.18-308.21 == | ||
+ | |||
+ | first get an up to date system | ||
+ | |||
+ | yum update | ||
+ | signal-event post-upgrade; signal-event reboot | ||
+ | |||
+ | add elrepo to your machine | ||
+ | /sbin/e-smith/db yum_repositories set elrepo repository \ | ||
+ | Name ' ELRepo.org Community Enterprise Linux Repository - el5' \ | ||
+ | BaseURL ' http://elrepo.org/linux/elrepo/el5/$basearch' \ | ||
+ | mirrorlist http://elrepo.org/mirrors-elrepo.el5 \ | ||
+ | EnableGroups no \ | ||
+ | GPGCheck yes \ | ||
+ | GPGKey http://elrepo.org/RPM-GPG-KEY-elrepo.org \ | ||
+ | Visible no \ | ||
+ | Exclude clamav,spamassassin,libselinux,perl-HTML-Parser,lm_sensors,\ | ||
+ | perl-IO-stringy,perl-XML-Parser,razor-agents,libgcrypt,rpm-python,\ | ||
+ | libxml2,zlib,gnupg,libxml2-python,yum,module-init-tools,rpm,gettext,\ | ||
+ | librpm4,glib2,perl-libwww-perl,perl-Convert-ASN1,beecrypt,fetchmail,\ | ||
+ | libacl,libtool-ltdl,popt,libgpg-error,freetype,perl-MIME-tools,mutt,\ | ||
+ | gd,perl-TimeDate,librpm4.4 \ | ||
+ | status disabled | ||
+ | signal-event yum-modify | ||
+ | |||
+ | install without dependency the last available from smecontribs dahdi-linux rpm, without deps because it requires kmdl that are not available anymore | ||
+ | wget http://mirror.canada.pialasse.com/releases/8.1/smecontribs/i386/RPMS/dahdi-linux-2.4.1-70.el5.i386.rpm | ||
+ | rpm -ivh --nodeps dahdi-linux-2.4.1-70.el5.i386.rpm | ||
+ | |||
+ | install freepbx with kmod | ||
+ | yum --enablerepo=smecontribs --enablerepo=elrepo install smeserver-freepbx kmod-dahdi | ||
+ | |||
+ | then | ||
+ | signal-event post-upgrade; signal-event reboot | ||
+ | |||
+ | |||
+ | then go to your server-manager and update freepbx (up to 2.9 as it it the last version to fully support asterisks16) through its own interface | ||
+ | after each version upgrade execute (2.5->2.6->2.7->2.8->2.9) | ||
+ | signal-event freepbx-update | ||
+ | to get access again to the interface. | ||
+ | |||
+ | procedure to update : | ||
+ | - go to module admin | ||
+ | - click check online | ||
+ | - update all available "Upgrade all" | ||
+ | - then apply changes and reload ( orange box) | ||
+ | - then click check online | ||
+ | - select 2.x "Upgrade Tool", install by clicking "process" and follow the instructions ( basically doing the same previous process, but by first updating only the FreePBX Framework, and after applying and reloading all update all other modules) | ||
+ | |||
+ | == known issues for obsolete versions == | ||
+ | |||
+ | ===SME8: Sounds=== | ||
+ | you might have some trouble with sounds not playing, after updates of freepbx. | ||
+ | The problem is that freepbx in new release configures asterisk to search for sounds in /usr/share/asterisk/sounds but all rpm for centos will install them in /var/lib/asterisk/sounds | ||
+ | |||
+ | create a symlink for each folder in it and everything will works. | ||
+ | |||
+ | ===SME8: Dahdi-linux-kmdl=== | ||
+ | |||
+ | be carrefull to keep the kernel module up to date every time you have a new kernel release ( wait if they are not available) | ||
+ | |||
+ | ===SME8: FOP could not reload === | ||
+ | if after installation you get this message just do a | ||
+ | service freepbx restart | ||
+ | and everything will get fine ! | ||
+ | |||
+ | ===SME9: warnings during yum install === | ||
+ | you can safely ignore any of the following warnings during the installation : | ||
+ | Installing : asterisk-sounds-extra-en-ulaw-1.4.11-1_centos6.noarch 22/45 | ||
+ | warning: user asterisk does not exist - using root | ||
+ | |||
+ | and | ||
+ | Installing : kmod-dahdi-linux-fwload-vpmadt032-2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64.x86_64 15/45 | ||
+ | WARNING: /lib/modules/2.6.32-573.26.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister | ||
+ | WARNING: /lib/modules/2.6.32-573.26.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register | ||
+ | WARNING: /lib/modules/2.6.32-573.8.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister | ||
+ | WARNING: /lib/modules/2.6.32-573.8.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register | ||
+ | WARNING: /lib/modules/2.6.32-642.1.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister | ||
+ | WARNING: /lib/modules/2.6.32-642.1.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register | ||
+ | |||
+ | they are only the result of the order choosen by yum for doing the install, and they do not impact the final result. | ||
+ | |||
+ | in /var/log/asterisk/freepbx.log | ||
+ | you might see the following | ||
+ | [2016-06-10 12:14:08] ERROR[11265] res_pjsip_config_wizard.c: Unable to load config file 'pjsip_wizard.conf' | ||
+ | you can safely ignore it, or refer to https://wiki.asterisk.org/wiki/display/AST/PJSIP+Configuration+Wizard in order to create your own. | ||
+ | |||
+ | |||
+ | ===SME9: install more language pack manually === | ||
+ | In 2019, language sound module stop displaying available language packs. It seems that freepbx team has issue or stop populating their $xml = $this->getRemoteFile("/sounds-" . $base_version . ".xml"); file for fpbx13 : http://mirror1.freepbx.org/sounds-13.0.xml As a result sound lang module will display an empty list. | ||
+ | |||
+ | Just change MYLANG='fr' to your desired language. <syntaxhighlight lang="bash"> | ||
+ | mkdir /root/soundpacks | ||
+ | cd /root/soundpacks | ||
+ | MYLANG='fr' | ||
+ | wget -r -l 1 -c --no-directories --no-parent -A 'asterisk-*-sounds-'$MYLANG'-*' -R '*.txt,*sha1' http://downloads.asterisk.org/pub/telephony/sounds/ | ||
+ | rm -f robots.txt | ||
+ | for OUTPUT in $(ls *-$MYLANG-* ) | ||
+ | do | ||
+ | tar -xzf $OUTPUT -C /var/lib/asterisk/sounds/$MYLANG | ||
+ | done | ||
+ | chown asterisk:asterisk -R /var/lib/asterisk/sounds/$MYLANG | ||
+ | </syntaxhighlight>After that login to freepbx and add a custom language for your lang to be able to use it. | ||
+ | |||
+ | ===SME9: difficulty to upgrade === | ||
+ | if you installed this contrib before 8/4/2017, you should issue the following command to exclude the php packages from asterisk-current repo. They could conflict with upstream packages and block your updates (php-pear(DB) = 1.7.13 Updated By: php-pear-DB-1.7.14-1_centos6.noarch (asterisk-current) Not found). | ||
+ | db yum_repositories setprop asterisk-current Exclude php-* | ||
+ | signal-event yum-modify | ||
+ | |||
+ | ===SME9: CDR logging not enabled by default=== | ||
+ | CDR logging is not enabled by default. To enable one must manually load the ''cdr_mysql.so'' module: | ||
+ | Admin -> Asterisk Modules -> Manually loaded Modules -> Add module and enter the module name ''cdr_mysql.so'' | ||
+ | |||
+ | ===SME9: /tmp owned by asterisk:asterisk=== | ||
+ | update to a version of smeserver-freepbx >=13.3 and this will be fixed | ||
+ | |||
+ | ===SME9: freepbx modules === | ||
+ | if you need to install the digium addons from freepbx, you will first need to install the following RPM: | ||
+ | yum install php-digium_register --enablerepo-digium-current | ||
+ | |||
+ | Firewall addons does not work on SME, it requires Sysadmin RPM. | ||
+ | |||
+ | You may need to manually install the manager module. It should be a default module but I could not find it installed, and nothing appeared in the Module Admin. | ||
+ | |||
+ | fwconsole moduleadmin listonline | ||
+ | |||
+ | fwconsole ma downloadinstall manager | ||
+ | |||
+ | |||
+ | ===SME9: unable to access UCP === | ||
+ | mostly caused by not enough output_buffering | ||
+ | mkdir /etc/e-smith/templates-custom/etc/httpd/fpbx-conf/httpd.conf -p | ||
+ | printf " | ||
+ | <Directory /opt/freepbx/ucp/> | ||
+ | php_admin_value output_buffering 8192 | ||
+ | DirectoryIndex index.php index.htm index.html index.php index.cgi | ||
+ | AddType application/x-httpd-php .php | ||
+ | Options +followSymlinks | ||
+ | AllowOverride All | ||
+ | </Directory>" >/etc/e-smith/templates-custom/etc/httpd/fpbx-conf/httpd.conf/91FreePBXucp | ||
+ | expand-template /etc/httpd/fpbx-conf/httpd.conf | ||
+ | httpd -t -f /etc/httpd/fpbx-conf/httpd.conf | ||
+ | if you see Syntx OK, then you can proceed to restart the process | ||
+ | service httpd-fpbx restart | ||
+ | |||
+ | et voila. |
Latest revision as of 19:42, 24 July 2022
Please note that FreePBX is a GUI and Asterisk is the telephony engine. The asterisk engine can load modules that perform specific tasks. One of these (set of) modules is DAHDI. DAHDI is required if you want to connect your Asterisk PBX to e.g. POTS or ISDN for local physical breakout. Before Asterisk 1.6, DAHDI was also required as a timing source for the conference application, but for later Asterisk 1.6 and later this is no longer a dependency.
DAHDI is absolutely NOT required if you only use SIP/IAX2 trunks via a trunk provider for breakout to the telephony network (SS7). So all DADHI issues may not be valid for a lot of users who do not need DAHDI, and FreePBX and Asterisk work perfectly without DAHDI, if you only need SIP/IAX2 trunks.
Even if you do need to break out locally, ATA's or routers with POTS lines come in handy and you don't need DAHDI either, thus keeping your SME Server stable and without any hassle. Therefore I would like to see the FreePBX contrib evolve to a more basic contrib, where DAHDI can be 'activated' after initial install and as a seperate procedure.
retrieve_conf failed to sym link:
/etc/asterisk/sip_notify.conf from core/etc
This can result in FATAL failures to your PBX. If the target file exists and not identical, the symlink will not occur and you should rename the target file to allow the automatic sym link to occur and remove this error, unless this is an intentional customization.
mv /etc/asterisk/sip_notify.conf /etc/asterisk/sip_notify.conf.old ln -s /opt/freepbx/admin/modules/core/etc/sip_notify.conf /etc/asterisk/sip_notify.conf chown asterisk:asterisk /etc/asterisk/sip_notify.conf
Unnilennium 23:59, 1 November 2012 (MDT)
version for SME8
need to update freepbx framework until at least 2.8 and would be better in http://www.freepbx.org/trac/milestone/2.10 or http://www.freepbx.org/trac/milestone/2.9
as current version of asterisk is 1.6 in sme8
for sme7 should not update after 2.8 as asterisk 1.4 is not supported anymore
17:22, 10 November 2012 (MST)Unnilennium
install on SME8 with kernel >2.6.18-308.21
first get an up to date system
yum update signal-event post-upgrade; signal-event reboot
add elrepo to your machine
/sbin/e-smith/db yum_repositories set elrepo repository \ Name ' ELRepo.org Community Enterprise Linux Repository - el5' \ BaseURL ' http://elrepo.org/linux/elrepo/el5/$basearch' \ mirrorlist http://elrepo.org/mirrors-elrepo.el5 \ EnableGroups no \ GPGCheck yes \ GPGKey http://elrepo.org/RPM-GPG-KEY-elrepo.org \ Visible no \ Exclude clamav,spamassassin,libselinux,perl-HTML-Parser,lm_sensors,\ perl-IO-stringy,perl-XML-Parser,razor-agents,libgcrypt,rpm-python,\ libxml2,zlib,gnupg,libxml2-python,yum,module-init-tools,rpm,gettext,\ librpm4,glib2,perl-libwww-perl,perl-Convert-ASN1,beecrypt,fetchmail,\ libacl,libtool-ltdl,popt,libgpg-error,freetype,perl-MIME-tools,mutt,\ gd,perl-TimeDate,librpm4.4 \ status disabled signal-event yum-modify
install without dependency the last available from smecontribs dahdi-linux rpm, without deps because it requires kmdl that are not available anymore
wget http://mirror.canada.pialasse.com/releases/8.1/smecontribs/i386/RPMS/dahdi-linux-2.4.1-70.el5.i386.rpm rpm -ivh --nodeps dahdi-linux-2.4.1-70.el5.i386.rpm
install freepbx with kmod
yum --enablerepo=smecontribs --enablerepo=elrepo install smeserver-freepbx kmod-dahdi
then
signal-event post-upgrade; signal-event reboot
then go to your server-manager and update freepbx (up to 2.9 as it it the last version to fully support asterisks16) through its own interface
after each version upgrade execute (2.5->2.6->2.7->2.8->2.9)
signal-event freepbx-update
to get access again to the interface.
procedure to update : - go to module admin - click check online - update all available "Upgrade all" - then apply changes and reload ( orange box) - then click check online - select 2.x "Upgrade Tool", install by clicking "process" and follow the instructions ( basically doing the same previous process, but by first updating only the FreePBX Framework, and after applying and reloading all update all other modules)
known issues for obsolete versions
SME8: Sounds
you might have some trouble with sounds not playing, after updates of freepbx. The problem is that freepbx in new release configures asterisk to search for sounds in /usr/share/asterisk/sounds but all rpm for centos will install them in /var/lib/asterisk/sounds
create a symlink for each folder in it and everything will works.
SME8: Dahdi-linux-kmdl
be carrefull to keep the kernel module up to date every time you have a new kernel release ( wait if they are not available)
SME8: FOP could not reload
if after installation you get this message just do a
service freepbx restart
and everything will get fine !
SME9: warnings during yum install
you can safely ignore any of the following warnings during the installation :
Installing : asterisk-sounds-extra-en-ulaw-1.4.11-1_centos6.noarch 22/45 warning: user asterisk does not exist - using root
and
Installing : kmod-dahdi-linux-fwload-vpmadt032-2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64.x86_64 15/45 WARNING: /lib/modules/2.6.32-573.26.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister WARNING: /lib/modules/2.6.32-573.26.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register WARNING: /lib/modules/2.6.32-573.8.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister WARNING: /lib/modules/2.6.32-573.8.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register WARNING: /lib/modules/2.6.32-642.1.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_unregister WARNING: /lib/modules/2.6.32-642.1.1.el6.x86_64/weak-updates/dahdi-linux-fwload-vpmadt032/dahdi_vpmadt032_loader.ko needs unknown symbol vpmadtreg_register they are only the result of the order choosen by yum for doing the install, and they do not impact the final result.
in /var/log/asterisk/freepbx.log you might see the following
[2016-06-10 12:14:08] ERROR[11265] res_pjsip_config_wizard.c: Unable to load config file 'pjsip_wizard.conf'
you can safely ignore it, or refer to https://wiki.asterisk.org/wiki/display/AST/PJSIP+Configuration+Wizard in order to create your own.
SME9: install more language pack manually
In 2019, language sound module stop displaying available language packs. It seems that freepbx team has issue or stop populating their $xml = $this->getRemoteFile("/sounds-" . $base_version . ".xml"); file for fpbx13 : http://mirror1.freepbx.org/sounds-13.0.xml As a result sound lang module will display an empty list.
Just change MYLANG='fr' to your desired language.
mkdir /root/soundpacks
cd /root/soundpacks
MYLANG='fr'
wget -r -l 1 -c --no-directories --no-parent -A 'asterisk-*-sounds-'$MYLANG'-*' -R '*.txt,*sha1' http://downloads.asterisk.org/pub/telephony/sounds/
rm -f robots.txt
for OUTPUT in $(ls *-$MYLANG-* )
do
tar -xzf $OUTPUT -C /var/lib/asterisk/sounds/$MYLANG
done
chown asterisk:asterisk -R /var/lib/asterisk/sounds/$MYLANG
After that login to freepbx and add a custom language for your lang to be able to use it.
SME9: difficulty to upgrade
if you installed this contrib before 8/4/2017, you should issue the following command to exclude the php packages from asterisk-current repo. They could conflict with upstream packages and block your updates (php-pear(DB) = 1.7.13 Updated By: php-pear-DB-1.7.14-1_centos6.noarch (asterisk-current) Not found).
db yum_repositories setprop asterisk-current Exclude php-* signal-event yum-modify ===SME9: CDR logging not enabled by default===
CDR logging is not enabled by default. To enable one must manually load the cdr_mysql.so module:
Admin -> Asterisk Modules -> Manually loaded Modules -> Add module and enter the module name cdr_mysql.so
SME9: /tmp owned by asterisk:asterisk
update to a version of smeserver-freepbx >=13.3 and this will be fixed
SME9: freepbx modules
if you need to install the digium addons from freepbx, you will first need to install the following RPM:
yum install php-digium_register --enablerepo-digium-current
Firewall addons does not work on SME, it requires Sysadmin RPM.
You may need to manually install the manager module. It should be a default module but I could not find it installed, and nothing appeared in the Module Admin.
fwconsole moduleadmin listonline
fwconsole ma downloadinstall manager
SME9: unable to access UCP
mostly caused by not enough output_buffering
mkdir /etc/e-smith/templates-custom/etc/httpd/fpbx-conf/httpd.conf -p printf " <Directory /opt/freepbx/ucp/> php_admin_value output_buffering 8192 DirectoryIndex index.php index.htm index.html index.php index.cgi AddType application/x-httpd-php .php Options +followSymlinks AllowOverride All </Directory>" >/etc/e-smith/templates-custom/etc/httpd/fpbx-conf/httpd.conf/91FreePBXucp expand-template /etc/httpd/fpbx-conf/httpd.conf httpd -t -f /etc/httpd/fpbx-conf/httpd.conf
if you see Syntx OK, then you can proceed to restart the process
service httpd-fpbx restart
et voila.