Internet Observer
From LokDoc
Internet Observer (IObserver, the observer) is a tool for monitoring Internet pages of interest. The tool is designed to alert specified pages are updated. It can do that by either continuously checking pages once every set interval, or by checking pages at the click of a button.
The goal of the tool is to cut down on the time spent zapping between pages, something which often takes an unnecessary lot of time. Another goal is to have the Observer camp sites, meaning that the tool is set to monitor them very frequently, which is useful when one for instance is expecting an important update.
| Important note The program is currently in an early development/testing stage. This documentation is meant to help those who wish to test the program. |
Contents |
Installation
The program can be downloaded from http://www.lokorin.com/iobserver/download . The distributions for different operating systems do not essentially differ in their contents, but they may include platform specific launch methods.
The program requires Java (>=JRE 5.0) which is available for most platforms at http://java.sun.com. Most platforms should already have Java installed, but may have an out of date version of it. The best thing to do is probably to try to run the program, if it doesn't work then try updating the JRE. Go to the JRE 5.0 download section then click on "Download JRE 5.0".
| Important note The compiled program is only available in generic form at the moment. Until then the Windows and Linux installation instructions are rather irrelevant. |
Installation in Windows
Simply unzip the zip file. Run the file named DKP Log Parser.exe to run the program.
Installation in Linux
The contained dkp-log-parser.sh shell script should launch the program. You might have to set executable permissions first.
chmod 755 dkp-log-parser.sh ./dkp-log-parser.sh
The script can only be executed from the directory that it is in. In order to allow it to be executed from anywhere one can edit the script and replace the bind with the actual absolute path to the installation directory.
Generic installation (all platforms)
The generic way to install and launch the program is to unzip it and then run the jar file named iobserver.jar. The program can for example be launched with the following command.
java -jar iobserver.jar
Interface
The interface is meant to be fairly simple and resembles a standard instance messanging program. The tree displays all watched pages in their respective groups. The pages and groups can be dragged and dropped to rearrange them as desired.
Right-clicking on a page or group opens a popup menu from where all the essential operations can be performed. Double-clicking on a page is a fast way to open the page in a web browser.
The pages and groups have different icons to describe the current status of the page.
| To do: List of all icons and their meaning |
Pages in the tree display that they have new contents with the following icons. The groups display that a page in the group has new contents with the following icon, that way one can collapse the group and still be notified whenever a page in the group has new contents. New content flags have to be acknowledge by either launching the page from the observer or by acknowledging it manually via the popup menu.
Popup menus
The popup menus can be opened by right-clicking inside the tree. There are three different popup menus, one if you right-click on a page, another for groups and a third one that is used otherwise.
Tree
This popup menu is brough up by right-clicking somewhere inside the tree other than on a page or a group.
- New page - Opens a dialog from which a new page can be created.
- New group - Opens a dialog from which a new group can be created.
- Check all - Checks all pages at once.
- Acknowledge all - Removes all new content flags.
Group
This popup menu is brough up by right-clicking on a group.
- Check - Immediately performs a check of all pages in the group.
- Timed check - Starts a timed check on the group.
- Recurring check - Starts a recurring check on the group.
- Stop scheduled checks - Stops all timed and recurring checks scheduled for the group.
- Rename - Allows the user to rename the group.
- Acknowledge all - Removes all new content flags for the group and its pages.
- Delete - Deletes the group and all its pages.
Page
This popup menu is brough up by right-clicking on a page.
- Launch - Opens the page in the local webbrowser.
- Check - Checks if the page has new contents.
- Timed check - Starts a timed check on the page.
- Recurring check - Starts a recurring check on the page.
- Stop scheduled checks - Stops all timed and recurring checks scheduled for the page.
- Rename - Allows the user to rename the page.
- Acknowledge - Removes the page's new content flag.
- Delete - Deletes the page.
Menu
The menu is virtually non-existent in the current version.
Special features
Timed check
A timed check is a check that does not occur immedientally, but rather is delayed for a specifed amount of time. Using this feature one can for example tell the program to check a page 30 minutes from now, and alert if the page has changed.
Recurring check
A recurring check is similar to a timed check, but it is reapeated with a specified period. When starting a recurring check one has to specify both the delay until the first check should be performed, and the perdiod between the following checks. Using this feature one can for example tell the program to beging checking a page every 30 minutes, two hours from now.
Filter
This feature is not present in the current version.
Usage examples
The program can be used for a lot of things. For example you can have the program alert you whenever...
- your faviourite webcomic updates with a new strip.
- someone has posted a new thread in an important forum.
- someone replies to a thread you want to monitor in a forum.
- a new version of your faviorite software is released.
- an announcement is made on an important site.
Coming features
There are lots of things that have not yet been implemented into the alpha version, but will be in the beta. Here is a brief list.
- Better graphics: tree arrows, node icons and button icons.
- Structure the popup menus.
- Build the main menus.
- Add dialogs that display all properties of pages and groups.
- Add a way to view the latest version and diffs between versions.
- Add tray alers.
- Add a graphical way to set filters.
- Add a way to remove stored versions individually, per page, per group and all versions.
- Add a regular expression generator for filters.
- Gzip the stored versions.
- Add a way to see how many pages that are in every group, and how many of those that have new contents. E.g. have the group node display "Comics (3/7)" if the group has 7 pages of which 3 have new contents.
- Add a graphical way to view all scheduled checks in the queue.
- Add the pending checks to the serialised state.
- Add the new content flags to the serialised state.
- Add a real icon to the window frames and project.
- A configuration dialog with various options.
Known bugs
The following bugs are known and will be fixed as soon as there is time. Please add any bug that you find that is not already listed.
- The group nodes can sometimes receive a way too large preferred size, causing the tree to grow far vertically larger than the window.
- The groups' new content flags are not updated properly when pages are rearranged.
- The group's icons are not rendered properly when using the default Java L&F, the renderer probably needs an augmentation.
- Node selections are not rendered properly when using the default Java L&F, the renderer probably needs an augmentation.
- The time that is shown in the "Last checked" label actually displays the time of the latest version.
To do list
This is a list of improvements that should be considered for future versions. Feel free to add whatever you think would improve the program.
- [ ] The que line when dragging pages should not span the whole tree width, rather it should just span the node's width.
External links
- Internet Observer - The home of the internet observer prject.
| To do: Internet Observer in Wikipedia |

