root/website/index-original.html

Revision 112:3edb8870f741, 14.3 KB (checked in by cfreeze@…, 3 years ago)

save off original website

Line 
1<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
2<html><head>
3   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4   <meta name="Author" content="Rory McManus">
5   
6<title>StormSiren Personal Severe Weather Alert System</title></head>
7
8<body>
9
10<center>
11        <h1>StormSiren Personal Severe Weather Alert System</h1>
12</center>
13
14<h2>Contents</h2>
15<dl>
16<dd><a href="#description">Description</a></dd>
17<dd><a href="#status">Status</a></dd>
18<dd><a href="#technical">Technical Info</a></dd>
19<dd><a href="#license">License</a></dd>
20<dd><a href="#download">Download</a></dd>
21<dd><a href="#installation">Installation</a></dd>
22<dd><a href="#running">Running the Program</a></dd>
23<dd><a href="#motivation">Motivation for StormSiren</a></dd>
24</dl>
25
26<h2><a name="description">Description</a></h2>
27
28<p>Awareness of severe weather hazards can save
29lives.  The <a href="http://www.nws.noaa.gov">National Weather
30Service</a> and their many special divisions such as the
31<a href="http://www.spc.noaa.gov/">Storm Prediction Center</a> do a
32great job of providing severe weather forecasting and detection. 
33Television and radio stations, web sites, and other media help convey
34this information to the general public.  But unless you're watching,
35listening, or surfing when the information comes out, you may not be
36aware of it.  The goal of <strong>StormSiren</strong> is to try and
37help fill that gap.</p>
38
39<P><strong>StormSiren</strong> is a personal severe weather monitoring
40tool that communicates information from National Weather Service issued
41bulletins on potential and imminent hazardous weather.  The program is
42designed to run via a scheduling program (such as cron or the windows
43task scheduler) and scan the NWS Interactive Weather Information Network
44for watches and warnings affecting user specified locations.  When such
45bulletins are detected, the program sends a concise summary of the alert
46to one or more devices via SMTP, such as a pager, SMS capable wireless
47phone, or standard e-mail account.  The summaries are designed to fit
48within a 160 character display, and contain the type of hazard, the
49affected counties and cities defined by the user, and the issue and
50expiration times of the bulletin.</p>
51
52<h2><a name="status">Status</a></h2>
53
54<p><strong>StormSiren</strong> was first developed in late summer of
552002. It was released under the GNU Public License in February 2003, and
56underwent several improvements over the course of the year. By the end of the
572003 severe weather season, StormSiren had proven itself as stable, and in
58February 2004, version 1.0 was officially announced. </p>
59
60<h2><a name="technical">Technical Info</a></h2>
61
62<p>This simple program is written in the Python programming language. 
63It has been developed and tested under Python version 2.2, though
64earlier versions of the language will likely work as well.  It has been
65tested on a number of platforms, including Linux, Solaris 2.8, OS/2
66Warp, Windows 2000, and Windows 98.  It can send messages to any
67device with an e-mail address, such as a text pager, an SMS capable
68wireless phone, or a standard e-mail account.  Pagers and cell phones
69are sent the concise summary, while standard e-mail addresses receive the
70full text of the NWS bulletin.</p>
71
72<p><strong>StormSiren</strong> uses public domain data from the <a 
73href="http://iwin.nws.noaa.gov">Interactive Weather Information
74Network</a>, a service of the National Weather Service.  The National
75Weather Service has some of
76the best weather information on the net.  A great place to start
77is the NWS site at <a href="http://www.weather.gov">www.weather.gov</a>.
78</p>
79
80<h2><a name="license">License</a></h2>
81
82<p>StormSiren is released under the
83<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public
84License</a>.</p>
85
86<h2><a name="download">Download</a></h2>
87
88<p>You can download <strong>StormSiren</strong> from the
89<a href="http://sourceforge.net/projects/stormsiren/">
90StormSiren SourceForge Project Site</a>.</p>
91
92<h2><a name="installation">Installation</a></h2>
93
94<p>To run this program, you will need have a Python interpreter
95installed on your system.  Most current Linux distributions come with
96one or more Python interpreters already installed.  If you are running
97a different operating system, your mileage may vary.  If you
98do not have Python on your system, you can download a version for
99your platform from <a href="http://www.python.org">www.python.org</a>.
100</p>
101
102<p>Installation is about as simple as it gets.  Just unzip/untar the
103archive and move the StormSiren.py executable script to where ever
104you think is a good place.  It is helpful but not necessary to put
105it somewhere in your path.  For Windows, you might create a folder
106like <em>c:\Program Files\StormSiren</em> for the program.  For Unix
107systems, you can put it in your home bin directory for personal use,
108or someplace like <em>/usr/local/bin</em> for multi-user access.  The
109program writes configuraton, state, and optional log data to user
110specific directories.</p>
111
112<ul>
113<li>Windows: With current distributions of Python, you can test and
114configure the program by simply double clicking its icon.  Under Windows
115NT/2K/XP, program data is stored under
116<em>%USERPROFILE%\Application Data\StormSiren</em>.  In Windows 2000,
117this usually maps to <em>C:\Documents and Settings\<strong>
118userid</strong>\Application Data\StormSiren</em>.  This variable
119location should work correctly under Windows NT 4.0 and Windows XP,
120though I haven't tried these personally.  For Windows 98, it maps to
121<em>%WINDIR%</em>Application Data/StormSiren</em>.  I haven't tried
122it under Windows 95 or ME.  I expect that it will work fine under ME,
123but Windows 95 may store things in a different location.  If you try it
124on 95 and have problems, let me know.
125
126<li>Unix: Under Posix systems like Linux, Free/Open/NetBSD, Solaris
127and so forth, the data directory is $HOME/.StormSiren.  The tarball
128version of the program is set to use <em>/usr/bin/env python</em>.  If
129env is not supported on your platform, try setting the shebang to the
130location of your interpreter.  If you are a RedHat Linux user, you may
131want to change the shebang to <em>#!/usr/bin/env python2</em> to use
132a 2.x version of Python rather than 1.5.2.  7
133
134<li>OS/2: Yes, I actually still use OS/2 on an old P-200 system.  In
135fact, running StormSiren is that system's main job.  For OS/2, the
136data directory is $HOME\StormSiren.</li>
137</ul>
138
139<h2><a name="running">Running the Program</a></h2>
140
141<p>The first time you run <strong>StormSiren</strong>, it will see that
142you have no configuration file and will enter a <em>wizard</em> mode.
143It will then ask you for information such as the e-mail addresses and
144types of devices you would like to recieve notifications on, and
145what states/counties/cities you wish to include in your scan.  Note that
146cities are sometimes specifically listed in NWS bulletins, for example
147if a tornado is headed right for your town, but most of the information
148is issued at the county level.</p>
149
150<p>Once you have run a wizard session, it will write out your settings
151to a configuration file in the StormSiren data directory.  You can
152then manually edit the configuration file with a text editor if you so
153desire.  To cause the wizard to run again, delete or rename your
154existing configuration file.</p>
155
156<p>After you've completed your configuration, manually run the program
157from the command line with the <code>-testpage</code> directive.  This
158will cause <strong>StormSiren</strong> to send a test notification to all
159the devices you specified.</p>
160<p>Examples:</P>
161<ul>
162<li>Unix: <code><em>&lt;path&gt;</em>/StormSiren.py -testpage</code></li>
163<li>Windows: <code><em>&lt;interpreter-path&gt;</em>\python.exe
164<em>&lt;path&gt;</em>\StormSiren.py -testpage</code>
165</ul>
166
167<p>To run the program, you'll have to kick it off from a scheduler on
168a regular basis.  I typically have <strong>StormSiren</strong> run
169every five minutes.  Since there are a number of different types of
170schedulers for different operating systems, I'm not going to try and
171cover them all.  Your platform specific documentation (man pages, help
172files) should tell you how to schedule a program.</p>
173
174<ul>
175<li>Unix: Setup a <em>cron</em> job with the fully qualified path to
176the program.<br><br>
177<code>4,9,14,19,24,29,34,39,44,49,54,59 * * * *
178/usr/local/bin/StormSiren.py</code><br><br></li>
179
180<li>Windows: You might need to point your scheduler at the
181Python interpreter with <strong>StormSiren</strong> as an argument,
182like <em>C:\Python22\python.exe
183"C:\Program Files\StormSiren\StormSiren.py"</em>.  You can probably use
184AT (NT4.0) or the Windows Task Scheduler (2K/XP).  My experience with
185Windows task schedulers is very small, so if anyone wants to send in
186tips, I'll be happy to add them to this document.  There are also a
187number of commercial and shareware schedulers which may work.<br><br>
188</li>
189
190<li>OS/2: A selection of cron clones and other schedulers can be found at
191the <a href="http://hobbes.nmsu.edu">Hobbes OS/2 Archive</a>.  Each
192has its own usage instructions.</li>
193
194</ul>
195
196<p>You'll need a persistent internet connection to run <strong>StormSiren
197</strong> every five or ten minutes or so.  If you use broadband such as a
198cable modem, you've probably got an always on connection.  Another option is
199to run it on a PC at work if your office has internet access (and you get
200the permission of your IT department or manager).  You could run it as a
201service for a small company or a department by using its multiple device
202capability and having it scan the county where the office is located, or
203a set of counties for a multi-county metropolitain area.  I haven't tested
204with more than five device addresses at a time, but it should scale fairly
205well.  I typically run with a three device configuration, my pager, my cell
206phone, and my wife's cell phone, scanning for three counties.
207</p>
208
209<h2><a name="motivation">Motivation for StormSiren</a></h2>
210
211<p>I live in Minnesota, a state with fairly frequent occurances of
212severe weather, including tornados.  While I like to tease my wife
213about moving to Tornado Alley, we get plenty of action here as it is.
214In 1998, a tornado walked up a major street only half a mile away from
215my office.  While the tornado didn't directly affect us, I had over a
216thousand dollars worth of hail damage to my car.  At least we have
217a warning system at the office.  However, I live in a geographically
218large bedroom community with no emergency sirens.  My wife was
219concerned about this early on, and we started to brainstorm about
220how we could compensate for this.  Weather Radios are probably the best
221resource, but they aren't cheap.  We bought one anyhow, but we don't
222get very good reception from our house.</p>
223
224<p>The next thing I thought of was to use my pager.  Most TV station
225web sites offer subscriptions to e-mail alerts for various news events,
226including storm alerts.  That was a good start, but not entirely
227satisfactory.  Sometimes the alerts were quite timely, but other times
228it seemed like I wasn't getting any weather alerts even when we were
229under a severe weather warning.  Modifying the configuration was
230difficult as well, as I found out the news station was subscribing to
231a service from another vendor.  I don't think I ever did get to a
232place where I could modify the configuration.  I could only
233unsubscribe.  There was also a concern about privacy.  I had no way of
234knowing whether the TV station or the third party vendor would resell
235my address for advertising purposes, which would be really awful on a
236pager.  And finally, the messages were
237usually truncated.  I could usually tell the type of alert
238(I.E. severe t-storm or tornado), but not whether it was a warning or
239a watch.  It appears that the service to which I subscribed
240sent the entire text of the NWS bulletin, so naturally things got
241truncated when going to a 160 character display.
242</p>
243
244<p>My big inspiration came in July 2002 when our area was hit by some
245intense storm cells.  I was standing out in my yard watching the
246rolling clouds.  I stood there transfixed, much like
247a deer caught in a car's headlinghts, as the low, dark clouds above me
248suddendly became a menacing green and began to rotate.  Of course I
249should have gone inside right then, but I couldn't pull myself away.
250The clouds slowly moved north, and so I went back inside where my wife
251informed me that the TV news had shown potentially tornadic, doppler
252radar indicated rotation right above us while I was out there.  Wow. 
253I started
254researching tornadoes and severe thunderstorms shortly thereafter,
255and soon stumbled upon the <a href="http://iwin.nws.noaa.gov">
256NWS Interactive Weather Information Network</a>.  Being a programmer,
257I realized I could scan and parse the information presented in those
258bulletins, and use it to send short, meaningful messages to my pager
259that included the the type of alert,
260the affected counties, and the issue and expiration times for the
261bulletin.</p>
262
263<p>
264For the remainder of the 2002 thunderstorm season,
265a series of iterations of <strong>StormSiren</strong> successfully
266detected and paged me on every severe thunderstorm and tornado watch
267and warning issued by the National Weather Service for the three counties
268I wanted to watch.  I really knew I'd
269created something useful when I received a page on September 10, 2002
270at 12:16 AM.  It was a tornado warning for our County.  While this wasn't
271a particularly strong tornado, it was significant because tornadoes
272after midnight in September are extremely rare in Minnesota.  Thanks to
273<strong>StormSiren</strong>, we were able to safely wait out the storm in the
274basement.
275</p>
276
277<hr>
278<address>For contact information, mailing lists, and discussion forums,
279please visit the <a href="http://sourceforge.net/projects/stormsiren/">
280StormSiren SourceForge Project Page</a>.<br>
281StormSiren was written by Rory McManus
282&lt;slorf at users_sourceforge_net&gt; (replace underscores with periods)
283</address>
284<p><center>
285<A href="http://sourceforge.net"> 
286<IMG src="http://sourceforge.net/sflogo.php?group_id=74940&amp;type=5" 
287width="210" height="62" border="0" alt="SourceForge.net Logo"></A> 
288<br>StormSiren is graciously hosted by SourceForge.net.</center></p>
Note: See TracBrowser for help on using the browser.