diff --git a/hieradata/site_template.yaml b/hieradata/site_template.yaml index 39d00a8..2a6b92f 100644 --- a/hieradata/site_template.yaml +++ b/hieradata/site_template.yaml @@ -9,6 +9,7 @@ rhizo::arfcn_B: "251" rhizo::auth_policy: "accept-all" rhizo::vpn_ip_address: "10.66.0.0" rhizo::wan_ip_address: "192.168.0.0" +rhizo::lac: "1" #Emergency call contact rhizo::emergency_contact: "12345" @@ -18,6 +19,7 @@ rhizo::voip_provider_name: "provider" rhizo::voip_username: "1234567890" rhizo::voip_fromuser: "1234567890" rhizo::voip_password: "1234" +rhizo::voip_pin: "1234" rhizo::voip_proxy: "10.10.10.10" rhizo::voip_did: "12345678901" rhizo::voip_cli: "12345678901" diff --git a/modules/python b/modules/python index 0996770..eb52429 160000 --- a/modules/python +++ b/modules/python @@ -1 +1 @@ -Subproject commit 09967704c152f5fd044ed4ddbc7382ef2e24aea5 +Subproject commit eb52429dbf78778a4871169571a744bff44a6287 diff --git a/modules/rhizo_base/files/etc/cron.d/rhizomatica b/modules/rhizo_base/files/etc/cron.d/rhizomatica index 3e8b7d3..698e684 100644 --- a/modules/rhizo_base/files/etc/cron.d/rhizomatica +++ b/modules/rhizo_base/files/etc/cron.d/rhizomatica @@ -22,7 +22,7 @@ PYTHONPATH=$PYTHONPATH:/var/rhizomatica/rccn # */10 * * * * root /home/rhizomatica/bin/bind_check.sh #Roaming jobs -*/30 * * * * root /usr/bin/python /var/rhizomatica/rccn/rrc.py > /dev/null 2>&1 ; /usr/bin/python /var/rhizomatica/rccn/rhs.py > /dev/null 2>&1 +*/30 * * * * root timeout 10m /usr/bin/python /var/rhizomatica/rccn/rrc.py > /dev/null 2>&1 ; timeout 15m /usr/bin/python /var/rhizomatica/rccn/rhs.py > /dev/null 2>&1 #Cleanup inactive users 0 5 * * * root /usr/bin/python /var/rhizomatica/rccn/rip.py > /dev/null 2>&1 diff --git a/modules/rhizo_base/files/etc/freeswitch/sip_profiles/internal.xml b/modules/rhizo_base/files/etc/freeswitch/sip_profiles/internal.xml index c7e3d60..cc9b98d 100644 --- a/modules/rhizo_base/files/etc/freeswitch/sip_profiles/internal.xml +++ b/modules/rhizo_base/files/etc/freeswitch/sip_profiles/internal.xml @@ -91,9 +91,9 @@ - + - + @@ -272,8 +272,8 @@ auto - Use guessed ip. auto-nat - Use ip learned from NAT-PMP or UPNP --> - - + + diff --git a/modules/rhizo_base/files/etc/sv/lcr/run b/modules/rhizo_base/files/etc/sv/lcr/run index 22652f1..7d62587 100755 --- a/modules/rhizo_base/files/etc/sv/lcr/run +++ b/modules/rhizo_base/files/etc/sv/lcr/run @@ -1,2 +1,2 @@ #!/bin/sh -/usr/sbin/lcr start +exec /usr/sbin/lcr start diff --git a/modules/rhizo_base/files/usr/etc/lcr/interface.conf b/modules/rhizo_base/files/usr/etc/lcr/interface.conf index 7177508..d306df2 100644 --- a/modules/rhizo_base/files/usr/etc/lcr/interface.conf +++ b/modules/rhizo_base/files/usr/etc/lcr/interface.conf @@ -3,15 +3,15 @@ gsm-bs tones yes earlyb no # These two lines enable RTP bridging -#bridge Ext -#rtp-bridge +bridge Ext +rtp-bridge [Ext] #sip [:] [:] -sip 127.0.0.1:5050 127.0.0.1:5060 +sip 172.16.0.1:5050 172.16.0.1:5060 earlyb yes tones yes extern # These two lines enable RTP bridging -#bridge gsm -#rtp-bridge +bridge gsm +rtp-bridge diff --git a/modules/rhizo_base/manifests/init.pp b/modules/rhizo_base/manifests/init.pp index 805ce73..849cc4f 100644 --- a/modules/rhizo_base/manifests/init.pp +++ b/modules/rhizo_base/manifests/init.pp @@ -34,6 +34,7 @@ class rhizo_base { # network name $network_name = hiera('rhizo::network_name') $auth_policy = hiera('rhizo::auth_policy') + $lac = hiera('rhizo::lac') #BTSs configuration $bts1_ip_address = hiera('rhizo::bts1_ip_address') @@ -189,6 +190,8 @@ class rhizo_base { provider => git, source => 'https://github.com/Rhizomatica/rccn.git', revision => 'multilectical/localnetpage', +# change back for production +# revision => '1.0.6', require => [ File['/var/rhizomatica'], Package['git'] ], notify => [ Exec['locale-gen'], Exec['restart-freeswitch'], diff --git a/modules/rhizo_base/manifests/lcr.pp b/modules/rhizo_base/manifests/lcr.pp index db88b22..75ce725 100644 --- a/modules/rhizo_base/manifests/lcr.pp +++ b/modules/rhizo_base/manifests/lcr.pp @@ -12,8 +12,14 @@ # class rhizo_base::lcr { package { 'lcr': - ensure => installed, + ensure => latest, require => Class['rhizo_base::apt'], + notify => Exec['restart-lcr'], + } + + exec { 'restart-lcr': + command => '/usr/bin/sv restart lcr', + refreshonly => true, } service { 'lcr': diff --git a/modules/rhizo_base/manifests/openbsc.pp b/modules/rhizo_base/manifests/openbsc.pp index 09803a1..32e63b2 100644 --- a/modules/rhizo_base/manifests/openbsc.pp +++ b/modules/rhizo_base/manifests/openbsc.pp @@ -13,6 +13,7 @@ class rhizo_base::openbsc { $network_name = $rhizo_base::network_name $auth_policy = $rhizo_base::auth_policy + $lac = $rhizo_base::lac $max_power_red = $rhizo_base::max_power_red $arfcn_A = $rhizo_base::arfcn_A $arfcn_B = $rhizo_base::arfcn_B @@ -24,21 +25,41 @@ class rhizo_base::openbsc { $bts3_ip_address = $rhizo_base::bts3_ip_address $smsc_password = $rhizo_base::smsc_password - package { ['osmocom-nitb', 'osmocom-nitb-dbg', - 'libdbd-sqlite3', 'libsmpp0']: - ensure => installed, - require => Class['rhizo_base::apt'], - notify => Exec['hlr_pragma_wal'], + package { [ 'libosmoabis4', 'libosmocore6', + 'libosmoctrl0', 'libosmogsm5', + 'libosmovty1', 'osmocom-nitb', + 'osmocom-nitb-dbg']: + ensure => latest, + require => Class['rhizo_base::apt'], + notify => [ Exec['hlr_pragma_wal'], + Exec['restart-nitb'] ], } + package { [ 'libosmoabis3', 'libosmocore4', + 'libosmogsm6', 'libosmovty0', + 'libgtp', 'libgtp0', + 'libgtp0-dev', 'openggsn', + 'libosmo-abis', 'libosmo-abis-dbg', + 'libosmo-abis-dev', 'libosmo-netif-dbg', + 'libosmo-netif-dev', 'libosmo-sccp', + 'libosmo-sccp-dbg', 'libosmo-sccp-dev', + 'libosmocodec0', 'libosmocore', + 'libosmocore-dbg', 'libosmocore-dev', + 'libosmocore-utils', 'libosmogb3', + 'libosmonetif2', 'libosmosim0', + 'libosmotrau0']: + ensure => purged, + } + service { 'osmocom-nitb': enable => false, - require => Package['osmocom-nitb'] + require => Package['osmocom-nitb'], } file { '/etc/osmocom/osmo-nitb.cfg': content => template('rhizo_base/osmo-nitb.cfg.erb'), require => Package['osmocom-nitb'], + notify => Exec['restart-nitb'], } exec { 'hlr_pragma_wal': @@ -47,4 +68,11 @@ class rhizo_base::openbsc { require => Class['rhizo_base::packages'], refreshonly => true, } + + exec { 'restart-nitb': + command => '/usr/bin/sv restart osmo-nitb', + require => Class['rhizo_base::packages'], + refreshonly => true, + } + } diff --git a/modules/rhizo_base/templates/osmo-nitb.cfg.erb b/modules/rhizo_base/templates/osmo-nitb.cfg.erb index 3139405..60273d3 100644 --- a/modules/rhizo_base/templates/osmo-nitb.cfg.erb +++ b/modules/rhizo_base/templates/osmo-nitb.cfg.erb @@ -6,6 +6,7 @@ password foo log stderr logging filter all 1 logging color 1 + logging print category 0 logging timestamp 0 logging level all notice logging level rll notice @@ -31,6 +32,7 @@ log stderr logging level nat notice logging level ctrl notice logging level smpp notice + logging level filter notice logging level lglobal notice logging level llapd notice logging level linp notice @@ -38,6 +40,8 @@ log stderr logging level lmi notice logging level lmib notice logging level lsms notice + logging level lctrl notice + logging level lgtp notice ! line vty no login @@ -83,7 +87,7 @@ network type sysmobts band GSM850 cell_identity 0 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -136,7 +140,7 @@ network type sysmobts band GSM850 cell_identity 1 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -190,7 +194,7 @@ network type sysmobts band GSM850 cell_identity 2 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -243,7 +247,7 @@ network type sysmobts band GSM850 cell_identity 3 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -298,7 +302,7 @@ network type sysmobts band GSM850 cell_identity 4 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -351,7 +355,7 @@ network type sysmobts band GSM850 cell_identity 5 - location_area_code 1 + location_area_code <%= @lac %> base_station_id_code 63 ms max power 33 cell reselection hysteresis 14 @@ -404,9 +408,13 @@ network mncc-int default-codec tch-f fr default-codec tch-h hr +nitb + subscriber-create-on-demand + no assign-tmsi smpp local-tcp-port 2775 policy closed + smpp-first esme OSMPP password <%= @smsc_password %> default-route