You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
494 lines
11 KiB
Groff
494 lines
11 KiB
Groff
.\" Man page generated from reStructuredText.
|
|
.
|
|
.TH "SCVOICE" "1" "Jan 10, 2023" "5.3.0" "SeisComP"
|
|
.SH NAME
|
|
scvoice \- SeisComP Documentation
|
|
.
|
|
.nr rst2man-indent-level 0
|
|
.
|
|
.de1 rstReportMargin
|
|
\\$1 \\n[an-margin]
|
|
level \\n[rst2man-indent-level]
|
|
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
-
|
|
\\n[rst2man-indent0]
|
|
\\n[rst2man-indent1]
|
|
\\n[rst2man-indent2]
|
|
..
|
|
.de1 INDENT
|
|
.\" .rstReportMargin pre:
|
|
. RS \\$1
|
|
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
|
|
. nr rst2man-indent-level +1
|
|
.\" .rstReportMargin post:
|
|
..
|
|
.de UNINDENT
|
|
. RE
|
|
.\" indent \\n[an-margin]
|
|
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.nr rst2man-indent-level -1
|
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
|
..
|
|
.sp
|
|
\fBReal time voice alert.\fP
|
|
.SH DESCRIPTION
|
|
.sp
|
|
This tool runs an external script whenever an event has been created or updated.
|
|
It can also run a script in case an amplitude of a particular type or a
|
|
preliminary origin (heads\-up message) has been sent. The common purpose for
|
|
this tool is to play a sound or to convert a message to speech using external
|
|
tools like festival or espeak.
|
|
There are three possible trigger mechanisms for calling scripts:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
Event creation/update
|
|
.IP \(bu 2
|
|
Amplitude creation
|
|
.IP \(bu 2
|
|
Origin creation (with status = preliminary)
|
|
.UNINDENT
|
|
.sp
|
|
Although this tool was designed to alert the user acoustically it can also be
|
|
used to send e\-mails, sms or to do any other kind of alert. scvoice can only
|
|
run one script per call type at a time! A template (scalert) Python script with
|
|
more options has been added to \fISeisComP\fP to be used as source for custom notifications.
|
|
.SH EXAMPLES
|
|
.SS Event script
|
|
.sp
|
|
The following script is used as event script. It requires
|
|
\fI\%festival\fP which should be
|
|
available in almost any Linux distribution.
|
|
.sp
|
|
\fBIMPORTANT:\fP
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
When saving the scripts given below do not forget to set the executable
|
|
bit otherwise scvoice cannot call the scripts. In Linux just run:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
chmod +x /path/to/file
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.IP 1. 3
|
|
Save an executable script file, e.g., under, e.g. \fB~/.seiscomp/event.sh\fP:
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
#!/bin/sh
|
|
if [ "$2" = "1" ]; then
|
|
echo " $1" | sed \(aqs/,/, ,/g\(aq | festival \-\-tts;
|
|
else
|
|
echo "Event updated, $1" | sed \(aqs/,/, ,/g\(aq | festival \-\-tts;
|
|
fi
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.IP 2. 3
|
|
Add the file to the configuration of \fI\%scripts.event\fP in the file
|
|
\fBSEISCOMP_ROOT/etc/scvoice.cfg\fP or \fB~/.seiscomp/scvoice.cfg\fP:
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
scripts.event = /home/sysop/.seiscomp/event.sh
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Amplitude script
|
|
.INDENT 0.0
|
|
.IP 1. 3
|
|
Save an executable script file, e.g., under \fB~/.seiscomp/amplitude.sh\fP
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
#!/bin/sh
|
|
# Play a wav file with a particular volume
|
|
# derived from the amplitude itself.
|
|
playwave ~/.seiscomp/beep.wav \-v $3
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.IP 2. 3
|
|
Add the file to the configuration of \fI\%scripts.amplitude\fP in the
|
|
file \fBSEISCOMP_ROOT/etc/scvoice.cfg\fP or \fB~/.seiscomp/scvoice.cfg\fP:
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
scripts.amplitude = /home/sysop/.seiscomp/amplitude.sh
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Alert script
|
|
.INDENT 0.0
|
|
.IP 1. 3
|
|
Create a sound file \fBsiren.wav\fP for accoustic alerts.
|
|
.IP 2. 3
|
|
Save an executable script file under, e.g., \fB~/.seiscomp/alert.sh\fP:
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
#!/bin/sh
|
|
playwave /home/sysop/.seiscomp/siren.wav
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.IP 3. 3
|
|
Add the script filename to the configuration of \fI\%scripts.alert\fP in
|
|
the file \fBSEISCOMP_ROOT/etc/scvoice.cfg\fP or \fB~/.seiscomp/scvoice.cfg\fP\&.
|
|
.INDENT 3.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
scripts.alert = /home/sysop/.seiscomp/alert.sh
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SH MODULE CONFIGURATION
|
|
.nf
|
|
\fBetc/defaults/global.cfg\fP
|
|
\fBetc/defaults/scvoice.cfg\fP
|
|
\fBetc/global.cfg\fP
|
|
\fBetc/scvoice.cfg\fP
|
|
\fB~/.seiscomp/global.cfg\fP
|
|
\fB~/.seiscomp/scvoice.cfg\fP
|
|
.fi
|
|
.sp
|
|
.sp
|
|
scvoice inherits global options\&.
|
|
.INDENT 0.0
|
|
.TP
|
|
.B firstNew
|
|
Default: \fBfalse\fP
|
|
.sp
|
|
Type: \fIboolean\fP
|
|
.sp
|
|
Treat an event as new event when it is seen the first time.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B agencyIDs
|
|
Type: \fIlist:string\fP
|
|
.sp
|
|
Define a white list of agencyIDs to alert an event. The
|
|
agencyID is extracted from the preferred origin of the event.
|
|
If this list is empty, all agencies are allowed.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B poi.message
|
|
Type: \fIstring\fP
|
|
.sp
|
|
The default message string for the event\-script is
|
|
"earthquake, [HOURS] hours [MINS] minutes ago, [DESC],
|
|
magnitude [MAG], depth [DEP] kilometers" whereas [DESC]
|
|
is the string given in the event.description attribute.
|
|
This string can be overwritten using one of the following
|
|
options. There are three placeholders that can be used:
|
|
@region@, @dist@ and @poi@.
|
|
Example: "@region@, @dist@ kilometers from @poi@ away".
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B poi.maxDist
|
|
Default: \fB20\fP
|
|
.sp
|
|
Type: \fIdouble\fP
|
|
.sp
|
|
Unit: \fIdeg\fP
|
|
.sp
|
|
When using the nearest point of interest (city) as part of the
|
|
message string, specify the maximum distance in degrees from the
|
|
event. Any point of interest farther away will be ignored.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B poi.minPopulation
|
|
Default: \fB50000\fP
|
|
.sp
|
|
Type: \fIdouble\fP
|
|
.sp
|
|
Minimum population for a city to become a point of interest.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B scripts.amplitude
|
|
Type: \fIstring\fP
|
|
.sp
|
|
Specify the script to be called if an amplitude
|
|
arrives, network\-, stationcode and amplitude are passed
|
|
as parameters $1, $2 and $3.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B scripts.alert
|
|
Type: \fIstring\fP
|
|
.sp
|
|
Specify the script to be called if a preliminary
|
|
origin arrives, latitude and longitude are passed as
|
|
parameters $1 and $2.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B scripts.event
|
|
Type: \fIstring\fP
|
|
.sp
|
|
Specify the script to be called when an event has been
|
|
declared; the message string, a flag (1=new event,
|
|
0=update event), the EventID, the arrival count and the
|
|
magnitude (optional when set) are passed as parameter
|
|
$1, $2, $3, $4 and $5.
|
|
.UNINDENT
|
|
.SH COMMAND-LINE OPTIONS
|
|
.sp
|
|
\fBscvoice [options]\fP
|
|
.SS Generic
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-h, \-\-help
|
|
Show help message.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-V, \-\-version
|
|
Show version information.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-config\-file arg
|
|
Use alternative configuration file. When this option is
|
|
used the loading of all stages is disabled. Only the
|
|
given configuration file is parsed and used. To use
|
|
another name for the configuration create a symbolic
|
|
link of the application or copy it. Example:
|
|
scautopick \-> scautopick2.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-plugins arg
|
|
Load given plugins.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-D, \-\-daemon
|
|
Run as daemon. This means the application will fork itself
|
|
and doesn\(aqt need to be started with &.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-auto\-shutdown arg
|
|
Enable/disable self\-shutdown because a master module shutdown.
|
|
This only works when messaging is enabled and the master
|
|
module sends a shutdown message (enabled with \-\-start\-stop\-msg
|
|
for the master module).
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-shutdown\-master\-module arg
|
|
Set the name of the master\-module used for auto\-shutdown.
|
|
This is the application name of the module actually
|
|
started. If symlinks are used, then it is the name of
|
|
the symlinked application.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-shutdown\-master\-username arg
|
|
Set the name of the master\-username of the messaging
|
|
used for auto\-shutdown. If "shutdown\-master\-module" is
|
|
given as well, this parameter is ignored.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-first\-new
|
|
Overrides configuration parameter \fI\%firstNew\fP\&.
|
|
.UNINDENT
|
|
.SS Verbosity
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-verbosity arg
|
|
Verbosity level [0..4]. 0:quiet, 1:error, 2:warning, 3:info,
|
|
4:debug.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-v, \-\-v
|
|
Increase verbosity level (may be repeated, eg. \-vv).
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-q, \-\-quiet
|
|
Quiet mode: no logging output.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-component arg
|
|
Limit the logging to a certain component. This option can
|
|
be given more than once.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-s, \-\-syslog
|
|
Use syslog logging backend. The output usually goes to
|
|
/var/lib/messages.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-l, \-\-lockfile arg
|
|
Path to lock file.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-console arg
|
|
Send log output to stdout.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-debug
|
|
Execute in debug mode.
|
|
Equivalent to \-\-verbosity=4 \-\-console=1 .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-log\-file arg
|
|
Use alternative log file.
|
|
.UNINDENT
|
|
.SS Messaging
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-u, \-\-user arg
|
|
Overrides configuration parameter \fBconnection.username\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-H, \-\-host arg
|
|
Overrides configuration parameter \fBconnection.server\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-t, \-\-timeout arg
|
|
Overrides configuration parameter \fBconnection.timeout\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-g, \-\-primary\-group arg
|
|
Overrides configuration parameter \fBconnection.primaryGroup\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-S, \-\-subscribe\-group arg
|
|
A group to subscribe to.
|
|
This option can be given more than once.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-content\-type arg
|
|
Overrides configuration parameter \fBconnection.contentType\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-start\-stop\-msg arg
|
|
Set sending of a start and a stop message.
|
|
.UNINDENT
|
|
.SS Database
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-db\-driver\-list
|
|
List all supported database drivers.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-d, \-\-database arg
|
|
The database connection string, format:
|
|
\fI\%service://user:pwd@host/database\fP\&.
|
|
"service" is the name of the database driver which
|
|
can be queried with "\-\-db\-driver\-list".
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-config\-module arg
|
|
The config module to use.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-inventory\-db arg
|
|
Load the inventory from the given database or file, format:
|
|
[\fI\%service://]location\fP .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-db\-disable
|
|
Do not use the database at all
|
|
.UNINDENT
|
|
.SS Alert
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-amp\-type arg
|
|
Specify the amplitude type to listen to.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-amp\-script arg
|
|
Overrides configuration parameter \fI\%scripts.amplitude\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-alert\-script arg
|
|
Overrides configuration parameter \fI\%scripts.alert\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-event\-script arg
|
|
Overrides configuration parameter \fI\%scripts.event\fP\&.
|
|
.UNINDENT
|
|
.SS Cities
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-max\-dist arg
|
|
Overrides configuration parameter \fI\%poi.maxDist\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-min\-population arg
|
|
Overrides configuration parameter \fI\%poi.minPopulation\fP\&.
|
|
.UNINDENT
|
|
.SS Debug
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-E, \-\-eventid arg
|
|
Specify event ID that is used for testing.
|
|
After running the alert scripts scvoice will exit.
|
|
.UNINDENT
|
|
.SH AUTHOR
|
|
gempa GmbH, GFZ Potsdam
|
|
.SH COPYRIGHT
|
|
gempa GmbH, GFZ Potsdam
|
|
.\" Generated by docutils manpage writer.
|
|
.
|