Provided by: svxreflector_24.02-3_amd64 bug

NAME

       svxreflector.conf - Configuration file for the SvxReflector conference server audio reflector

DESCRIPTION

       The  svxreflector  server is used to interconnect multiple SvxLink nodes into one network.  This man-page
       describe the configuration file format for it.

       SvxReflector look for configuration files in a number of places. First it tries to find a  user  specific
       configuration    file.    It    will    look    for    a    user    specific   configuration   file   in:
       $HOME/.svxlink/svxreflector.conf.  If no user specific configuration file can be found, svxreflector will
       look for the system wide configuration file /etc/svxlink/svxreflector.conf.  The  --config  command  line
       option may also be used to specify an arbitrary configuration file.

FILE FORMAT

       The  configuration file is in the famous INI-file format. A generic example of how such a file might look
       like is shown below.

         [SECTION1]
         VALUE1=1
         VALUE2="TWO "
         VAULE3="Multi "
                "line"

         [SECTION2]
         VALUE1=2

       This is a simple format that contain name=value pairs that belong to  a  section.   In  written  text,  a
       specific  configuration  variable  can  be referred to as SECTION1/VALUE2 meaning "configuration variable
       VALUE2 in section SECTION1".

       The same variable name can exist in two different sections. For example VALUE1 in section  SECTION1  have
       the value 1 and VALUE1 in section SECTION2 have the value 2. Values containing spaces at the beginning or
       end  of  the  line must be surrounded by citation characters (see SECTION1/VALUE2). Likewise with a multi
       line value (see SECTION1/VALUE3).

CONFIGURATION VARIABLES

       Here is the description of all configuration variables that svxreflector understands.  The  configuration
       variables are described section for section.

   GLOBAL
       The GLOBAL section contains application global configuration data.

       CFG_DIR
              Specify  the  path to a directory that contain additional configuration files.  If a relative path
              is specified, the path will be relative to the directory where the main configuration file is  at.
              All  files in the specified directory will be read as additional configuration. Filenames starting
              with a dot are ignored.

       TIMESTAMP_FORMAT
              This variable specifies the format of the timestamp that is written in front of each  row  in  the
              log file. The format string is in the same format as specified in the strftime(3) manual page. The
              default is "%c" which is described as: "the preferred date and time representation for the current
              locale".  The environment variables LC_TIME, LC_ALL and LANG will affect how this time format will
              look. For example, setting LC_TIME="sv_SE.UTF8" will give you  Swedish  timestamp  representation.
              Other examples of format specifiers are:

              •   %d - The day of the month as a decimal number (range 01 to 31)

              •   %b - The abbreviated month name according to the current locale

              •   %Y - The year as a decimal number including the century

              •   %H - The hour as a decimal number using a 24-hour clock (range 00 to 23)

              •   %M - The minute as a decimal number (range 00 to 59)

              •   %S - The second as a decimal number (range 00 to 61)

              So,  TIMESTAMP_FORMAT="%d  %b  %Y %H:%M:%S" would give a timestamp looking something like: "29 Nov
              2005 22:31:59".

       LISTEN_PORT
              The TCP and UDP port number to use for network communications. The default is 5300. Make  sure  to
              open this port for incoming traffic to the server on both TCP and UDP. Clients do not have to open
              any ports in their firewalls.

       SQL_TIMEOUT
              Use this configuration variable to set a time in seconds after which a clients audio is blocked if
              he has been talking for too long. The default is 0 (disabled).

       SQL_TIMEOUT_BLOCKTIME
              If  a  client has been talking for longer than the time specified in the SQL_TIMEOUT configuration
              variable he will not be able to talk again until the time  in  this  configuration  variable  have
              elapsed. If not specified, the default is one second.

       CODECS A  comma  separated list of allowed codecs. For the moment only one codec can be specified. Choose
              from the following codecs: OPUS, SPEEX, GSM, S16 (uncompressed signed 16 bit),  RAW  (uncompressed
              32 bit floats). The default is OPUS and you should have a very good reason for changing this since
              that codec provide both low bandwidth (~20kbps by default) and very good audio quality.

       TG_FOR_V1_CLIENTS
              Set  which talk group to place protocol version 1 clients in. Without this configuration version 1
              clients will not be able to use the reflector since they cannot select a talk group by themselves.
              Talk groups should normally be configured to start with the ITU-T E.212 Mobile Country Code  (MCC)
              for your country, e.g. 240 for Sweden.

       RANDOM_QSY_RANGE
              Specify  in which talk group range the reflector server should select random talk groups used when
              using the QSY functionality. The range is specified using two colon separated  values.  The  first
              one  is  the  lower  limit  and  the second value is the number of talk groups in the range. As an
              example, if set to 1239900:100 QSY talk groups will be selected from the range 1239900 to 1239999.
              The recommended lower range to use is <MCC>9900 where MCC is the ITU-T E.212 Mobile  Country  Code
              for your country, e.g. 240 for Sweden.

       HTTP_SRV_PORT
              Set  which port to use for the HTTP server. The HTTP server can be used to fetch reflector status.
              No port is set by default. Don't expose this port to  the  public  Internet.  There  are  multiple
              reasons  for  that.  The  built  in  web server is very simple and could be incompatible with some
              clients. It has not been audited for security problems so there may be security issues.  There  is
              also  the risk of some client overwhelming the reflector with requests causing disturbances in the
              reflector operation.

              Example: HTTP_SRV_PORT=8080

   USERS and PASSWORDS sections
       All users must be specified in the USERS section. Usernames  are  totally  arbitrary  but  typically  the
       callsign  is  used. The purpose is to map each username to a password. However, the password is not given
       directly but instead a reference to the PASSWORDS section is given. It's done like this so that  multiple
       nodes can share a single password.

       An example of how the USERS and PASSWORDS sections may look is given below.

         [USERS]
         SM0ABC-1=MyNodes
         SM0ABC-2=MyNodes
         SM1XYZ=SM1XYZ

         [PASSWORDS]
         MyNodes="A very strong password!"
         SM1XYZ="Another very good password?"

       This  will  set  up  SM0ABC-1 and SM0ABC-2 to use the same password specified by MyNodes in the PASSWORDS
       section. User SM1XYZ have his own password.

   Talkgroup Configuration Sections
       It is possible to set configuration parameters that are only applied to one talkgroup.  Those  parameters
       are placed in a configuration section named "TG#<talkgroup id>". Example:

         [TG#9999]
         AUTO_QSY_AFTER=300
         ALLOW=S[A-M]\\d.*|LA8PV
         SHOW_ACTIVITY=0

       The following configuration variables are valid in a talkgroup configuration section.

       AUTO_QSY_AFTER
              Set this to the number of seconds after which an automatic QSY to a random talkgroup is requested.
              This  is  typically  used to keep call channels and wide area channels clear so that stations does
              not dwell there for too long.  Auto QSY is only triggered directly aftar a talker stop event.  The
              default is that auto QSY is disabled (AUTO_QSY_AFTER=0).

       ALLOW  A regular expression that must match the whole callsign of the  nodes  that  try  to  select  this
              talkgroup.   The regular expression standard used is the same as for ECMAScript with the exception
              that the backslash special patterns (e.g.  \s, \d etc) must be  expressed  with  double  backslash
              notation (e.g. \\s, \\d etc).

              An  example that match most Swedish callsigns and a specific Norwegian one is "S[A-M]\\d.*|LA8PV".
              That expression will for example match LA8PV, SM0SVX, SK3W, SA7ABC etc.

       SHOW_ACTIVITY
              If set to 0, do not indicate in the http status message when the talkgroup is in use  by  a  node.
              Default is 1 = show activity.

FILES

       /etc/svxlink/svxreflector.conf
              The system wide configuration file.

       ~/.svxlink/svxreflector.conf
              Per user configuration file.

       /etc/svxlink/svxreflector.d/*
              Additional configuration files. This directory is setup by the CFG_DIR configuration variable.

AUTHOR

       Tobias Blomberg (SM0SVX) <sm0svx at svxlink dot org>

REPORTING BUGS

       Bugs should be reported using the issue tracker at https://github.com/sm0svx/svxlink.

       Questions  about  SvxLink  should  not be asked using the issue tracker. Instead use the group set up for
       this purpose at groups.io: https://groups.io/g/svxlink

SEE ALSO

       svxreflector(1), svxlink(1), svxlink.conf(5),

Linux                                              APRIL 2021                               SVXREFLECTOR.CONF(5)