On startup, ewhtmlemail reads the configuration file named on the command line. Commands in this file set up all parameters. In the control file, lines may begin with a valid ewhtmlemail command (listed below) or with one of 2 special characters:
Command names must be typed in the control file exactly as shown in this document (upper/lower case matters!).# marks the line as a comment (example: # This is a comment).
@ allows control files to be nested; one control file can be
accessed from another with the command "@" followed by
a string representing the path name of the next control file
(example: @pick_ew.d).
# # ewhtmlemail's configuration file # MyModuleId MOD_EWHTMLEMAIL # This instance of ewhtmlemail InRing HYPO_RING # Transport ring to find hyp2000arc msg HeartbeatInt 30 # Heartbeat interval in seconds LogFile 1 # If 0. don't write logfile; if 1. do Debug 0 # If 1, print debugging msgs DebugEmail 0 # If 1, echo the email command used GetLogo INST_WILDCARD MOD_WILDCARD # Limit the sources of hyp2000arc msgs MaxMessageSize 16384 # hyp2000arc messages can be very large site_file cvarg.hinv # hypoinverse format to locate stations HTMLFile ~/ewhtmlemail/em # html file folder and format EmailProgram /usr/sbin/sendmail # sendmail or blat.exe UseBlat # Specifies use of blat.exe EmailRecipient recipient1@email.com # List of email recipients, maximum 20 EmailRecipient recipient2@email.com EmailRecipient recipient3@email.com EmailRecipientWithMinMag test4@mail.com 2.0 # only send if magnitude is >= 2.0 EmailRecipientWithMinMagAndDist test5@mail.com 2.0 3.0 # only if mag is >= 2.0 and dist from event <=3km StyleFile ~/ewhtmlemail.css # Location of the style file MAX_SAMPLES 100000 # Maximum sample count to request WSTimeout 5 # Waveserver timeout in seconds WaveServer 192.168.0.1:16022 # List of waveservers, maximum 10 WaveServer 192.168.0.2:16022 # format aaa.bbb.ccc.ddd:portno TimeMargin 10.0 # time margin (in seconds) for downloading from waveservers (default 10) MaxDuration 60.0 # maximum duration (in seconds) of trace (default 144) TraceWidth 1200 # sets width of traces (default 600) TraceHeight 200 # sets height of traces (Default 60) UseML # optional flag to turn on TYPE_MAGNITUDE (localmag) use UseMW # optional feature to turn on TYPE_MAGNITUDE and detect MW magnitude messages MagWaitSeconds 200 # optional delay before releasing an email that may have an ML or MW DataCenter "My data Center" # optional DataCenter value used in the table header MinQuality C # only show C or better quality events StaticMapType satellite # map type for the google static map SubjectPrefix "Preliminary Location" # optional subject prefix for emails (defaults to EWalert) UseUTC # optional flag to use UTC in the emails (localtime zone of PC is default) ShortHeader # optional flag to compress the header table and leave less whitespace ShowDetail # optional flag to show more event information (errh, errz, gap, rms, etc) DontShowMd # optional flag to remove Md from the report DontUseMd # optional flag to not use Md for email decisions for any EmailRecipientWithMinMag UseRegionName # optional flag to use flynn-enghdal region names in table at top of email CenterPoint 45.0 -121.0 # optional lat and lon for EmailRecipientWithMinMagAndDist SPfilter # optional flag to enable shortperiod filtering GMTmap # optional flag to produce GMT data Mercator # Mercator projection for GMT map (default) Albers # Albers projection for GMT map StationNames # show station names in the GMT map Cities /home/earthworm/run/params/cities.txt # cities to be printed in the GMT map MapLegend /home/earthworm/run/params/ewhtmlemail.legend # map legend to be drawn in the GMT map KML ${EW_DATA_DIR}/web/kml web/kml_preamble.txt # dir for kml file and kml preamblefile BlatOptions "-server localhost:1099 -profile gmailsmtp" # optional blat settings (i.e., stunnel, gmail smtp)
Earthworm system setup: + MyModuleId Module id for pick_ew (mandatory) + InRing Shared memory region for input (mandatory) + HeartBeatInt Interval between heartbeats (mandatory) + GetLogo Control message sources (mandatory) + MaxMessageSize Maximum size of incoming HYP2000ARC messages (mandatory) Processing: + site_file Hypoinverse stations file (mandatory) + HTMLFile Output folder and prefix for html file (mandatory) + EmailProgram Location of the sendmail program (optional) + UseBlat Specifies use of blat.exe (optional) + EmailRecipient List of email recipients (optional) + StyleFile Location of the style sheet file (optional) + WaveServer Waveserver address (optional) + MAX_SAMPLES Maximum number of samples to request (optional) + WSTimeout Waveserver timeout (optional) + UseML Flag to turn on TYPE_MAGNITUDE (localmag) use (optional) + UseMW Flag to turn on TYPE_MAGNITUDE (MW) use (optional) + MagWaitSeconds Delay before releasing an email (optional) Output Control: + LogFile Log flag (mandatory) + Debug Debugging flag (optional) + DebugEmail Debugging flag (optional) + DataCenter DataCenter value used in table header (optional) + MinQuality MinQuality email sending filter (optional) + ShortHeader Compress header table and leave less whitespace (optional) + StaticMapType Map type for the google static map (optional)
command arg1 processed by function
DataCenter CHAR config output
Optional DataCenter value used in table headers. Value should be enclosed in quotes.
Debug flag config output
Sets a flag to control the volume of debugging information output by ewhtmlemail. If flag is zero, no debug info is written. If flag is non-zero, debug information is written to the logfile and screen.Default: 0 Sample: Debug 0
DebugEmail flag config output
Sets a flag to control whether the email command used is logged by ewhtmlemail. If flag is zero, the command is not logged. If flag is non-zero, the command is written to the logfile and screen.Default: 0 Sample: DebugEmail 0
EmailProgram path_to_email process_message processing
Sets the path to the email program as path_to_email. Note that this path must include the name of the program. Usually set to "/usr/sbin/sendmail" or "blat.exe". If EmailProgram is not specified (commented out), ewhtmlemail will only save html files with the events to the folder defined by HTMLFile.Default: none Sample: EmailProgram /usr/sbin/sendmail
EmailRecipient recipient process_message Processing
Registers one recipient email address with the ewhtmlemail. ewhtmlemail will send every recipient an email message on the detected events. Up to 20 "EmailRecipient" commands may be issued, but none are required. Each recipient address can be up to 60 characters long.Default: none Sample: EmailRecipient jdoe@yourmachine.edu
GetLogo instID modID config earthworm setup
Gets event messages (TYPE_HYP2000ARC) originating from the installation and module IDs given by instID and modID, respectively. Each ID is a character string. Valid strings are listed in earthworm.d.Default: none Sample: GetLogo INST_CIVISA MOD_EQPROC
HeartBeatInt nsec config earthworm setup
Defines the number of seconds, nsec, between TYPE_HEARTBEAT messages issued by ewhtmlemail.Default: none Sample: HeartBeatInt 30
HTMLFile filename process_message Processing
Base name for the html files generated by ewhtmlemail. The actual filenames will be given by "filename_EventID.html". The term EventID is the event number assigned by binder.Default: none Sample: HTMLFile home/earthworm/events/ew
InRing ring config earthworm setup
Tells ewhtmlemail which shared memory region to find input events. ring is a character string (valid strings are listed in earthworm.d) that relates (in earthworm.d) to a unique number for the key to the shared memory region. ewhtmlemail will read only TYPE_HYP2000ARC messages.Default: none Sample: InRing HYPO_RING
LogFile switch config output
Sets the on-off switch for writing a log file to disk. If switch is 0, no log file will be written. If switch is 1, statmgr will write a daily log file(s) called statmgrxx.log_yymmdd where xx is statmgr's module id (set with "MyModuleId" command) and yymmdd is the current UTC date (ex: 960123) on the system clock. The file(s) will be written in the EW_LOG directory (environment variable).Default: none Sample: LogFile 0
MagWaitSeconds seconds process_message Processing
If UseML and/or UseMW is specified then this command sets the length of time to delay before releasing an email that may (or may not) have an ML or MW magnitude. The time is in seconds.Default: 5 Sample: MagWaitSeconds 200
MaxMessageSize size process_message earthworm setup
Specifies the maximum size in bytes of the TYPE_HYP2000ARC messages to retrieve from the inRing. Note that HYP2000ARC messages may be very large.Default: none Sample: MaxMessageSize 16384
MAX_SAMPLES nsamp process_message earthworm setup
Specifies the maximum number of samples, nsamp, to retrieve from a WaveServer for any given station.Default: 60000 Sample: MAX_SAMPLES 60000
MinQuality CHAR config output
Sets a minimum quality level for sending emails. CHAR can be A,B,C, or D. KML or HTML files will still be created but not sent.
MyModuleId mod_id config earthworm setup
Sets the module id. mod_id is a character string (valid strings are listed in earthworm.d) that relates (in earthworm.d) to a unique single-byte number. If more than one ewhtmlemail is running at the same time, they must be given different module ids!Default: none Sample: MyModuleId MOD_EWHTMLEMAIL
ShortHeader CHAR config output
Optional flag to compress the header table and leave less whitespace.
site_file filename process_message Processing
Enters site codes and station locations into the site table by reading a HYPOINVERSE format station file called filename. In this file, stations are described by a 5-letter site name, a 2-letter network code and a 3-letter component code. The picker and binder must also be using this station-naming convention. The format of the file is described under "HYPOINVERSE STATION FILE FOR FULL 12-LETTER (S-N-C-L) CHANNEL NAMES".Default: none Sample: site_file cvarg.hinv
StaticMapType CHAR config output
Optional map type for the google static map. Can be: terrain, satellite, roadmap or hybrid (satellite+roads).Default: hybrid Sample: StaticMapType satellite
StyleFile filename process_message Processing
Name of the optional cascading style sheet file to be embedded in the output html files. See information on the structure below.Default: none Sample: StyleFile ewhtmlemail.css
UseBlat process_message Processing
Specifies that the EmailProgram is blat type, which takes the syntax "blat.exe file -to recipient". Make sure EmailProgram has the absolute path to blat.exe if it is not in your path, but set the EmailProgram entry regardless.
UseML process_message Processing
If specified then ewhtmlemail will detect and use 'ML' magnitude messages generated by the localmag module.
UseMW process_message Processing
If specified then ewhtmlemail will detect and use 'MW' magnitude messages.
WaveServer ip:port process_message Processing
IP address and port for a waveserver. A Maximum of 10 waveservers may be specified. ewhtmlemail will try to contact each waveserver in the specified order to retrieve waveforms for the reporting stations.Default: none Sample: WaveServer 192.168.0.1:16022
WSTimeout nsec process_message Processing
WaveServer timeout in secondsDefault: 5 Sample: WSTimeout 5
Ewhtmlemail allows minimal configuration of the graphical aspects of the generated html files by embedding a cascaded style sheet. As such, standard css rules apply when customizing this file. Not all elements of the generated html are accessible. Particularly, the characteristics of the google map and google charts are currently hardcoded in ewhtmlemail. Nonetheless, the following Classes and IDs are available:
DataTable ID of the table containing the origin details alt Class of every second row of the data table. MapClass Class of the image containing the google map. WaveTable ID of the table containing the waveforms. WaveTableTextRowClass Class of the rows within the WaveTable that have a text line with the station name. WaveTableTraceRowClass Class of the rows within the WaveTable that have a waveform. This waveform is represented as an image extracted from google charts API.
/* Style Sheet for ewhtmlemail Currently, the main html ids to consider for the alert email are: DataTable -> The initial table with the basic event info WaveTable -> The table with all the traces This file is embedded in the automatically generated html email as is. Make sure that you know what you are doing before changing it. */ #DataTable { font-family: Sans-serif; font-size: 12; border-collapse: collapse; } #DataTable th { background-color: #000060; color: #DDDDFF; } #DataTable tr td { background-color: white; color: #000060; } #DataTable tr.alt td { background-color: #DDDDFF; color: #000060; } #WaveTable { font-family: Sans-serif; font-size: 10; border: 1px solid black; border-collapse: collapse; } #WaveTable th { background-color: #000060; color: white; } #WaveTable tr.WaveTableTextRowClass td { background-color: #DDDDFF; color: #000060; } #WaveTable tr.WaveTableTraceRowClass td { height: 80px; vertical-align: top; } .TraceClass { max-height: 60px; height: auto; height: 60px; max-width: 600px; width: auto; width: 600px; }