Puppet Class: asterisk::config

Defined in:
manifests/config.pp

Summary

asterisk basic configuration files.

Overview

This class is not intended to be used directly.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'manifests/config.pp', line 7

class asterisk::config {

  assert_private()

  case $facts['os']['family'] {
    'RedHat': {
      $service_settings_path = "/etc/sysconfig/${asterisk::service_name}"
    }
    'Debian': {
      $service_settings_path = "/etc/default/${asterisk::service_name}"
    }
    default: {
      fail("Unsupported system '${facts['os']['name']}'.")
    }
  }

  augeas { 'run_asterisk':
    changes => [
      "set /files/${service_settings_path}/RUNASTERISK yes",
    ],
  }

  $iax_general = $asterisk::real_iax_general
  asterisk::dotd { '/etc/asterisk/iax':
    additional_paths => ['/etc/asterisk/iax.registry.d'],
    content          => template('asterisk/iax.conf.erb'),
  }

  $sip_general = $asterisk::real_sip_general
  asterisk::dotd { '/etc/asterisk/sip':
    additional_paths => ['/etc/asterisk/sip.registry.d'],
    content          => template('asterisk/sip.conf.erb'),
  }

  $voicemail_general = $asterisk::real_voicemail_general
  asterisk::dotd { '/etc/asterisk/voicemail':
    content => template('asterisk/voicemail.conf.erb'),
  }

  $ext_context = {
    general => $asterisk::real_extensions_general,
    globals => $asterisk::extensions_globals,
  }
  asterisk::dotd { '/etc/asterisk/extensions':
    content => epp('asterisk/extensions.conf.epp', $ext_context),
  }

  $agents_multiplelogin = $asterisk::real_agents_multiplelogin
  asterisk::dotd { '/etc/asterisk/agents':
    content => template('asterisk/agents.conf.erb'),
  }

  $features_general = $asterisk::real_features_general
  asterisk::dotd { '/etc/asterisk/features':
    content          => template('asterisk/features.conf.erb'),
  }

  $queues_general = $asterisk::real_queues_general
  asterisk::dotd { '/etc/asterisk/queues':
    content => template('asterisk/queues.conf.erb'),
  }

  $manager_enable = $asterisk::real_manager_enable
  $manager_port = $asterisk::manager_port
  $manager_bindaddr = $asterisk::manager_bindaddr
  asterisk::dotd { '/etc/asterisk/manager':
    content => template('asterisk/manager.conf.erb'),
  }

  $modules_autoload = $asterisk::real_modules_autoload
  file { '/etc/asterisk/modules.conf' :
    ensure  => present,
    content => template('asterisk/modules.conf.erb'),
    owner   => 'root',
    group   => 'asterisk',
    mode    => '0640',
  }

}