392 lines
12 KiB
INI
392 lines
12 KiB
INI
# PROGRAM-WIDE PARAMETERS GO HERE
|
|
# PATH - working path for files, leave it alone unless you NEED to change it
|
|
# PING_TIME - the interval that peers will ping the master, and re-try registraion
|
|
# - how often the Master maintenance loop runs
|
|
# MAX_MISSED - how many pings are missed before we give up and re-register
|
|
# - number of times the master maintenance loop runs before de-registering a peer
|
|
#
|
|
# ACLs:
|
|
#
|
|
# Access Control Lists are a very powerful tool for administering your system.
|
|
# But they consume packet processing time. Disable them if you are not using them.
|
|
# But be aware that, as of now, the configuration stanzas still need the ACL
|
|
# sections configured even if you're not using them.
|
|
#
|
|
# REGISTRATION ACLS ARE ALWAYS USED, ONLY SUBSCRIBER AND TGID MAY BE DISABLED!!!
|
|
#
|
|
# The 'action' May be PERMIT|DENY
|
|
# Each entry may be a single radio id, or a hypenated range (e.g. 1-2999)
|
|
# Format:
|
|
# ACL = 'action:id|start-end|,id|start-end,....'
|
|
# --for example--
|
|
# SUB_ACL: DENY:1,1000-2000,4500-60000,17
|
|
#
|
|
# ACL Types:
|
|
# REG_ACL: peer radio IDs for registration (only used on HBP master systems)
|
|
# SUB_ACL: subscriber IDs for end-users
|
|
# TGID_TS1_ACL: destination talkgroup IDs on Timeslot 1
|
|
# TGID_TS2_ACL: destination talkgroup IDs on Timeslot 2
|
|
#
|
|
# ACLs may be repeated for individual systems if needed for granularity
|
|
# Global ACLs will be processed BEFORE the system level ACLs
|
|
# Packets will be matched against all ACLs, GLOBAL first. If a packet 'passes'
|
|
# All elements, processing continues. Packets are discarded at the first
|
|
# negative match, or 'reject' from an ACL element.
|
|
#
|
|
# If you do not wish to use ACLs, set them to 'PERMIT:ALL'
|
|
# TGID_TS1_ACL in the global stanza is used for OPENBRIDGE systems, since all
|
|
# traffic is passed as TS 1 between OpenBridges
|
|
[GLOBAL]
|
|
PATH: ./
|
|
PING_TIME: 5
|
|
MAX_MISSED: 3
|
|
USE_ACL: True
|
|
REG_ACL: PERMIT:ALL
|
|
SUB_ACL: DENY:1
|
|
TGID_TS1_ACL: PERMIT:ALL
|
|
TGID_TS2_ACL: PERMIT:ALL
|
|
|
|
|
|
# NOT YET WORKING: NETWORK REPORTING CONFIGURATION
|
|
# Enabling "REPORT" will configure a socket-based reporting
|
|
# system that will send the configuration and other items
|
|
# to a another process (local or remote) that may process
|
|
# the information for some useful purpose, like a web dashboard.
|
|
#
|
|
# REPORT - True to enable, False to disable
|
|
# REPORT_INTERVAL - Seconds between reports
|
|
# REPORT_PORT - TCP port to listen on if "REPORT_NETWORKS" = NETWORK
|
|
# REPORT_CLIENTS - comma separated list of IPs you will allow clients
|
|
# to connect on. Entering a * will allow all.
|
|
#
|
|
# ****FOR NOW MUST BE TRUE - USE THE LOOPBACK IF YOU DON'T USE THIS!!!****
|
|
[REPORTS]
|
|
REPORT: True
|
|
REPORT_INTERVAL: 60
|
|
REPORT_PORT: 4323
|
|
REPORT_CLIENTS: 127.0.0.1
|
|
|
|
|
|
# SYSTEM LOGGER CONFIGURAITON
|
|
# This allows the logger to be configured without chaning the individual
|
|
# python logger stuff. LOG_FILE should be a complete path/filename for *your*
|
|
# system -- use /dev/null for non-file handlers.
|
|
# LOG_HANDLERS may be any of the following, please, no spaces in the
|
|
# list if you use several:
|
|
# null
|
|
# console
|
|
# console-timed
|
|
# file
|
|
# file-timed
|
|
# syslog
|
|
# LOG_LEVEL may be any of the standard syslog logging levels, though
|
|
# as of now, DEBUG, INFO, WARNING and CRITICAL are the only ones
|
|
# used.
|
|
#
|
|
[LOGGER]
|
|
LOG_FILE: /tmp/gps_data.log
|
|
LOG_HANDLERS: console-timed
|
|
LOG_LEVEL: DEBUG
|
|
LOG_NAME: HBlink3 GPS/Data
|
|
|
|
# DOWNLOAD AND IMPORT SUBSCRIBER, PEER and TGID ALIASES
|
|
# Ok, not the TGID, there's no master list I know of to download
|
|
# This is intended as a facility for other applcations built on top of
|
|
# HBlink to use, and will NOT be used in HBlink directly.
|
|
# STALE_DAYS is the number of days since the last download before we
|
|
# download again. Don't be an ass and change this to less than a few days.
|
|
[ALIASES]
|
|
TRY_DOWNLOAD: True
|
|
PATH: ./
|
|
PEER_FILE: peer_ids.json
|
|
SUBSCRIBER_FILE: subscriber_ids.json
|
|
TGID_FILE: talkgroup_ids.json
|
|
PEER_URL: https://www.radioid.net/static/rptrs.json
|
|
SUBSCRIBER_URL: https://www.radioid.net/static/users.json
|
|
STALE_DAYS: 1
|
|
|
|
#####################################################################
|
|
# GPS/Data Application - by KF7EEL
|
|
# Configure the settings for the DMR GPS to APRS position application here.
|
|
#
|
|
# DATA_DMR_ID - This is the DMR ID that users send DMR GPS data.
|
|
# CALL_TYPE - group, unit, or both. Group if you want users to send data to a talkgroup,
|
|
# unit if you want users to send data as a private call, or both if you want both options.
|
|
# UNIT_SMS_TS - Default timeslot for private SMS, where the subscriber's last TS is not known.
|
|
[GPS_DATA]
|
|
DATA_DMR_ID: 9099
|
|
CALL_TYPE: unit
|
|
UNIT_SMS_TS: 2
|
|
|
|
#APRS settings
|
|
# USER_APRS_SSID - Default APRS SSID assigned to user APRS positions.
|
|
# USER_APRS_COMMENT - Default Comment attached to user APRS positions.
|
|
# APRS_LOGIN_CALL, PASSCODE, SERVER, and PORT - Login settings for APRS-IS.
|
|
# Setting APRS_LOGIN_CALL to N0CALL will cause the gateway to not upload packets to APRS server.
|
|
USER_APRS_SSID: 15
|
|
USER_APRS_COMMENT: HBLink3 D-APRS -
|
|
APRS_LOGIN_CALL: N0CALL
|
|
APRS_LOGIN_PASSCODE: 12345
|
|
APRS_SERVER: rotate.aprs2.net
|
|
APRS_PORT: 14580
|
|
|
|
# The APRS filter below is used for the message received script. See http://www.aprs-is.net/javAPRSFilter.aspx for details
|
|
# about APRS filters.
|
|
APRS_FILTER: r/47/-120/500 t/m
|
|
|
|
# The following settings are only applicable if you are using the gps_data_beacon_igate script.
|
|
# They do not affect the operation gps_data itself.
|
|
# Time in minutes.
|
|
IGATE_BEACON_TIME = 45
|
|
IGATE_BEACON_COMMENT = HBLink3 D-APRS Gateway
|
|
IGATE_BEACON_ICON = /I
|
|
IGATE_LATITUDE = 0000.00N
|
|
IGATE_LONGITUDE = 00000.00W
|
|
|
|
# The following settings are for the static positions only, for hotspots or repeaters connected to MASTER stanzas.
|
|
# Implementation by IU7IGU
|
|
# REPORT_INTERVAL in Minute (ALLOW only > 3 Minutes)
|
|
# MESSAGE: This message will print on APRS description together RX and TX Frequency
|
|
APRS_STATIC_REPORT_INTERVAL: 15
|
|
APRS_STATIC_MESSAGE:Connected to HBLink
|
|
|
|
# The email gateway settingns below are OPTIONAL. They are NOT REQUIRED if you don't want
|
|
http://www.aprs-is.net/javAPRSFilter.aspx# to enable the email gateway. Leave as is to disable.
|
|
EMAIL_SENDER: test@example.org
|
|
EMAIL_PASSWORD: letmein
|
|
SMTP_SERVER: smtp.gmail.com
|
|
SMTP_PORT: 465
|
|
|
|
# The options below are required for operation of the dashboard and will cause errors in gps_data.py
|
|
# if configured wrong. Leave them as default unless you know what you are doing.
|
|
# If you do change, you must use absolute paths.
|
|
LOCATION_FILE: /tmp/gps_data_user_loc.txt
|
|
BULLETIN_BOARD_FILE: /tmp/gps_data_user_bb.txt
|
|
MAILBOX_FILE: /tmp/gps_data_user_mailbox.txt
|
|
EMERGENCY_SOS_FILE: /tmp/gps_data_user_sos.txt
|
|
|
|
# User settings file, MUST configure using absolute path.
|
|
USER_SETTINGS_FILE: /path/to/user_settings.txt
|
|
|
|
# API settings
|
|
# Authorized Apps file - data used for the dashboard API
|
|
USE_API: True
|
|
AUTHORIZED_APPS_FILE: /path/to/authorized_apps.py
|
|
AUTHORIZED_TOKENS_FILE: /tmp/hblink_auth_tokens.txt
|
|
AUTHORIZED_USERS_FILE: /path/to/authorized_users.txt
|
|
ACCESS_SYSTEMS_FILE: /path/to/access_systems.txt
|
|
MY_API_NAME: ABC
|
|
|
|
|
|
# The following options are used for the dashboard. The dashboard is optional.
|
|
# Title of the Dashboard
|
|
DASHBOARD_TITLE: HBLink3 D-APRS Dashboard
|
|
|
|
# Used for API, RSS feed link, etc
|
|
DASHBOARD_URL: http://localhost:8092
|
|
|
|
# Logo used on dashboard page
|
|
LOGO: https://raw.githubusercontent.com/kf7eel/hblink3/gps/HBlink.png
|
|
|
|
# Port to run server
|
|
DASH_PORT: 8092
|
|
|
|
# IP to run server on
|
|
DASH_HOST: 127.0.0.1
|
|
|
|
#Description of dashboard to show on main page
|
|
DESCRIPTION: Welcome to the dashboard.
|
|
|
|
# Gateway contact info displayed on about page.
|
|
CONTACT_NAME: your name
|
|
CONTACT_CALL: N0CALL
|
|
CONTACT_EMAIL: email@example.org
|
|
CONTACT_WEBSITE: https://hbl.ink
|
|
|
|
# Time format for display
|
|
TIME_FORMAT: %%H:%%M:%%S - %%m/%%d/%%y
|
|
|
|
# Center dashboard map over these coordinates
|
|
MAP_CENTER_LAT: 47.00
|
|
MAP_CENTER_LON: -120.00
|
|
ZOOM_LEVEL: 7
|
|
|
|
# List and preview of some map themes at http://leaflet-extras.github.io/leaflet-providers/preview/
|
|
# The following are options for map themes and just work, you should use one of these: “OpenStreetMap”, “Stamen” (Terrain, Toner, and Watercolor),
|
|
MAP_THEME: Stamen Toner
|
|
|
|
#####################################################################
|
|
# OPENBRIDGE INSTANCES - DUPLICATE SECTION FOR MULTIPLE CONNECTIONS
|
|
# OpenBridge is a protocol originall created by DMR+ for connection between an
|
|
# IPSC2 server and Brandmeister. It has been implemented here at the suggestion
|
|
# of the Brandmeister team as a way to legitimately connect HBlink to the
|
|
# Brandemiester network.
|
|
# It is recommended to name the system the ID of the Brandmeister server that
|
|
# it connects to, but is not necessary. TARGET_IP and TARGET_PORT are of the
|
|
# Brandmeister or IPSC2 server you are connecting to. PASSPHRASE is the password
|
|
# that must be agreed upon between you and the operator of the server you are
|
|
# connecting to. NETWORK_ID is a number in the format of a DMR Radio ID that
|
|
# will be sent to the other server to identify this connection.
|
|
# other parameters follow the other system types.
|
|
#
|
|
# ACLs:
|
|
# OpenBridge does not 'register', so registration ACL is meaningless.
|
|
# Proper OpenBridge passes all traffic on TS1.
|
|
# HBlink can extend OPB to use both slots for unit calls only.
|
|
# Setting "BOTH_SLOTS" True ONLY affects unit traffic!
|
|
# Otherwise ACLs work as described in the global stanza
|
|
|
|
[OBP-1]
|
|
MODE: OPENBRIDGE
|
|
ENABLED: True
|
|
IP:
|
|
PORT: 62035
|
|
NETWORK_ID: 3129100
|
|
PASSPHRASE: password
|
|
TARGET_IP: 1.2.3.4
|
|
TARGET_PORT: 62035
|
|
BOTH_SLOTS: True
|
|
USE_ACL: True
|
|
SUB_ACL: DENY:1
|
|
TGID_ACL: PERMIT:ALL
|
|
|
|
# MASTER INSTANCES - DUPLICATE SECTION FOR MULTIPLE MASTERS
|
|
# HomeBrew Protocol Master instances go here.
|
|
# IP may be left blank if there's one interface on your system.
|
|
# Port should be the port you want this master to listen on. It must be unique
|
|
# and unused by anything else.
|
|
# Repeat - if True, the master repeats traffic to peers, False, it does nothing.
|
|
#
|
|
# MAX_PEERS -- maximun number of peers that may be connect to this master
|
|
# at any given time. This is very handy if you're allowing hotspots to
|
|
# connect, or using a limited computer like a Raspberry Pi.
|
|
#
|
|
# ACLs:
|
|
# See comments in the GLOBAL stanza
|
|
[MASTER-1]
|
|
MODE: MASTER
|
|
ENABLED: False
|
|
STATIC_APRS_POSITION_ENABLED: False
|
|
REPEAT: True
|
|
MAX_PEERS: 10
|
|
EXPORT_AMBE: False
|
|
IP:
|
|
PORT: 54000
|
|
PASSPHRASE: password
|
|
GROUP_HANGTIME: 5
|
|
USE_ACL: True
|
|
REG_ACL: DENY:1
|
|
SUB_ACL: DENY:1
|
|
TGID_TS1_ACL: PERMIT:ALL
|
|
TGID_TS2_ACL: PERMIT:ALL
|
|
|
|
# PEER INSTANCES - DUPLICATE SECTION FOR MULTIPLE PEERS
|
|
# There are a LOT of errors in the HB Protocol specifications on this one!
|
|
# MOST of these items are just strings and will be properly dealt with by the program
|
|
# The TX & RX Frequencies are 9-digit numbers, and are the frequency in Hz.
|
|
# Latitude is an 8-digit unsigned floating point number.
|
|
# Longitude is a 9-digit signed floating point number.
|
|
# Height is in meters
|
|
# Setting Loose to True relaxes the validation on packets received from the master.
|
|
# This will allow HBlink to connect to a non-compliant system such as XLXD, DMR+ etc.
|
|
#
|
|
# ACLs:
|
|
# See comments in the GLOBAL stanza
|
|
|
|
[REPEATER-1]
|
|
MODE: PEER
|
|
ENABLED: False
|
|
LOOSE: False
|
|
EXPORT_AMBE: False
|
|
IP:
|
|
PORT: 54001
|
|
MASTER_IP: 172.16.1.1
|
|
MASTER_PORT: 54000
|
|
PASSPHRASE: homebrew
|
|
CALLSIGN: W1ABC
|
|
RADIO_ID: 312000
|
|
RX_FREQ: 449000000
|
|
TX_FREQ: 444000000
|
|
TX_POWER: 25
|
|
COLORCODE: 1
|
|
SLOTS: 1
|
|
LATITUDE: 38.0000
|
|
LONGITUDE: -095.0000
|
|
HEIGHT: 75
|
|
LOCATION: Anywhere, USA
|
|
DESCRIPTION: This is a cool repeater
|
|
URL: www.w1abc.org
|
|
SOFTWARE_ID: 20170620
|
|
PACKAGE_ID: MMDVM_HBlink
|
|
GROUP_HANGTIME: 5
|
|
OPTIONS:
|
|
USE_ACL: True
|
|
SUB_ACL: DENY:1
|
|
TGID_TS1_ACL: PERMIT:ALL
|
|
TGID_TS2_ACL: PERMIT:ALL
|
|
|
|
[ECHO]
|
|
MODE: PEER
|
|
ENABLED: True
|
|
LOOSE: False
|
|
EXPORT_AMBE: False
|
|
IP:
|
|
PORT: 54073
|
|
MASTER_IP: localhost
|
|
MASTER_PORT: 54072
|
|
passphrase: passw0rd
|
|
CALLSIGN: ECHO
|
|
RADIO_ID: 9999
|
|
RX_FREQ: 000000000
|
|
TX_FREQ: 000000000
|
|
TX_POWER: 0
|
|
COLORCODE: 1
|
|
SLOTS: 1
|
|
LATITUDE: 00.0000
|
|
LONGITUDE: 000.0000
|
|
HEIGHT: 0
|
|
LOCATION: This Server
|
|
DESCRIPTION: Echo Server
|
|
URL: www.github.com/kf7eel/hblink3
|
|
SOFTWARE_ID: 20170620
|
|
PACKAGE_ID: MMDVM_HBlink
|
|
GROUP_HANGTIME: 5
|
|
OPTIONS:
|
|
USE_ACL: True
|
|
SUB_ACL: DENY:1
|
|
TGID_TS1_ACL: PERMIT:ALL
|
|
TGID_TS2_ACL: PERMIT:ALL
|
|
|
|
[XLX-1]
|
|
MODE: XLXPEER
|
|
ENABLED: False
|
|
LOOSE: True
|
|
EXPORT_AMBE: False
|
|
IP:
|
|
PORT: 54002
|
|
MASTER_IP: 172.16.1.1
|
|
MASTER_PORT: 62030
|
|
PASSPHRASE: passw0rd
|
|
CALLSIGN: W1ABC
|
|
RADIO_ID: 312000
|
|
RX_FREQ: 449000000
|
|
TX_FREQ: 444000000
|
|
TX_POWER: 25
|
|
COLORCODE: 1
|
|
SLOTS: 1
|
|
LATITUDE: 38.0000
|
|
LONGITUDE: -095.0000
|
|
HEIGHT: 75
|
|
LOCATION: Anywhere, USA
|
|
DESCRIPTION: This is a cool repeater
|
|
URL: www.w1abc.org
|
|
SOFTWARE_ID: 20170620
|
|
PACKAGE_ID: MMDVM_HBlink
|
|
GROUP_HANGTIME: 5
|
|
XLXMODULE: 4004
|
|
USE_ACL: True
|
|
SUB_ACL: DENY:1
|
|
TGID_TS1_ACL: PERMIT:ALL
|
|
TGID_TS2_ACL: PERMIT:ALL
|
|
|