494 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			494 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\" Man page generated from reStructuredText.
 | 
						|
.
 | 
						|
.
 | 
						|
.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
 | 
						|
..
 | 
						|
.TH "SCVOICE" "1" "Oct 14, 2025" "6.9.1" "SeisComP"
 | 
						|
.SH NAME
 | 
						|
scvoice \- SeisComP Documentation
 | 
						|
.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 (\fI\%scalert\fP) 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 [ \(dq$2\(dq = \(dq1\(dq ]; then
 | 
						|
echo \(dq $1\(dq | sed \(aqs/,/, ,/g\(aq   | festival \-\-tts;
 | 
						|
else
 | 
						|
echo \(dqEvent updated, $1\(dq | 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 \fI\%global options\fP\&.
 | 
						|
.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
 | 
						|
\(dqearthquake, [HOURS] hours [MINS] minutes ago, [DESC],
 | 
						|
magnitude [MAG], depth [DEP] kilometers\(dq 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: \(dq@region@, @dist@ kilometers from @poi@ away\(dq.
 | 
						|
.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 \(dqshutdown\-master\-module\(dq 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 \fI\%connection.username\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-H, \-\-host arg
 | 
						|
Overrides configuration parameter \fI\%connection.server\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-t, \-\-timeout arg
 | 
						|
Overrides configuration parameter \fI\%connection.timeout\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-g, \-\-primary\-group arg
 | 
						|
Overrides configuration parameter \fI\%connection.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 \fI\%connection.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\&.
 | 
						|
\(dqservice\(dq is the name of the database driver which
 | 
						|
can be queried with \(dq\-\-db\-driver\-list\(dq.
 | 
						|
.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.
 | 
						|
.
 |