mirror of
https://github.com/myronblair/fusionpbx-config
synced 2026-06-30 17:50:16 -05:00
[fusion] Weekly backup 2026-06-08 — 27 files changed, 1794 insertions(+)
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,37 @@
|
||||
--
|
||||
-- PostgreSQL database cluster dump
|
||||
--
|
||||
|
||||
\restrict h5jdeiwpfVhsdbBfFLUSJhRcoYBsgYhwuNKbaQZVQYpKMdMfuVHD9IB6V4eNr1T
|
||||
|
||||
SET default_transaction_read_only = off;
|
||||
|
||||
SET client_encoding = 'UTF8';
|
||||
SET standard_conforming_strings = on;
|
||||
|
||||
--
|
||||
-- Roles
|
||||
--
|
||||
|
||||
CREATE ROLE fusionpbx;
|
||||
ALTER ROLE fusionpbx WITH SUPERUSER INHERIT NOCREATEROLE NOCREATEDB LOGIN NOREPLICATION NOBYPASSRLS PASSWORD 'SCRAM-SHA-256$4096:JOYKSj+lfw3sxgcuge2NEQ==$k1piq39UiU0yXVkXwXp4kq6uf1R+x4f1OJjXkJCWRE8=:iEQk9HFcFZ4tZOtuZ2hWHbCQCv1CFbe+rQsHNk7Nqx0=';
|
||||
CREATE ROLE postgres;
|
||||
ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN REPLICATION BYPASSRLS;
|
||||
|
||||
--
|
||||
-- User Configurations
|
||||
--
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
\unrestrict h5jdeiwpfVhsdbBfFLUSJhRcoYBsgYhwuNKbaQZVQYpKMdMfuVHD9IB6V4eNr1T
|
||||
|
||||
--
|
||||
-- PostgreSQL database cluster dump complete
|
||||
--
|
||||
|
||||
Executable
+146
@@ -0,0 +1,146 @@
|
||||
[DEFAULT]
|
||||
ignoreip = 127.0.0.1/8 ::1 107.178.2.130 97.154.109.245
|
||||
|
||||
[ssh]
|
||||
enabled = true
|
||||
port = 22
|
||||
protocol = ssh
|
||||
filter = sshd
|
||||
logpath = /var/log/auth.log
|
||||
action = iptables-allports[name=sshd, protocol=all]
|
||||
maxretry = 6
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[freeswitch]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = freeswitch
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=freeswitch, protocol=all]
|
||||
maxretry = 10
|
||||
findtime = 60
|
||||
bantime = 3600
|
||||
# sendmail-whois[name=FreeSwitch, dest=root, sender=fail2ban@example.org] #no smtp server installed
|
||||
|
||||
[freeswitch-acl]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = freeswitch-acl
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=freeswitch-acl, protocol=all]
|
||||
maxretry = 900
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[freeswitch-ip]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = freeswitch-ip
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=freeswitch-ip, protocol=all]
|
||||
maxretry = 1
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[auth-challenge-ip]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = auth-challenge-ip
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=auth-challenge-ip, protocol=all]
|
||||
maxretry = 1
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[sip-auth-challenge]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = sip-auth-challenge
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=sip-auth-challenge, protocol=all]
|
||||
maxretry = 100
|
||||
findtime = 60
|
||||
bantime = 7200
|
||||
|
||||
[sip-auth-failure]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = sip-auth-failure
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=sip-auth-failure, protocol=all]
|
||||
maxretry = 6
|
||||
findtime = 60
|
||||
bantime = 7200
|
||||
|
||||
[fusionpbx-404]
|
||||
enabled = false
|
||||
port = 5060:5091
|
||||
protocol = all
|
||||
filter = fusionpbx-404
|
||||
logpath = /var/log/freeswitch/freeswitch.log
|
||||
#logpath = /usr/local/freeswitch/log/freeswitch.log
|
||||
action = iptables-allports[name=fusionpbx-404, protocol=all]
|
||||
maxretry = 6
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[fusionpbx]
|
||||
enabled = true
|
||||
port = 80,443
|
||||
protocol = tcp
|
||||
filter = fusionpbx
|
||||
logpath = /var/log/auth.log
|
||||
action = iptables-allports[name=fusionpbx, protocol=all]
|
||||
# sendmail-whois[name=fusionpbx, dest=root, sender=fail2ban@example.org] #no smtp server installed
|
||||
maxretry = 20
|
||||
findtime = 60
|
||||
bantime = 3600
|
||||
|
||||
[fusionpbx-mac]
|
||||
enabled = true
|
||||
port = 80,443
|
||||
protocol = tcp
|
||||
filter = fusionpbx-mac
|
||||
logpath = /var/log/syslog
|
||||
action = iptables-allports[name=fusionpbx-mac, protocol=all]
|
||||
# sendmail-whois[name=fusionpbx-mac, dest=root, sender=fail2ban@example.org] #no smtp server installed
|
||||
maxretry = 10
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
|
||||
[nginx-404]
|
||||
enabled = true
|
||||
port = 80,443
|
||||
protocol = tcp
|
||||
filter = nginx-404
|
||||
logpath = /var/log/nginx/access*.log
|
||||
action = iptables-allports[name=nginx-404, protocol=all]
|
||||
bantime = 3600
|
||||
findtime = 60
|
||||
maxretry = 300
|
||||
|
||||
[nginx-dos]
|
||||
# Based on apache-badbots but a simple IP check (any IP requesting more than
|
||||
# 300 pages in 60 seconds, or 5p/s average, is suspicious)
|
||||
enabled = true
|
||||
port = 80,443
|
||||
protocol = tcp
|
||||
filter = nginx-dos
|
||||
logpath = /var/log/nginx/access*.log
|
||||
action = iptables-allports[name=nginx-dos, protocol=all]
|
||||
findtime = 60
|
||||
bantime = 86400
|
||||
maxretry = 800
|
||||
@@ -0,0 +1,439 @@
|
||||
<!-- http://wiki.freeswitch.org/wiki/Mod_conference -->
|
||||
<!-- None of these paths are real if you want any of these options you need to really set them up -->
|
||||
<configuration name="conference.conf" description="Audio Conference">
|
||||
<!-- Advertise certain presence on startup . -->
|
||||
<advertise>
|
||||
<!--<room name="3001@$${domain}" status="FreeSWITCH"/>-->
|
||||
</advertise>
|
||||
|
||||
<!-- These are the default keys that map when you do not specify a caller control group -->
|
||||
<!-- Note: none and default are reserved names for group names. Disabled if dist-dtmf member flag is set. -->
|
||||
<caller-controls>
|
||||
<group name="default">
|
||||
<control action="mute" digits=""/>
|
||||
<control action="deaf mute" digits=""/>
|
||||
<control action="energy up" digits="9"/>
|
||||
<control action="energy equ" digits="8"/>
|
||||
<control action="energy dn" digits="7"/>
|
||||
<control action="vol talk up" digits="3"/>
|
||||
<control action="vol talk zero" digits="2"/>
|
||||
<control action="vol talk dn" digits="1"/>
|
||||
<control action="vol listen up" digits="6"/>
|
||||
<control action="vol listen zero" digits="5"/>
|
||||
<control action="vol listen dn" digits="4"/>
|
||||
<control action="hangup" digits=""/>
|
||||
<control action="execute_application" digits="" data="lua app/conference_center/resources/scripts/raise_hand.lua true"/>
|
||||
<control action="execute_application" digits="" data="lua app/conference_center/resources/scripts/raise_hand.lua false"/>
|
||||
</group>
|
||||
<group name="moderator">
|
||||
<control action="mute" digits=""/>
|
||||
<control action="deaf mute" digits="*"/>
|
||||
<control action="energy up" digits="9"/>
|
||||
<control action="energy equ" digits="8"/>
|
||||
<control action="energy dn" digits="7"/>
|
||||
<control action="vol talk up" digits="3"/>
|
||||
<control action="vol talk zero" digits="2"/>
|
||||
<control action="vol talk dn" digits="1"/>
|
||||
<control action="vol listen up" digits="6"/>
|
||||
<control action="vol listen zero" digits="5"/>
|
||||
<control action="vol listen dn" digits="4"/>
|
||||
<control action="hangup" digits=""/>
|
||||
<control action="execute_application" digits="0" data="lua app/conference_center/resources/scripts/mute.lua non_moderator"/>
|
||||
<control action="execute_application" digits="*" data="lua app/conference_center/resources/scripts/unmute.lua non_moderator"/>
|
||||
</group>
|
||||
<group name="page">
|
||||
<control action="mute" digits="0"/>
|
||||
<control action="deaf mute" digits=""/>
|
||||
<control action="energy up" digits="9"/>
|
||||
<control action="energy equ" digits="8"/>
|
||||
<control action="energy dn" digits="7"/>
|
||||
<control action="vol talk up" digits="3"/>
|
||||
<control action="vol talk zero" digits="2"/>
|
||||
<control action="vol talk dn" digits="1"/>
|
||||
<control action="vol listen up" digits="6"/>
|
||||
<control action="vol listen zero" digits="5"/>
|
||||
<control action="vol listen dn" digits="4"/>
|
||||
<control action="hangup" digits=""/>
|
||||
</group>
|
||||
</caller-controls>
|
||||
|
||||
<!-- Profiles are collections of settings you can reference by name. -->
|
||||
<profiles>
|
||||
<!--If no profile is specified it will default to "default"-->
|
||||
<profile name="default">
|
||||
<!-- Directory to drop CDR's
|
||||
'auto' means $PREFIX/logs/conference_cdr/<conference_uuid>.cdr.xml
|
||||
a non-absolute path means $PREFIX/logs/<value>/<conference_uuid>.cdr.xml
|
||||
absolute path means <value>/<conference_uuid>.cdr.xml
|
||||
-->
|
||||
<param name="cdr-log-dir" value="auto"/>
|
||||
<!--<param name="conference-flags" value="wait-mod" />-->
|
||||
<!-- Domain (for presence) -->
|
||||
<param name="domain" value=""/>
|
||||
<!-- Sample Rate-->
|
||||
<param name="rate" value="8000"/>
|
||||
<!-- Number of milliseconds per frame -->
|
||||
<param name="interval" value="20"/>
|
||||
<!-- Energy level required for audio to be sent to the other users -->
|
||||
<param name="energy-level" value="15"/>
|
||||
<param name="auto-gain-level" value="0"/>
|
||||
|
||||
<!--Can be | delim of waste|mute|deaf|dist-dtmf waste will always transmit data to each channel
|
||||
even during silence. dist-dtmf propagates dtmfs to all other members, but channel controls
|
||||
via dtmf will be disabled. -->
|
||||
<!--<param name="member-flags" value="waste"/>-->
|
||||
|
||||
<!-- Name of the caller control group to use for this profile -->
|
||||
<param name="caller-controls" value="default"/>
|
||||
<!-- Name of the caller control group to use for the moderator in this profile -->
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<!-- TTS Engine to use -->
|
||||
<!--<param name="tts-engine" value="cepstral"/>-->
|
||||
<!-- TTS Voice to use -->
|
||||
<!--<param name="tts-voice" value="david"/>-->
|
||||
|
||||
<!-- If TTS is enabled all audio-file params beginning with -->
|
||||
<!-- 'say:' will be considered text to say with TTS -->
|
||||
<!-- Override the default path here, after which you use relative paths in the other sound params -->
|
||||
<!-- Note: The default path is the conference's first caller's sound_prefix -->
|
||||
<!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
|
||||
<!-- File to play to acknowledge succees -->
|
||||
<!--<param name="ack-sound" value="beep.wav"/>-->
|
||||
<!-- File to play to acknowledge failure -->
|
||||
<!--<param name="nack-sound" value="beeperr.wav"/>-->
|
||||
<!-- File to play to acknowledge muted -->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<!-- File to play to acknowledge unmuted -->
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<!-- File to play if you are alone in the conference -->
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<!-- File to play endlessly (nobody will ever be able to talk) -->
|
||||
<!--<param name="perpetual-sound" value="perpetual.wav"/>-->
|
||||
<!-- File to play when you're alone (music on hold)-->
|
||||
<param name="moh-sound" value="local_stream://default"/>
|
||||
<!-- File to play when you join the conference -->
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<!-- File to play when you leave the conference -->
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<!-- File to play when you ae ejected from the conference -->
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<!-- File to play when the conference is locked -->
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<!-- File to play when the conference is locked during the call-->
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<!-- File to play when the conference is unlocked during the call-->
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<!-- File to play to prompt for a pin -->
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<!-- File to play to when the pin is invalid -->
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<!-- Conference pin -->
|
||||
<!--<param name="pin" value="12345"/>-->
|
||||
<!--<param name="moderator-pin" value="54321"/>-->
|
||||
<!-- Max number of times the user can be prompted for PIN -->
|
||||
<!--<param name="pin-retries" value="3"/>-->
|
||||
<!-- Default Caller ID Name for outbound calls -->
|
||||
<param name="caller-id-name" value=""/>
|
||||
<!-- Default Caller ID Number for outbound calls -->
|
||||
<param name="caller-id-number" value=""/>
|
||||
<!-- Suppress start and stop talking events -->
|
||||
<!-- <param name="suppress-events" value="start-talking,stop-talking"/> -->
|
||||
<!-- enable comfort noise generation -->
|
||||
<param name="comfort-noise" value="true"/>
|
||||
<!-- Uncomment auto-record to toggle recording every conference call. -->
|
||||
<!-- Another valid value is shout://user:pass@server.com/live.mp3 -->
|
||||
<!--
|
||||
<param name="auto-record" value="$${recordings_dir}/${conference_name}_${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
|
||||
-->
|
||||
|
||||
<!-- IVR digit machine timeouts -->
|
||||
<!-- How much to wait between DTMF digits to match caller-controls -->
|
||||
<!-- <param name="ivr-dtmf-timeout" value="500"/> -->
|
||||
<!-- How much to wait for the first DTMF, 0 forever -->
|
||||
<!-- <param name="ivr-input-timeout" value="0" /> -->
|
||||
<!-- Delay before a conference is asked to be terminated -->
|
||||
<!-- <param name="endconf-grace-time" value="120" /> -->
|
||||
</profile>
|
||||
|
||||
<profile name="wait-mod">
|
||||
<param name="cdr-log-dir" value="auto"/>
|
||||
<param name="conference-flags" value="wait-mod" />
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="8000"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="15"/>
|
||||
<param name="auto-gain-level" value="0"/>
|
||||
<param name="caller-controls" value="default"/>
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="local_stream://default"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value=""/>
|
||||
<param name="caller-id-number" value=""/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
</profile>
|
||||
|
||||
<profile name="wideband">
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="16000"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="15"/>
|
||||
<param name="auto-gain-level" value="0"/>
|
||||
<param name="caller-controls" value="default"/>
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="local_stream://default"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value=""/>
|
||||
<param name="caller-id-number" value=""/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
<!--<param name="tts-engine" value="flite"/>-->
|
||||
<!--<param name="tts-voice" value="kal16"/>-->
|
||||
</profile>
|
||||
|
||||
<profile name="ultrawideband">
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="32000"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="15"/>
|
||||
<param name="auto-gain-level" value="0"/>
|
||||
<param name="caller-controls" value="default"/>
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="local_stream://default"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value=""/>
|
||||
<param name="caller-id-number" value=""/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
<!--<param name="tts-engine" value="flite"/>-->
|
||||
<!--<param name="tts-voice" value="kal16"/>-->
|
||||
</profile>
|
||||
|
||||
<profile name="cdquality">
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="48000"/>
|
||||
<param name="interval" value="10"/>
|
||||
<param name="energy-level" value="15"/>
|
||||
<param name="auto-gain-level" value="0"/>
|
||||
<param name="caller-controls" value="default"/>
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="local_stream://default"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value=""/>
|
||||
<param name="caller-id-number" value=""/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
</profile>
|
||||
|
||||
<profile name="video-mcu-stereo">
|
||||
<param name="domain" value="$${domain}"/>
|
||||
<param name="rate" value="48000"/>
|
||||
<param name="channels" value="2"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="200"/>
|
||||
<!-- <param name="tts-engine" value="flite"/> -->
|
||||
<!-- <param name="tts-voice" value="kal16"/> -->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="$${hold_music}"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value="$${outbound_caller_name}"/>
|
||||
<param name="caller-id-number" value="$${outbound_caller_id}"/>
|
||||
<param name="comfort-noise" value="false"/>
|
||||
<param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
|
||||
<param name="video-auto-floor-msec" value="1000"/>
|
||||
<param name="video-mode" value="mux"/>
|
||||
<param name="video-layout-name" value="3x3"/>
|
||||
<param name="video-layout-name" value="group:grid"/>
|
||||
<param name="video-canvas-size" value="1920x1080"/>
|
||||
<param name="video-canvas-bgcolor" value="#333333"/>
|
||||
<param name="video-layout-bgcolor" value="#000000"/>
|
||||
<param name="video-codec-bandwidth" value="3mb"/>
|
||||
<param name="video-fps" value="30"/>
|
||||
<!-- <param name="video-codec-config-profile-name" value="conference"/> -->
|
||||
</profile>
|
||||
|
||||
<profile name="video-mcu-stereo-720">
|
||||
<param name="domain" value="$${domain}"/>
|
||||
<param name="rate" value="48000"/>
|
||||
<param name="channels" value="2"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="200"/>
|
||||
<!-- <param name="tts-engine" value="flite"/> -->
|
||||
<!-- <param name="tts-voice" value="kal16"/> -->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="$${hold_music}"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value="$${outbound_caller_name}"/>
|
||||
<param name="caller-id-number" value="$${outbound_caller_id}"/>
|
||||
<param name="comfort-noise" value="false"/>
|
||||
<param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
|
||||
<param name="video-auto-floor-msec" value="1000"/>
|
||||
<param name="video-mode" value="mux"/>
|
||||
<param name="video-layout-name" value="3x3"/>
|
||||
<param name="video-layout-name" value="group:grid"/>
|
||||
<param name="video-canvas-size" value="1280x720"/>
|
||||
<param name="video-canvas-bgcolor" value="#333333"/>
|
||||
<param name="video-layout-bgcolor" value="#000000"/>
|
||||
<param name="video-codec-bandwidth" value="3mb"/>
|
||||
<param name="video-fps" value="30"/>
|
||||
</profile>
|
||||
|
||||
<profile name="video-mcu-stereo-480">
|
||||
<param name="domain" value="$${domain}"/>
|
||||
<param name="rate" value="48000"/>
|
||||
<param name="channels" value="2"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="200"/>
|
||||
<!-- <param name="tts-engine" value="flite"/> -->
|
||||
<!-- <param name="tts-voice" value="kal16"/> -->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="$${hold_music}"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value="$${outbound_caller_name}"/>
|
||||
<param name="caller-id-number" value="$${outbound_caller_id}"/>
|
||||
<param name="comfort-noise" value="false"/>
|
||||
<param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
|
||||
<param name="video-auto-floor-msec" value="1000"/>
|
||||
<param name="video-mode" value="mux"/>
|
||||
<param name="video-layout-name" value="3x3"/>
|
||||
<param name="video-layout-name" value="group:grid"/>
|
||||
<param name="video-canvas-size" value="640x480"/>
|
||||
<param name="video-canvas-bgcolor" value="#333333"/>
|
||||
<param name="video-layout-bgcolor" value="#000000"/>
|
||||
<param name="video-codec-bandwidth" value="3mb"/>
|
||||
<param name="video-fps" value="30"/>
|
||||
</profile>
|
||||
|
||||
<profile name="video-mcu-stereo-320">
|
||||
<param name="domain" value="$${domain}"/>
|
||||
<param name="rate" value="48000"/>
|
||||
<param name="channels" value="2"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="200"/>
|
||||
<!-- <param name="tts-engine" value="flite"/> -->
|
||||
<!-- <param name="tts-voice" value="kal16"/> -->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="alone-sound" value="conference/conf-alone.wav"/>
|
||||
<param name="moh-sound" value="$${hold_music}"/>
|
||||
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
|
||||
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="pin-sound" value="conference/conf-pin.wav"/>
|
||||
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
|
||||
<param name="caller-id-name" value="$${outbound_caller_name}"/>
|
||||
<param name="caller-id-number" value="$${outbound_caller_id}"/>
|
||||
<param name="comfort-noise" value="false"/>
|
||||
<param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
|
||||
<param name="video-auto-floor-msec" value="1000"/>
|
||||
<param name="video-mode" value="mux"/>
|
||||
<param name="video-layout-name" value="3x3"/>
|
||||
<param name="video-layout-name" value="group:grid"/>
|
||||
<param name="video-canvas-size" value="480x320"/>
|
||||
<param name="video-canvas-bgcolor" value="#333333"/>
|
||||
<param name="video-layout-bgcolor" value="#000000"/>
|
||||
<param name="video-codec-bandwidth" value="3mb"/>
|
||||
<param name="video-fps" value="30"/>
|
||||
</profile>
|
||||
|
||||
<profile name="sla">
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="16000"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="caller-controls" value="none"/>
|
||||
<param name="energy-level" value="200"/>
|
||||
<param name="moh-sound" value="silence"/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
</profile>
|
||||
|
||||
<profile name="page">
|
||||
<param name="domain" value=""/>
|
||||
<param name="rate" value="8000"/>
|
||||
<param name="interval" value="20"/>
|
||||
<param name="energy-level" value="300"/>
|
||||
<param name="caller-controls" value="page"/>
|
||||
<param name="moderator-controls" value="moderator"/>
|
||||
<!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
|
||||
<param name="muted-sound" value="conference/conf-muted.wav"/>
|
||||
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
|
||||
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
|
||||
<param name="locked-sound" value="conference/conf-locked.wav"/>
|
||||
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
|
||||
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/>
|
||||
<param name="caller-id-name" value=""/>
|
||||
<param name="caller-id-number" value=""/>
|
||||
<param name="comfort-noise" value="true"/>
|
||||
<param name="terminate-on-silence" value="30"/>
|
||||
</profile>
|
||||
|
||||
</profiles>
|
||||
</configuration>
|
||||
@@ -0,0 +1,9 @@
|
||||
<configuration name="event_socket.conf" description="Socket Client">
|
||||
<settings>
|
||||
<param name="nat-map" value="false"/>
|
||||
<param name="listen-ip" value="127.0.0.1"/>
|
||||
<param name="listen-port" value="8021"/>
|
||||
<param name="password" value="ClueCon"/>
|
||||
<!--<param name="apply-inbound-acl" value="lan"/>-->
|
||||
</settings>
|
||||
</configuration>
|
||||
@@ -0,0 +1,29 @@
|
||||
<configuration name="logfile.conf" description="File Logging">
|
||||
<settings>
|
||||
<!-- true to auto rotate on HUP, false to open/close -->
|
||||
<param name="rotate-on-hup" value="true"/>
|
||||
</settings>
|
||||
<profiles>
|
||||
<profile name="default">
|
||||
<settings>
|
||||
<!-- File to log to -->
|
||||
<!--<param name="logfile" value="/var/log/freeswitch.log"/>-->
|
||||
<!-- At this length in bytes rotate the log file (0 for never) -->
|
||||
<param name="rollover" value="10485760"/>
|
||||
<!-- Maximum number of log files to keep before wrapping -->
|
||||
<!-- If this parameter is enabled, the log filenames will not include a date stamp -->
|
||||
<param name="maximum-rotate" value="10"/>
|
||||
<!-- Uncomment to prefix all log lines by the session's uuid -->
|
||||
<param name="uuid" value="true" />
|
||||
</settings>
|
||||
<mappings>
|
||||
<!--
|
||||
name can be a file name, function name or 'all'
|
||||
value is one or more of debug,info,notice,warning,err,crit,alert,all
|
||||
Please see comments in console.conf.xml for more information
|
||||
-->
|
||||
<map name="all" value="debug,info,notice,warning,err,crit,alert"/>
|
||||
</mappings>
|
||||
</profile>
|
||||
</profiles>
|
||||
</configuration>
|
||||
@@ -0,0 +1,65 @@
|
||||
<configuration name="lua.conf" description="LUA Configuration">
|
||||
<settings>
|
||||
|
||||
<!--
|
||||
Specify local directories that will be searched for LUA modules
|
||||
These entries will be pre-pended to the LUA_CPATH environment variable
|
||||
-->
|
||||
<!--
|
||||
<param name="module-directory" value="/usr/local/lib/lua/5.2/?.so"/>
|
||||
<param name="module-directory" value="/usr/local/lib/lua/5.2/?"/>
|
||||
<param name="module-directory" value="/usr/lib/x86_64-linux-gnu/lua/5.2/?.so"/>
|
||||
-->
|
||||
|
||||
<!--
|
||||
Specify local directories that will be searched for LUA scripts
|
||||
These entries will be pre-pended to the LUA_PATH environment variable
|
||||
-->
|
||||
<!-- <param name="script-directory" value="/usr/local/lua/?.lua"/> -->
|
||||
<param name="script-directory" value="$${script_dir}/?.lua"/>
|
||||
|
||||
<!--
|
||||
Deliver XML from lua with the XML Handler
|
||||
-->
|
||||
<param name="xml-handler-script" value="app.lua xml_handler"/>
|
||||
<param name="xml-handler-bindings" value="configuration,dialplan,directory,languages"/>
|
||||
|
||||
<!--
|
||||
The following options identifies a lua script that is launched
|
||||
at startup and may live forever in the background.
|
||||
You can define multiple lines, one for each script you
|
||||
need to run.
|
||||
-->
|
||||
|
||||
<!-- FusionPBX: Support BLF for call flow -->
|
||||
<!-- There 2 way to handle this
|
||||
1 - Monitor - ignore SUBSCRIBE and just send NOTIFY each X seconds
|
||||
2 - Event handler - handle each SUBSCRIBE request
|
||||
-->
|
||||
<!--<param name="startup-script" value="call_flow_monitor.lua"/>-->
|
||||
<!--<param name="startup-script" value="blf_subscribe.lua flow"/>-->
|
||||
|
||||
<!-- FusionPBX: Support BLF for DND -->
|
||||
<!--<param name="startup-script" value="blf_subscribe.lua dnd"/>-->
|
||||
|
||||
<!-- FusionPBX: Support BLF for Call Forward -->
|
||||
<!--<param name="startup-script" value="blf_subscribe.lua forward"/>-->
|
||||
|
||||
<!-- FusionPBX: Support BLF for Call Center Agents -->
|
||||
<!--<param name="startup-script" value="blf_subscribe.lua agent"/>-->
|
||||
|
||||
<!-- FusionPBX: Support BLF for Voicemail -->
|
||||
<!--<param name="startup-script" value="blf_subscribe.lua voicemail"/>-->
|
||||
|
||||
<!-- FusionPBX: Support MWI indicator-->
|
||||
<!-- There 2 way to handle this
|
||||
1 - Monitor - ignore SUBSCRIBE and just send NOTIFY each X seconds
|
||||
2 - Event handler - handle each SUBSCRIBE request
|
||||
-->
|
||||
<!--<param name="startup-script" value="app/voicemail/resources/scripts/mwi.lua"/>-->
|
||||
<!--<param name="startup-script" value="app/voicemail/resources/scripts/mwi_subscribe.lua"/>-->
|
||||
|
||||
<!-- Subscribe to events -->
|
||||
<!--<hook event="PHONE_FEATURE_SUBSCRIBE" subclass="" script="app.lua feature_event"/>-->
|
||||
</settings>
|
||||
</configuration>
|
||||
@@ -0,0 +1,78 @@
|
||||
<configuration name="modules.conf" description="Modules">
|
||||
<modules>
|
||||
|
||||
<!-- Applications -->
|
||||
<load module="mod_commands"/>
|
||||
|
||||
<!-- Languages -->
|
||||
<load module="mod_lua"/>
|
||||
|
||||
<!-- Endpoints -->
|
||||
<load module="mod_sofia"/>
|
||||
|
||||
<!-- Loggers -->
|
||||
<load module="mod_logfile"/>
|
||||
<load module="mod_syslog"/>
|
||||
<load module="mod_console"/>
|
||||
|
||||
<!-- Applications -->
|
||||
<load module="mod_curl"/>
|
||||
<load module="mod_valet_parking"/>
|
||||
<load module="mod_conference"/>
|
||||
<load module="mod_enum"/>
|
||||
<load module="mod_rtc"/>
|
||||
<load module="mod_sms"/>
|
||||
<load module="mod_fsv"/>
|
||||
<load module="mod_esf"/>
|
||||
<load module="mod_hash"/>
|
||||
<load module="mod_expr"/>
|
||||
<load module="mod_spandsp"/>
|
||||
<load module="mod_callcenter"/>
|
||||
<load module="mod_dptools"/>
|
||||
<load module="mod_av"/>
|
||||
<load module="mod_db"/>
|
||||
<load module="mod_fifo"/>
|
||||
|
||||
<!-- Codecs -->
|
||||
<load module="mod_b64"/>
|
||||
<load module="mod_g723_1"/>
|
||||
<load module="mod_g729"/>
|
||||
<load module="mod_amr"/>
|
||||
|
||||
<!-- Databases -->
|
||||
<load module="mod_pgsql"/>
|
||||
|
||||
<!-- Dialplan Interfaces -->
|
||||
<load module="mod_dialplan_xml"/>
|
||||
|
||||
<!-- Endpoints -->
|
||||
<load module="mod_loopback"/>
|
||||
|
||||
<!-- Event Handlers -->
|
||||
<load module="mod_event_socket"/>
|
||||
|
||||
<!-- File Format Interfaces -->
|
||||
<load module="mod_sndfile"/>
|
||||
<load module="mod_native_file"/>
|
||||
|
||||
<!-- Formats -->
|
||||
<load module="mod_png"/>
|
||||
|
||||
<!-- Say -->
|
||||
<load module="mod_say_es_ar"/>
|
||||
<load module="mod_say_en"/>
|
||||
<load module="mod_say_fr"/>
|
||||
<load module="mod_say_es"/>
|
||||
|
||||
<!-- Streams / Files -->
|
||||
<load module="mod_shout"/>
|
||||
<load module="mod_tone_stream"/>
|
||||
<load module="mod_local_stream"/>
|
||||
|
||||
<!-- XML Interfaces -->
|
||||
<load module="mod_xml_cdr"/>
|
||||
|
||||
<load module="mod_signalwire"/>
|
||||
|
||||
</modules>
|
||||
</configuration>
|
||||
@@ -0,0 +1,19 @@
|
||||
<configuration name="sofia.conf" description="sofia Endpoint">
|
||||
|
||||
<global_settings>
|
||||
<param name="log-level" value="0"/>
|
||||
<!-- <param name="auto-restart" value="false"/> -->
|
||||
<param name="debug-presence" value="0"/>
|
||||
<!-- <param name="capture-server" value="udp:homer.domain.com:5060"/> -->
|
||||
</global_settings>
|
||||
|
||||
<!--
|
||||
The rabbit hole goes deep. This includes all the
|
||||
profiles in the sip_profiles directory that is up
|
||||
one level from this directory.
|
||||
-->
|
||||
<profiles>
|
||||
<X-PRE-PROCESS cmd="include" data="../sip_profiles/*.xml"/>
|
||||
</profiles>
|
||||
|
||||
</configuration>
|
||||
@@ -0,0 +1,170 @@
|
||||
<configuration name="switch.conf" description="Core Configuration">
|
||||
|
||||
<cli-keybindings>
|
||||
<key name="1" value="help"/>
|
||||
<key name="2" value="status"/>
|
||||
<key name="3" value="show channels"/>
|
||||
<key name="4" value="show calls"/>
|
||||
<key name="5" value="sofia status"/>
|
||||
<key name="6" value="reloadxml"/>
|
||||
<key name="7" value="console loglevel 0"/>
|
||||
<key name="8" value="console loglevel 7"/>
|
||||
<key name="9" value="sofia status profile internal"/>
|
||||
<key name="10" value="sofia profile internal siptrace on"/>
|
||||
<key name="11" value="sofia profile internal siptrace off"/>
|
||||
<key name="12" value="version"/>
|
||||
</cli-keybindings>
|
||||
|
||||
<default-ptimes>
|
||||
<!-- Set this to override the 20ms assumption of various codecs in the sdp with no ptime defined -->
|
||||
<!-- <codec name="G729" ptime="40"/> -->
|
||||
</default-ptimes>
|
||||
|
||||
<settings>
|
||||
<!-- Colorize the Console -->
|
||||
<param name="colorize-console" value="true"/>
|
||||
|
||||
<!-- Run the timer at 20ms by default and drop down as needed unless you set 1m-timer=true which was previous default -->
|
||||
<!-- <param name="1ms-timer" value="true"/> -->
|
||||
|
||||
<!--
|
||||
Set the Switch Name for HA environments.
|
||||
When setting the switch name, it will override the system hostname for all DB and CURL requests
|
||||
allowing cluster environments such as RHCS to have identical FreeSWITCH configurations but run
|
||||
as different hostnames.
|
||||
-->
|
||||
<!-- <param name="switchname" value="freeswitch"/> -->
|
||||
|
||||
<!-- Maximum number of simultaneous DB handles open -->
|
||||
<param name="max-db-handles" value="50"/>
|
||||
<!-- Maximum number of seconds to wait for a new DB handle before failing -->
|
||||
<param name="db-handle-timeout" value="10"/>
|
||||
|
||||
<!-- Minimum idle CPU before refusing calls -->
|
||||
<!-- <param name="min-idle-cpu" value="25"/> -->
|
||||
|
||||
<!--
|
||||
Max number of sessions to allow at any given time.
|
||||
|
||||
NOTICE: If you're driving 28 T1's in a single box you should set this to 644*2 or 1288
|
||||
this will ensure you're able to use the entire DS3 without a problem. Otherwise you'll
|
||||
be 144 channels short of always filling that DS3 up which can translate into waste.
|
||||
-->
|
||||
<param name="max-sessions" value="1000"/>
|
||||
<!--Most channels to create per second -->
|
||||
<param name="sessions-per-second" value="30"/>
|
||||
<!-- Default Global Log Level - value is one of debug,info,notice,warning,err,crit,alert -->
|
||||
<param name="loglevel" value="debug"/>
|
||||
|
||||
<!-- Set the core DEBUG level (0-10) -->
|
||||
<!-- <param name="debug-level" value="10"/> -->
|
||||
|
||||
<!-- SQL Buffer length within rage of 32k to 10m -->
|
||||
<!-- <param name="sql-buffer-len" value="1m"/> -->
|
||||
<!-- Maximum SQL Buffer length must be greater than sql-buffer-len -->
|
||||
<!-- <param name="max-sql-buffer-len" value="2m"/> -->
|
||||
|
||||
<!--
|
||||
The min-dtmf-duration specifies the minimum DTMF duration to use on
|
||||
outgoing events. Events shorter than this will be increased in duration
|
||||
to match min_dtmf_duration. You cannot configure a dtmf duration on a
|
||||
profile that is less than this setting. You may increase this value,
|
||||
but cannot set it lower than 400. This value cannot exceed
|
||||
max-dtmf-duration. -->
|
||||
<param name="min-dtmf-duration" value="640"/>
|
||||
|
||||
<!--
|
||||
The max-dtmf-duration caps the playout of a DTMF event at the specified
|
||||
duration. Events exceeding this duration will be truncated to this
|
||||
duration. You cannot configure a duration on a profile that exceeds
|
||||
this setting. This setting can be lowered, but cannot exceed 192000.
|
||||
This setting cannot be set lower than min_dtmf_duration. -->
|
||||
<!-- <param name="max-dtmf-duration" value="192000"/> -->
|
||||
|
||||
<!--
|
||||
The default_dtmf_duration specifies the DTMF duration to use on
|
||||
originated DTMF events or on events that are received without a
|
||||
duration specified. This value can be increased or lowered. This
|
||||
value is lower-bounded by min_dtmf_duration and upper-bounded by
|
||||
max-dtmf-duration\. -->
|
||||
<!-- <param name="default-dtmf-duration" value="2000"/> -->
|
||||
|
||||
<!--
|
||||
If you want to send out voicemail notifications via Windows you'll need to change the mailer-app
|
||||
variable to the setting below:
|
||||
|
||||
<param name="mailer-app" value="msmtp"/>
|
||||
|
||||
Do not change mailer-app-args.
|
||||
You will also need to download a sendmail clone for Windows (msmtp). This version works without issue:
|
||||
http://msmtp.sourceforge.net/index.html. Download and copy the .exe to %winddir%\system32.
|
||||
You'll need to create a small config file for smtp credentials (host name, authentication, tls, etc.) in
|
||||
%USERPROFILE%\Application Data\ called "msmtprc.txt". Below is a sample copy of this file:
|
||||
|
||||
###################################
|
||||
# The SMTP server of the provider.
|
||||
account provider
|
||||
host smtp.myisp.com
|
||||
from john@myisp.com
|
||||
auth login
|
||||
user johndoe
|
||||
password mypassword
|
||||
|
||||
# Set a default account
|
||||
account default : provider
|
||||
###################################
|
||||
-->
|
||||
<!--<param name="mailer-app" value="sendmail"/>-->
|
||||
<!--<param name="mailer-app-args" value="-t"/>-->
|
||||
<param name="mailer-app" value="/usr/bin/php /var/www/fusionpbx/secure/v_mailto.php"/>
|
||||
<param name="mailer-app-args" value="-t"/>
|
||||
<param name="dump-cores" value="yes"/>
|
||||
<!-- Enable verbose channel events to include every detail about a channel on every event -->
|
||||
<!-- <param name="verbose-channel-events" value="no"/> -->
|
||||
|
||||
<!-- Enable clock nanosleep -->
|
||||
<!-- <param name="enable-clock-nanosleep" value="true"/> -->
|
||||
|
||||
<!-- Enable monotonic timing -->
|
||||
<!-- <param name="enable-monotonic-timing" value="true"/> -->
|
||||
|
||||
<!-- NEEDS DOCUMENTATION -->
|
||||
<!-- <param name="enable-softtimer-timerfd" value="true"/> -->
|
||||
<!-- <param name="enable-cond-yield" value="true"/> -->
|
||||
<!-- <param name="enable-timer-matrix" value="true"/> -->
|
||||
<!-- <param name="threaded-system-exec" value="true"/> -->
|
||||
<!-- <param name="tipping-point" value="0"/> -->
|
||||
<!-- <param name="timer-affinity" value="disabled"/> -->
|
||||
<!-- NEEDS DOCUMENTATION -->
|
||||
|
||||
<!-- RTP port range -->
|
||||
<!-- <param name="rtp-start-port" value="16384"/> -->
|
||||
<!-- <param name="rtp-end-port" value="32768"/> -->
|
||||
|
||||
<!-- <param name="rtp-enable-zrtp" value="true"/> -->
|
||||
|
||||
<!-- <param name="core-db-dsn" value="$${dsn}" /> -->
|
||||
<!--
|
||||
Allow to specify the sqlite db at a different location (In this example, move it to ramdrive for
|
||||
better performance on most linux distro (note, you loose the data if you reboot))
|
||||
-->
|
||||
<!-- <param name="core-db-name" value="/dev/shm/core.db" /> -->
|
||||
|
||||
<!-- The system will create all the db schemas automatically, set this to false to avoid this behaviour -->
|
||||
<param name="auto-create-schemas" value="true"/>
|
||||
<!-- <param name="auto-clear-sql" value="true"/> -->
|
||||
<!-- <param name="enable-early-hangup" value="true"/> -->
|
||||
|
||||
<!-- <param name="core-dbtype" value="MSSQL"/> -->
|
||||
|
||||
<!-- Allow multiple registrations to the same account in the central registration table -->
|
||||
<!-- <param name="multiple-registrations" value="true"/> -->
|
||||
|
||||
<!-- Event handler uses event queue when set to true. False uses a threaded solution. -->
|
||||
<param name="events-use-dispatch" value="false"/>
|
||||
|
||||
<!-- SWITCH default is 1. Use this number of thread on startup. -->
|
||||
<param name="initial-event-threads" value="8"/>
|
||||
</settings>
|
||||
|
||||
</configuration>
|
||||
@@ -0,0 +1,21 @@
|
||||
[default]
|
||||
|
||||
; Things you're used to....
|
||||
exten => music,n,Dial(SIP/1234@conference.freeswitch.org|120)
|
||||
|
||||
exten => _1XXXXX,n,set(cool=${EXTEN})
|
||||
exten => _1XXXXX,n,set(myvar=true)
|
||||
exten => _1XXXXX,n,Goto(default|music)
|
||||
exten => 2137991400/1000,n,Goto(default|music)
|
||||
|
||||
|
||||
; Some new magic you can do....
|
||||
exten => ~^(18(0{2}|8{2}|7{2}|6{2})\d{7})$,n,enum($1)
|
||||
exten => ~^(18(0{2}|8{2}|7{2}|6{2})\d{7})$,n,bridge(${enum_auto_route})
|
||||
|
||||
; instead of exten, put anything about the call you would rather match on.
|
||||
; either the names of a field in caller_profile or a string of variables to expand.
|
||||
caller_id_number => 2137991400,n,Goto(default|music)
|
||||
${sip_from_user} => bill,n,Goto(default|music)
|
||||
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE
|
||||
|
||||
This is the FreeSWITCH default config. Everything you see before you now traverses
|
||||
down into all the directories including files which include more files. The default
|
||||
config comes out of the box already working in most situations as a PBX. This will
|
||||
allow you to get started testing and playing with various things in FreeSWITCH.
|
||||
|
||||
Before you start to modify this default please visit this wiki page:
|
||||
|
||||
http://wiki.freeswitch.org/wiki/Getting_Started_Guide#Some_stuff_to_try_out.21
|
||||
|
||||
If all else fails you can read our FAQ located at:
|
||||
|
||||
http://wiki.freeswitch.org/wiki/FreeSwitch_FAQ
|
||||
|
||||
NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE
|
||||
-->
|
||||
<document type="freeswitch/xml">
|
||||
<!--#comment
|
||||
All comments starting with #command will be preprocessed and never sent to the xml parser
|
||||
Valid instructions:
|
||||
#include ==> Include another file to this exact point
|
||||
(partial xml should be encased in <include></include> tags)
|
||||
#set ==> Set a global variable (can be expanded during preprocessing with $$ variables)
|
||||
(note the double $$ which denotes preprocessor variables)
|
||||
#comment ==> A general comment such as this
|
||||
|
||||
The preprocessor will compile the full xml document to ${prefix}/log/freeswitch.xml.fsxml
|
||||
Don't modify it while freeswitch is running cos it is mem mapped in most cases =D
|
||||
|
||||
The same can be achieved with the <X-PRE-PROCESS> tag where the attrs 'cmd' and 'data' are
|
||||
parsed in the same way.
|
||||
-->
|
||||
<!--#comment
|
||||
vars.xml contains all the #set directives for the preprocessor.
|
||||
-->
|
||||
<X-PRE-PROCESS cmd="include" data="vars.xml"/>
|
||||
|
||||
<section name="configuration" description="Various Configuration">
|
||||
<X-PRE-PROCESS cmd="include" data="autoload_configs/*.xml"/>
|
||||
</section>
|
||||
|
||||
<section name="dialplan" description="Regex/XML Dialplan">
|
||||
<X-PRE-PROCESS cmd="include" data="dialplan/*.xml"/>
|
||||
</section>
|
||||
|
||||
<section name="chatplan" description="Regex/XML Chatplan">
|
||||
<X-PRE-PROCESS cmd="include" data="chatplan/*.xml"/>
|
||||
</section>
|
||||
|
||||
<!-- mod_dingaling is reliant on the vcard data in the "directory" section. -->
|
||||
<!-- mod_sofia is reliant on the user data for authorization -->
|
||||
<section name="directory" description="User Directory">
|
||||
<X-PRE-PROCESS cmd="include" data="directory/*.xml"/>
|
||||
</section>
|
||||
|
||||
<!-- languages section -->
|
||||
<section name="languages" description="Language Management">
|
||||
<X-PRE-PROCESS cmd="include" data="languages/de/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/el/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/en/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/es/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/fr/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/he/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/pt/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="languages/ru/*.xml"/>
|
||||
</section>
|
||||
</document>
|
||||
@@ -0,0 +1,91 @@
|
||||
|
||||
<!-- Codecs -->
|
||||
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G7221@16000h,G722,PCMU,PCMA" />
|
||||
<X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA" />
|
||||
<X-PRE-PROCESS cmd="set" data="media_mix_inbound_outbound_codecs=true" />
|
||||
|
||||
<!-- Defaults -->
|
||||
<X-PRE-PROCESS cmd="set" data="call_debug=false" />
|
||||
<X-PRE-PROCESS cmd="set" data="console_loglevel=info" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_areacode=208" />
|
||||
<X-PRE-PROCESS cmd="set" data="sit=%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)" />
|
||||
<X-PRE-PROCESS cmd="set" data="use_profile=internal" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_language=en" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_dialect=us" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_voice=callie" />
|
||||
<X-PRE-PROCESS cmd="set" data="record_ext=wav" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_country=US" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_countrycode=1" />
|
||||
<X-PRE-PROCESS cmd="set" data="default_exitcode=011" />
|
||||
|
||||
<!-- IP Address -->
|
||||
<X-PRE-PROCESS cmd="set" data="external_sip_ip=134.209.72.226" />
|
||||
<X-PRE-PROCESS cmd="set" data="external_rtp_ip=134.209.72.226" />
|
||||
|
||||
<!-- Music on Hold -->
|
||||
<X-PRE-PROCESS cmd="set" data="hold_music=local_stream://default" />
|
||||
|
||||
<!-- Ringtones -->
|
||||
<X-PRE-PROCESS cmd="set" data="pl-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="fr-ring=%(1500,3500,440)" />
|
||||
<X-PRE-PROCESS cmd="set" data="pt-ring=%(1000,5000,400)" />
|
||||
<X-PRE-PROCESS cmd="set" data="hk-ring=%(400,200,440,480);%(400,3000,440,480)" />
|
||||
<X-PRE-PROCESS cmd="set" data="hu-ring=%(1250,3750,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="il-ring=%(1000,3000,400)" />
|
||||
<X-PRE-PROCESS cmd="set" data="in-ring=%(400,200,425,375);%(400,2000,425,375)" />
|
||||
<X-PRE-PROCESS cmd="set" data="jp-ring=%(1000,2000,420,380)" />
|
||||
<X-PRE-PROCESS cmd="set" data="ko-ring=%(1000,2000,440,480)" />
|
||||
<X-PRE-PROCESS cmd="set" data="pk-ring=%(1000,2000,400)" />
|
||||
<X-PRE-PROCESS cmd="set" data="ro-ring=%(1850,4150,475,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="rs-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="it-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="ru-ring=%(800,3200,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="sa-ring=%(1200,4600,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="tr-ring=%(2000,4000,450)" />
|
||||
<X-PRE-PROCESS cmd="set" data="uk-ring=%(400,200,400,450);%(400,2000,400,450)" />
|
||||
<X-PRE-PROCESS cmd="set" data="us-ring=%(2000,4000,440,480)" />
|
||||
<X-PRE-PROCESS cmd="set" data="bong-ring=v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1400,0,350,440)" />
|
||||
<X-PRE-PROCESS cmd="set" data="au-ring=%(400,200,383,417);%(400,2000,383,417)" />
|
||||
<X-PRE-PROCESS cmd="set" data="be-ring=%(1000,3000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="ca-ring=%(2000,4000,440,480)" />
|
||||
<X-PRE-PROCESS cmd="set" data="cn-ring=%(1000,4000,450)" />
|
||||
<X-PRE-PROCESS cmd="set" data="cy-ring=%(1500,3000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="cz-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="de-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="dk-ring=%(1000,4000,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="dz-ring=%(1500,3500,425)" />
|
||||
<X-PRE-PROCESS cmd="set" data="eg-ring=%(2000,1000,475,375)" />
|
||||
<X-PRE-PROCESS cmd="set" data="fi-ring=%(1000,4000,425)" />
|
||||
|
||||
<!-- Security -->
|
||||
<X-PRE-PROCESS cmd="set" data="disable_system_api_commands=true" />
|
||||
<X-PRE-PROCESS cmd="set" data="disable_system_app_commands=true" />
|
||||
|
||||
<!-- SIP -->
|
||||
<X-PRE-PROCESS cmd="set" data="sip_tls_version=tlsv1,tlsv1.1,tlsv1.2" />
|
||||
<X-PRE-PROCESS cmd="set" data="unroll_loops=true" />
|
||||
|
||||
<!-- SIP Profile: External -->
|
||||
<X-PRE-PROCESS cmd="set" data="external_ssl_enable=false" />
|
||||
<X-PRE-PROCESS cmd="set" data="external_ssl_dir=$${conf_dir}/tls" />
|
||||
|
||||
<!-- SIP Profile: Internal -->
|
||||
<X-PRE-PROCESS cmd="set" data="internal_ssl_dir=$${conf_dir}/tls" />
|
||||
<X-PRE-PROCESS cmd="set" data="internal_ssl_enable=false" />
|
||||
|
||||
<!-- Sound -->
|
||||
<X-PRE-PROCESS cmd="set" data="sound_prefix=$${sounds_dir}/en/us/callie" />
|
||||
|
||||
<!-- Tones -->
|
||||
<X-PRE-PROCESS cmd="set" data="vacant-uk-tone=%(330,15,950);%(330,15,1400);%(330,1000,1800)" />
|
||||
<X-PRE-PROCESS cmd="set" data="busy-us-tone=%(500,500,480,620)" />
|
||||
<X-PRE-PROCESS cmd="set" data="busy-us-tone-3x=%(500,500,480,620);%(500,500,480,620);%(500,500,480,620)" />
|
||||
<X-PRE-PROCESS cmd="set" data="busy-au-tone=v=-13;%(375,375,420);v=-23;%(375,375,420)" />
|
||||
<X-PRE-PROCESS cmd="set" data="bong-us-tone=v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1400,0,350,440)" />
|
||||
<X-PRE-PROCESS cmd="set" data="vacant-us-tone=%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)" />
|
||||
|
||||
<!-- XMPP -->
|
||||
<X-PRE-PROCESS cmd="set" data="xmpp_server_profile=xmpps" />
|
||||
<X-PRE-PROCESS cmd="set" data="bind_server_ip=auto" />
|
||||
<X-PRE-PROCESS cmd="set" data="xmpp_client_profile=xmppc" />
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# This file is generated from information provided by the datasource. Changes
|
||||
# to it will not persist across an instance reboot. To disable cloud-init's
|
||||
# network configuration capabilities, write a file
|
||||
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
|
||||
# network: {config: disabled}
|
||||
network:
|
||||
version: 2
|
||||
ethernets:
|
||||
eth0:
|
||||
accept-ra: false
|
||||
addresses:
|
||||
- 2604:A880:0400:00D1:0000:0004:7377:4001/64
|
||||
- 134.209.72.226/20
|
||||
- 10.10.0.5/16
|
||||
match:
|
||||
macaddress: fa:01:e4:87:a2:9b
|
||||
mtu: 1500
|
||||
nameservers:
|
||||
addresses:
|
||||
- 67.207.67.2
|
||||
- 67.207.67.3
|
||||
search: []
|
||||
routes:
|
||||
- to: ::/0
|
||||
via: 2604:A880:0400:00D1:0000:0000:0000:0001
|
||||
- to: 0.0.0.0/0
|
||||
via: 134.209.64.1
|
||||
set-name: eth0
|
||||
eth1:
|
||||
addresses:
|
||||
- 10.116.0.3/20
|
||||
match:
|
||||
macaddress: 32:a5:04:32:aa:0b
|
||||
mtu: 1500
|
||||
nameservers:
|
||||
addresses:
|
||||
- 67.207.67.2
|
||||
- 67.207.67.3
|
||||
search: []
|
||||
set-name: eth1
|
||||
@@ -0,0 +1 @@
|
||||
fusion
|
||||
@@ -0,0 +1,15 @@
|
||||
# Your system has configured 'manage_etc_hosts' as True.
|
||||
# As a result, if you wish for changes to this file to persist
|
||||
# then you will need to either
|
||||
# a.) make changes to the master file in /etc/cloud/templates/hosts.debian.tmpl
|
||||
# b.) change or remove the value of 'manage_etc_hosts' in
|
||||
# /etc/cloud/cloud.cfg or cloud-config from user-data
|
||||
#
|
||||
127.0.0.1 localhost
|
||||
127.0.1.1 fusion.orbishosting.com
|
||||
|
||||
# The following lines are desirable for IPv6 capable hosts
|
||||
::1 localhost ip6-localhost ip6-loopback
|
||||
ff02::1 ip6-allnodes
|
||||
ff02::2 ip6-allrouters
|
||||
|
||||
Executable
+341
@@ -0,0 +1,341 @@
|
||||
|
||||
server {
|
||||
listen 127.0.0.1:80;
|
||||
server_name 127.0.0.1;
|
||||
access_log /var/log/nginx/access.log;
|
||||
error_log /var/log/nginx/error.log;
|
||||
|
||||
client_max_body_size 80M;
|
||||
client_body_buffer_size 128k;
|
||||
|
||||
location / {
|
||||
root /var/www/fusionpbx;
|
||||
index index.php;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Allow the upgrade routines to run longer than normal
|
||||
location = /core/upgrade/index.php {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_read_timeout 15m;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Disable viewing .htaccess & .htpassword & .db & .git
|
||||
location ~ .htaccess {
|
||||
deny all;
|
||||
}
|
||||
location ~ .htpassword {
|
||||
deny all;
|
||||
}
|
||||
location ~^.+.(db)$ {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.git {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.lua {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\. {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
if ($host = fusion.orbishosting.com) {
|
||||
return 301 https://$host$request_uri;
|
||||
} # managed by Certbot
|
||||
|
||||
|
||||
listen [::]:80;
|
||||
listen 80;
|
||||
server_name fusion.orbishosting.com 134.209.72.226;
|
||||
|
||||
#redirect letsencrypt to dehydrated
|
||||
location ^~ /.well-known/acme-challenge {
|
||||
default_type "text/plain";
|
||||
auth_basic "off";
|
||||
alias /var/www/dehydrated;
|
||||
}
|
||||
|
||||
#rewrite rule - send to https with an exception for provisioning
|
||||
if ($uri !~* ^.*(provision|xml_cdr|firmware).*$) {
|
||||
rewrite ^(.*) https://$host$1 permanent;
|
||||
break;
|
||||
}
|
||||
|
||||
#REST api
|
||||
if ($uri ~* ^.*/api/.*$) {
|
||||
rewrite ^(.*)/api/(.*)$ $1/api/index.php?rewrite_uri=$2 last;
|
||||
break;
|
||||
}
|
||||
|
||||
#algo
|
||||
rewrite "^.*/provision/algom([A-Fa-f0-9]{12})\.conf" /app/provision/?mac=$1&file=algom%7b%24mac%7d.conf last;
|
||||
|
||||
#avaya
|
||||
rewrite "^.*/provision/J100Supgrade.txt" /resources/templates/provision/avaya/J100Supgrade.txt last;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12}).txt?$" /app/provision/index.php?mac=$1 last;
|
||||
|
||||
#mitel
|
||||
rewrite "^.*/provision/MN_([A-Fa-f0-9]{12})\.cfg" /app/provision/index.php?mac=$1&file=MN_%7b%24mac%7d.cfg last;
|
||||
rewrite "^.*/provision/MN_Generic.cfg" /app/provision/index.php?mac=08000f000000&file=MN_Generic.cfg last;
|
||||
|
||||
#grandstream
|
||||
rewrite "^.*/provision/cfg([A-Fa-f0-9]{12})(\.(xml|cfg))?$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})/phonebook\.xml$" /app/provision/?mac=$1&file=phonebook.xml;
|
||||
rewrite "^.*/provision/(phonebook\.xml)?$" /app/provision/index.php?file=$1 last;
|
||||
rewrite "^.*/provision/phonebook.xml$" /app/provision/?mac=$1&file=phonebook.xml;
|
||||
|
||||
#aastra
|
||||
rewrite "^.*/provision/aastra.cfg$" /app/provision/?mac=$1&file=aastra.cfg;
|
||||
#rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.(cfg))?$" /app/provision/?mac=$1 last;
|
||||
|
||||
#yealink
|
||||
rewrite "^.*/provision/(y[0-9]{12})(\.cfg|\.boot)?$" /app/provision/index.php?file=$1$2;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.boot)$" /app/provision/index.php?mac=$1&file=%7b%24mac%7d.boot;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.(xml|cfg))?$" /app/provision/index.php?mac=$1 last;
|
||||
|
||||
#polycom
|
||||
rewrite "^.*/provision/000000000000.cfg$" "/app/provision/?mac=$1&file={%24mac}.cfg";
|
||||
#rewrite "^.*/provision/sip_330(\.(ld))$" /includes/firmware/sip_330.$2;
|
||||
rewrite "^.*/provision/features.cfg$" /app/provision/?mac=$1&file=features.cfg;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-sip.cfg$" /app/provision/?mac=$1&file=sip.cfg;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-phone.cfg$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-registration.cfg$" "/app/provision/?mac=$1&file={%24mac}-registration.cfg";
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-directory.xml$" "/app/provision/?mac=$1&file={%24mac}-directory.xml";
|
||||
|
||||
#cisco
|
||||
rewrite "^.*/provision/file/(.*\.(xml|cfg))" /app/provision/?file=$1 last;
|
||||
rewrite "^.*/provision/directory\.xml$" /app/provision/?file=directory.xml;
|
||||
|
||||
#Escene
|
||||
rewrite "^.*/provision/([0-9]{1,11})_Extern.xml$" "/app/provision/?ext=$1&file={%24mac}_extern.xml" last;
|
||||
rewrite "^.*/provision/([0-9]{1,11})_Phonebook.xml$" "/app/provision/?ext=$1&file={%24mac}_phonebook.xml" last;
|
||||
|
||||
#Vtech
|
||||
rewrite "^.*/provision/VCS754_([A-Fa-f0-9]{12})\.cfg$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/pb([A-Fa-f0-9-]{12,17})/directory\.xml$" /app/provision/?mac=$1&file=directory.xml;
|
||||
|
||||
#Digium
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-contacts\.cfg$" "/app/provision/?mac=$1&file={%24mac}-contacts.cfg";
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-smartblf\.cfg$" "/app/provision/?mac=$1&file={%24mac}-smartblf.cfg";
|
||||
|
||||
#Snom
|
||||
rewrite "^.*/provision/.*-([A-Fa-f0-9]{12})\.?(cfg|htm)?$" /app/provision/index.php?mac=$1;
|
||||
rewrite "^.*/provision/C520-WiMi_([A-Fa-f0-9]{12})\.cfg$" /app/provision/index.php?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})/directory\.xml$" /app/provision/?mac=$1&file=directory.xml;
|
||||
|
||||
access_log /var/log/nginx/access.log;
|
||||
error_log /var/log/nginx/error.log;
|
||||
|
||||
client_max_body_size 80M;
|
||||
client_body_buffer_size 128k;
|
||||
|
||||
location / {
|
||||
root /var/www/fusionpbx;
|
||||
index index.php;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_read_timeout 15m;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Allow the upgrade routines to run longer than normal
|
||||
location = /core/upgrade/index.php {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_read_timeout 15m;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Disable viewing .htaccess & .htpassword & .db & .git
|
||||
location ~ .htaccess {
|
||||
deny all;
|
||||
}
|
||||
location ~ .htpassword {
|
||||
deny all;
|
||||
}
|
||||
location ~^.+.(db)$ {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.git {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.lua {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\. {
|
||||
deny all;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
server {
|
||||
listen [::]:443 ssl;
|
||||
listen 443 ssl;
|
||||
#listen 443 ssl http2;
|
||||
server_name fusion.orbishosting.com 134.209.72.226;
|
||||
ssl_certificate /etc/letsencrypt/live/fusion.orbishosting.com/fullchain.pem; # managed by Certbot
|
||||
ssl_certificate_key /etc/letsencrypt/live/fusion.orbishosting.com/privkey.pem; # managed by Certbot
|
||||
#ssl_protocols TLSv1.2 TLSv1.3;
|
||||
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
|
||||
ssl_prefer_server_ciphers on;
|
||||
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA:AES256-SHA;
|
||||
ssl_session_cache shared:SSL:40m;
|
||||
ssl_session_timeout 2h;
|
||||
ssl_session_tickets off;
|
||||
|
||||
#redirect websockets to port 8080
|
||||
location /websockets/ {
|
||||
proxy_pass http://127.0.0.1:8080;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $host;
|
||||
}
|
||||
|
||||
#redirect letsencrypt to dehydrated
|
||||
location ^~ /.well-known/acme-challenge {
|
||||
default_type "text/plain";
|
||||
auth_basic "off";
|
||||
alias /var/www/dehydrated;
|
||||
}
|
||||
|
||||
#REST api
|
||||
if ($uri ~* ^.*/api/.*$) {
|
||||
rewrite ^(.*)/api/(.*)$ $1/api/index.php?rewrite_uri=$2 last;
|
||||
break;
|
||||
}
|
||||
|
||||
#message media
|
||||
rewrite "^/app/messages/media/(.*)/(.*)" /app/messages/message_media.php?id=$1&action=download last;
|
||||
|
||||
#algo
|
||||
rewrite "^.*/provision/algom([A-Fa-f0-9]{12})\.conf" /app/provision/?mac=$1&file=algom%7b%24mac%7d.conf last;
|
||||
|
||||
#avaya
|
||||
rewrite "^.*/provision/J100Supgrade.txt" /resources/templates/provision/avaya/J100Supgrade.txt last;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12}).txt?$" /app/provision/index.php?mac=$1 last;
|
||||
|
||||
#mitel
|
||||
rewrite "^.*/provision/MN_([A-Fa-f0-9]{12})\.cfg" /app/provision/index.php?mac=$1&file=MN_%7b%24mac%7d.cfg last;
|
||||
rewrite "^.*/provision/MN_Generic.cfg" /app/provision/index.php?mac=08000f000000&file=MN_Generic.cfg last;
|
||||
|
||||
#grandstream
|
||||
rewrite "^.*/provision/cfg([A-Fa-f0-9]{12})(\.(xml|cfg))?$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})/phonebook\.xml$" /app/provision/?mac=$1&file=phonebook.xml;
|
||||
rewrite "^.*/provision/(phonebook\.xml)?$" /app/provision/index.php?file=$1 last;
|
||||
rewrite "^.*/provision/phonebook.xml$" /app/provision/?mac=$1&file=phonebook.xml;
|
||||
|
||||
#aastra
|
||||
rewrite "^.*/provision/aastra.cfg$" /app/provision/?mac=$1&file=aastra.cfg;
|
||||
#rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.(cfg))?$" /app/provision/?mac=$1 last;
|
||||
|
||||
#yealink
|
||||
rewrite "^.*/provision/(y[0-9]{12})(\.cfg|\.boot)?$" /app/provision/index.php?file=$1$2;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.boot)$" /app/provision/index.php?mac=$1&file=%7b%24mac%7d.boot;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})(\.(xml|cfg))?$" /app/provision/index.php?mac=$1 last;
|
||||
|
||||
#polycom
|
||||
rewrite "^.*/provision/000000000000.cfg$" "/app/provision/?mac=$1&file={%24mac}.cfg";
|
||||
#rewrite "^.*/provision/sip_330(\.(ld))$" /includes/firmware/sip_330.$2;
|
||||
rewrite "^.*/provision/features.cfg$" /app/provision/?mac=$1&file=features.cfg;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-sip.cfg$" /app/provision/?mac=$1&file=sip.cfg;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-phone.cfg$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-registration.cfg$" "/app/provision/?mac=$1&file={%24mac}-registration.cfg";
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-directory.xml$" "/app/provision/?mac=$1&file={%24mac}-directory.xml";
|
||||
|
||||
#cisco
|
||||
rewrite "^.*/provision/file/(.*\.(xml|cfg))" /app/provision/?file=$1 last;
|
||||
rewrite "^.*/provision/directory\.xml$" /app/provision/?file=directory.xml;
|
||||
|
||||
#Escene
|
||||
rewrite "^.*/provision/([0-9]{1,11})_Extern.xml$" "/app/provision/?ext=$1&file={%24mac}_extern.xml" last;
|
||||
rewrite "^.*/provision/([0-9]{1,11})_Phonebook.xml$" "/app/provision/?ext=$1&file={%24mac}_phonebook.xml" last;
|
||||
|
||||
#Vtech
|
||||
rewrite "^.*/provision/VCS754_([A-Fa-f0-9]{12})\.cfg$" /app/provision/?mac=$1;
|
||||
rewrite "^.*/provision/pb([A-Fa-f0-9-]{12,17})/directory\.xml$" /app/provision/?mac=$1&file=directory.xml;
|
||||
|
||||
#Digium
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-contacts\.cfg$" "/app/provision/?mac=$1&file={%24mac}-contacts.cfg";
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})-smartblf\.cfg$" "/app/provision/?mac=$1&file={%24mac}-smartblf.cfg";
|
||||
|
||||
#Snom
|
||||
rewrite "^.*/provision/.*-([A-Fa-f0-9]{12})\.?(cfg|htm)?$" /app/provision/index.php?mac=$1;
|
||||
rewrite "^.*/provision/C520-WiMi_([A-Fa-f0-9]{12})\.cfg$" /app/provision/index.php?mac=$1;
|
||||
rewrite "^.*/provision/([A-Fa-f0-9]{12})/directory\.xml$" /app/provision/?mac=$1&file=directory.xml;
|
||||
|
||||
access_log /var/log/nginx/access.log;
|
||||
error_log /var/log/nginx/error.log;
|
||||
|
||||
client_max_body_size 80M;
|
||||
client_body_buffer_size 128k;
|
||||
|
||||
location / {
|
||||
root /var/www/fusionpbx;
|
||||
index index.php;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_read_timeout 15m;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Allow the upgrade routines to run longer than normal
|
||||
location = /core/upgrade/index.php {
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
#fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_read_timeout 15m;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/fusionpbx$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Disable viewing .htaccess & .htpassword & .db & .git
|
||||
location ~ .htaccess {
|
||||
deny all;
|
||||
}
|
||||
location ~ .htpassword {
|
||||
deny all;
|
||||
}
|
||||
location ~^.+.(db)$ {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.git {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\.lua {
|
||||
deny all;
|
||||
}
|
||||
location ~ /\. {
|
||||
deny all;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDNYf4z78s4+K4HoiUiHoqPbCCEFngCAXKP7mGwhCAc86TTbAosTpAnG1HycPzb2s2B3K3geQPUzQzcLvWdBX8hJM8IamvAZ/WXPtOszWTuVnaYM6BQY7ldIdXi3a+xscWr+M8dM6OexXqdCAy66HXmgl98+Cg2uEbxCFelH81/5d3cuoCXllpvUawyYZe5UjFjPeBpPc/QyhDxG4ovYYpcCeHbzLXc9jIfawjwJTDcYfeXVHFisMdSUp0+eXndRM1TybeSOfT4oQbuijdsy4IQo0md5fRYgZuXxHMIgy7obNB3OPf9szgbWTEWK6jNFhkQHIZXPSRxSM9L1a0RkarQk+xqTf96wTJL/Uz6hSyImYjhtPvcOoBRejaQaK96HuWGe3At96+I6WjvJNEDM/jF9tosp2nbdhcGRitYmxREdv7M8AYM393MKT94BBrulr6tI504+0dDTH7IaojYc8SBAtu1TrUwinLA9zQ35Ney5Ry/Mr7tNOLU1Ni3lkqNRWysEjWxEizM/1sK7u2fbAzx3kE+TRpyzmFv6gSiGHqjs5j/tG6daK7Hv6OvbHSWwV/pW6CKslJWFAsa5tVv+Fw8cXdcMMyb6/CYTUtcFMgcF0hhtsd1g6YfnOWRGLcUxFe9odiayhMlstne/dqeyvQCjStrzOxUT5ta9L9JZifDkQ== root@pve
|
||||
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=Active Calls Websocket Service
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/active_calls/resources/service/active_calls.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=Active Conferences Websocket Service
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/active_conferences/resources/service/active_conferences.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,28 @@
|
||||
; Author: Mark J Crane <markjcrane@fusionpbx.com>
|
||||
; cp /var/www/fusionpbx/app/email_queue/resources/service/debian.service /etc/systemd/system/email_queue.service
|
||||
; systemctl daemon-reload
|
||||
; systemctl enable email_queue
|
||||
; systemctl start email_queue
|
||||
|
||||
[Unit]
|
||||
Description=FusionPBX Email Queue
|
||||
Wants=network-online.target
|
||||
Requires=network.target local-fs.target
|
||||
;Requires=network.target local-fs.target postgresql.service
|
||||
After=network.target network-online.target local-fs.target
|
||||
;After=network.target network-online.target local-fs.target postgresql.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/email_queue/resources/service/email_queue.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
TimeoutSec=55s
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,29 @@
|
||||
; Author: Mark J Crane <markjcrane@fusionpbx.com>
|
||||
; cp /var/www/fusionpbx/app/event_guard/resources/service/debian.service /etc/systemd/system/event_guard.service
|
||||
; systemctl daemon-reload
|
||||
; systemctl enable event_guard
|
||||
; systemctl start event_guard
|
||||
|
||||
[Unit]
|
||||
Description=FusionPBX Event Guard
|
||||
Wants=network-online.target
|
||||
Requires=network.target local-fs.target
|
||||
;Requires=network.target local-fs.target postgresql.service
|
||||
After=network.target network-online.target local-fs.target
|
||||
;After=network.target network-online.target local-fs.target postgresql.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/event_guard/resources/service/event_guard.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=root
|
||||
Group=root
|
||||
TimeoutSec=55s
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
; Author: Mark J Crane <markjcrane@fusionpbx.com>
|
||||
; cp /var/www/fusionpbx/app/fax_queue/resources/service/debian.service /etc/systemd/system/fax_queue.service
|
||||
; systemctl daemon-reload
|
||||
; systemctl enable fax_queue
|
||||
; systemctl start fax_queue
|
||||
|
||||
[Unit]
|
||||
Description=FusionPBX FAX Queue
|
||||
Wants=network-online.target
|
||||
Requires=network.target local-fs.target
|
||||
;Requires=network.target local-fs.target postgresql.service
|
||||
After=network.target network-online.target local-fs.target
|
||||
;After=network.target network-online.target local-fs.target postgresql.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/fax_queue/resources/service/fax_queue.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
TimeoutSec=55s
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,27 @@
|
||||
; Author: Mark J Crane <markjcrane@fusionpbx.com>
|
||||
; cp /var/www/fusionpbx/app/system/resources/service/debian.service /etc/systemd/system/system_status.service
|
||||
; systemctl daemon-reload
|
||||
; systemctl enable --now system_status
|
||||
|
||||
[Unit]
|
||||
Description=FusionPBX System Dashboard Information Service
|
||||
Wants=network-online.target
|
||||
Requires=network.target local-fs.target
|
||||
;Requires=network.target local-fs.target postgresql.service
|
||||
After=network.target network-online.target local-fs.target
|
||||
;After=network.target network-online.target local-fs.target postgresql.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/system/resources/service/system_status.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
TimeoutSec=55s
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# Install with:
|
||||
#
|
||||
# cp debian-transcribe_queue.service /etc/systemd/system/transcribe_queue.service
|
||||
# systemctl daemon-reload
|
||||
# systemctl enable --now transcribe_queue.service
|
||||
#
|
||||
[Unit]
|
||||
Description=Audio Transcribe Queue Service
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/transcribe/resources/service/transcribe_queue.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# Install with:
|
||||
#
|
||||
# cp debian-websockets.service /etc/systemd/system/websockets.service
|
||||
# systemctl daemon-reload
|
||||
# systemctl enable --now websockets.service
|
||||
#
|
||||
[Unit]
|
||||
Description=Websocket Router Service
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/core/websockets/resources/service/websockets.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,28 @@
|
||||
; Author: Mark J Crane <markjcrane@fusionpbx.com>
|
||||
; cp /var/www/fusionpbx/app/xml_cdr/resources/service/debian.service /etc/systemd/system/xml_cdr.service
|
||||
; systemctl daemon-reload
|
||||
; systemctl enable xml_cdr
|
||||
; systemctl start xml_cdr
|
||||
|
||||
[Unit]
|
||||
Description=FusionPBX xml_cdr
|
||||
Wants=network-online.target
|
||||
Requires=network.target local-fs.target
|
||||
;Requires=network.target local-fs.target postgresql.service
|
||||
After=network.target network-online.target local-fs.target
|
||||
;After=network.target network-online.target local-fs.target postgresql.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/www/fusionpbx
|
||||
ExecStart=/usr/bin/php /var/www/fusionpbx/app/xml_cdr/resources/service/xml_cdr.php
|
||||
RuntimeDirectory=fusionpbx
|
||||
RuntimeDirectoryMode=0755
|
||||
RuntimeDirectoryPreserve=yes
|
||||
User=www-data
|
||||
Group=www-data
|
||||
TimeoutSec=55s
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user