mwolff44.freeswitch-mw

Freeswitch-mw

Status budowy Galaxy

Rola Ansible dla FreeSwitch 1.6

Wymagania

  • Testowane na Ansible 2.0 lub nowszym.

Instalacja Ansible przez pip

sudo apt-get install -y ansible

Zmienne roli

Zmienne roli i wartości domyślne.

FreeSwitch

freeswitch_conf_dir: '/etc/freeswitch' # Katalog konfiguracyjny
freeswitch_symlinks: True # domyślna struktura FS w /usr/local/freeswitch przez tworzenie symlinków
freeswitch_install_conf: True # Pozwól na instalację plików konfiguracyjnych - może być wyłączone przy aktualizacji
freeswitch_conf_backup_dir: '/etc/freeswitch.orig' # Katalog zapasowy konfiguracji
freeswitch_config_template_dir: '../templates/freeswitch/config' # Katalog szablonów używanych do konfiguracji FreeSwitch
freeswitch_config_list: # Lista plików konfiguracyjnych szablonów z końcówką ".j2"
    - autoload_configs/console.conf.xml.j2
    - autoload_configs/logfile.conf.xml.j2
    - autoload_configs/modules.conf.xml.j2
    - autoload_configs/switch.conf.xml.j2
    - autoload_configs/syslog.conf.xml.j2

freeswitch_install_script: True # Pozwól na instalację plików skryptów - może być wyłączone przy aktualizacji
freeswitch_script_dir: '/usr/share/freeswitch/scripts' # Katalog skryptów
freeswitch_script_backup_dir: '/usr/share/freeswitch/scripts.orig' # Katalog zapasowy skryptów
freeswitch_script_template_dir: '../templates/freeswitch/scripts' # Katalog szablonów używanych do skryptów FreeSwitch
freeswitch_script_list: # Lista plików skryptów szablonów z końcówką ".j2"
    - test.lua.j2

freeswitch_packages: # Pakiety FreeSwitch do zainstalowania
    - freeswitch-meta-all
    - freeswitch-all-dbg
    - gdb

Konfiguracja FreeSwitch

freeswitch_log_mapping: <map name="err" value="debug,info,notice,warning,err,crit,alert"/>
freeswitch_log_max_rotate: <!-- <param name="maximum-rotate" value="32"/> -->
freeswitch_max_db_handles: 50 # Maksymalna liczba jednoczesnych uchwytów DB otwartych
freeswitch_db_handle_timeout: 10 # Maksymalna liczba sekund na czekanie na nowy uchwyt DB przed niepowodzeniem
freeswitch_min_idle_cpu: 25 # Minimalne bezczynne CPU przed odrzuceniem połączeń
freeswitch_max_sessions: 1000 # Maksymalna liczba sesji dozwolonych w danym momencie
freeswitch_sessions_per_second: 30 # Maksymalna liczba kanałów do utworzenia na sekundę
freeswitch_global_loglevel: debug # Domyślny poziom logów globalnych - wartość to jeden z debug,info,notice,warning,err,crit,alert
freeswitch_rtp_start_port: 16384
freeswitch_rtp_end_port: 32768

ODBC

odbc_install: false
odbc_packages_install: false
odbc_packages:
    - unixodbc-bin
    - unixodbc-dev
odbc_postgresql_install: false
odbc_postgresql_packages:
    - odbc-postgresql
postgresql_packages_install: false
odbc_template_dir: '../templates/odbc' # Katalog szablonów używanych dla ODBC
odbc_server: 127.0.0.1
odbc_port: 5432
odbc_database: 'mydatabase'
odbc_user: 'myuser'
odbc_password: 'mypass'
odbc_tracefile: '/tmp/psqlodbc.log'

Fail2ban

fail2ban_install: False # Domyślnie: fail2ban nie będzie zainstalowany
fail2ban_local_jail_file: /etc/fail2ban/jail.local # Plik więzienia fail2ban dla FreeSwitch
fail2ban_filter_dir: /etc/fail2ban/filter.d # Katalog filtrów fail2ban
fail2ban_local_jail: ../templates/fail2ban/jail.local # Szablon więzienia fail2ban dla FreeSwitch
fail2ban_fs: ../templates/fail2ban/freeswitch.conf # Szablon filtru fail2ban dla FreeSwitch
fail2ban_dos_fs: ../templates/fail2ban/freeswitch-dos.conf # Szablon filtru fail2ban dla FreeSwitch dos

Sngrep

sngrep_install: False # Domyślnie: sngrep nie będzie zainstalowany

Synchronizacja czasu z systemd

ntp_install: False # Domyślnie: synchronizacja czasu nie będzie skonfigurowana
ntp_servers: '{{ ntp_servers_map[ansible_distribution]
                  | d(ntp_servers_map["default"]) }}'
ntp_servers_map:
  'Debian':  [ '0.debian.pool.ntp.org', '1.debian.pool.ntp.org',
               '2.debian.pool.ntp.org', '3.debian.pool.ntp.org' ]
  'Ubuntu':  [ '0.ubuntu.pool.ntp.org', '1.ubuntu.pool.ntp.org',
               '2.ubuntu.pool.ntp.org', '3.ubuntu.pool.ntp.org' ]
  'default': [ '0.pool.ntp.org', '1.pool.ntp.org',
               '2.pool.ntp.org', '3.pool.ntp.org' ]
ntp_timezone: 'Europe/Paris'
ntp_timesyncd_template : ../templates/etc/systemd/timesyncd.conf.d/ansible.conf.j2

Zależności

Brak

Użycie

Dodaj mwolff44.freeswitch-mw do swoich ról i skonfiguruj zmienne w pliku playbook. Przykład:

- hosts: all
  vars_files:
    - 'defaults/main.yml'
  tasks:
    - include: 'tasks/main.yml'
  handlers:
    - include: 'handlers/main.yml'

Licencja

Licencjonowane na podstawie licencji GPL v3. Zobacz plik LICENSE w celu uzyskania szczegółów.

Współautor

Szczególne podziękowania dla: Bruno SALZANO / [email protected]

Informacje o autorze

Mathias WOLFF / Blog des télécoms - PyFreeBilling

O projekcie

FreeSwitch installation and management

Zainstaluj
ansible-galaxy install mwolff44.freeswitch-mw
Licencja
gpl-3.0
Pobrania
80
Właściciel