Short: V. 1.3 The original web update detector! Author: carl.licke@swipnet.se (Carl Licke) Uploader: carl licke swipnet se (Carl Licke) Type: comm/www Version: 1.3 Replaces: comm/www/upd8.lha Requires: tritonrexx.library, rxsocket.library Architecture: m68k-amigaos Upd8 v.1.3 freeware by Carl Licke / Turbid design! History with latest changes can be found at the end of this file. There are obviously people who like Upd8, including me, so I will continue to improve it! introduction ------------ Are you always browsing the web to check if your favourite webpages are updated? Then this software is for you! It checks all the pages on your configured list, and reports all updated pages it finds! Additionally it has a nice interface with progressbar etc. and it can show the webpages using your favourite browser or using the internal (primitive) HTML viewer! As for original of its kind, at least on the Amiga. I don't use other platforms much, but it would surprise me if nobody got the same brilliant idea before me :-) me -- Please visit! Graphics, design, computing, propaganda, Upd8 etc.: http://home.swipnet.se/turbid/ Electronic mail is always appreciated: carl.licke@swipnet.se installation ------------ 1 Copy the icon and program wherever you want them. Upd8 saves it's prefs and listfiles in the directory where it's stored so an own directory is preferable. 2 Make sure you have 'tritonrexx.library' and 'rxsocket.library' in your 'Libs:' directory! If you don't have them you will have to install them yourself, they can be found on Aminet. And don't forget to install the 'triton.library' which comes with the 'tritonrexx.library' package! Optionally install 'openurl.library' together with 'rmh.library' for better browser support, and the full Triton package for better GUI support (save window positions etc.)! Find links to the latest versions of these libraries here: http://home.swipnet.se/turbid/software_amiga.html 3 You must also have your 'SYS:System/RexxMast' started, which many Amigas already have. usage ----- * some great uses for this program: - All those newspages that never change. - All your favourite pages that you otherwise MUST check every day. - Detect updates of binary files through HTTP. Possible on Aminet. Give Upd8 the URL of the binary, and download by pressing 'browse'! The browser should of course be configured to download that filetype. - Got any more special uses? The basic operation might be pretty self explanatory, byt here follows a documentation of all gadgets and stuff. * main window gadgets: - locations (list): The list of locations to keep track of. To the left of each entry is the methods of verifying written in parenthesis. Doubleclicking on an entry will mark it, so will pressing the space key. The marked entries have '>' written before them. You can move the selector with the arrow keys. - updated locations (list): A list which displays the updated locations found. Doubleclicking on an entry will show information about it. You can move the selector with the number pad keys. - verify : Check if the selected location is updated. - new : Add a new location to your list. - delete : Remove the selected location from your list. - edit : Change some data of the selected location. - data : Show some data of the selected location. - browse: Upd8 searches for any started browser it recognizes. If it doesn't find any active browser, it starts the one you configured. After that the selected location is loaded into your browser. This procedure is done, better, by 'openurl.library' if installed. - show: View the selected location with the internal viewer. This function is here mainly to see if Upd8 gets the right page. But it can also be used for normal viewing. It shows the optional viewing URL if available, so you might have to cut and paste to test the verifying URL. Links and images are displayed like {link text} and [image description]. - (textfield) : A status and message field. - (progressbar): Fills as the locations are verified. - up : Moves entry in the on button indicated direction. - down : Moves entry down. Thrust me! - verify marked: Verify your marked locations for updates. For this and verify all, a window will list all failures at once, if 'continue on error' is selected in prefs (default). This window can be open simultaneously with the main window. On verify all/marked the locations which fails will be marked and the ones which succeed will be unmarked. This will help you to retry. - verify all : Verify all your locations for updates. - forget : Remove this entry from the updated locations list. - import BookCon: Choose a BookCon text file to import locations from. BookCon is a free program available on AmiNet which converts bookmark files between many different formats. Upd8 can import the format called plain text. - prefs : Open the preferences window. - quit : Quit program. Also saves the list if changed. * prefs window gadgets: - verify all at start: Verify all location when starting Upd8. - continue on error: Do not interrupt the checking of multiple entries on error, instead report all failures when done. - redraw lists while verifying: Disable to not waste power by redrawing your huge list while verifying! - notify when ready: Notify with requester when multiple locations have been verified. - mark imported : Mark the locations which are imported. - proxy: Use a HTTP proxy. Enter hostname and port of your proxy. - browser path : Path of the browser to start if needed. - viewer textwidth : Width of the text in the show window. - transfer timeout : Timeout for data transfers. - global size threshold: If a location is verified by size, the change of size has to be greater than this value to be reported as updated. You can also set this individual for each location in 'edit'. * verification methods: - (date): The best method which uses the date sent by the server to see if the location is updated. - (size): If the server does not send any date, Upd8 compares the new size of the location to the last size. This can also be done quick if the server tells the new size to Upd8. If this is not the case, Upd8 has to download the whole location to see how long it is. The last case is often much slower. Needless to say, the methods based on size data is less reliable as the updated page could have the same size. - (cksm): Checksum. Downloads the full page and reports as updated if anything is changed. Good alternative to size, but not if the page includes scripts like text counters, forums, some ads etc., as this will report false updates. And it is often these pages that miss date. - (stri): Lock to string. You enter a string which you copy from the target page, eg. 'Last updated 1999-11-13'. Upd8 will verify by downloading the page until it finds the string. If the page is fully downloaded but the string is not found, the page is reported as updated! (This string is most likely changed to something like 'Last updated 2000-02-02'.) You will then have to update the string by editing the location entry. The search is case sensitive. You should also take the string from the page source, because Upd8 doesn't remove HTML tags yet. But to copy directly from the page often works just as well. This method is not useful that often, but sometimes. On pages which are unreliable or slow with size method and has a 'last updated' string (best early on the page). Pages with two states ('You have new mail'/'No new mail')! To alarm you if someone removes your link ;-) But don't use it on often updated pages if you don't want to update the textstring that often! - (fsze): If the server tells a false date, like GeoCities which always sends the current date, this method can be turned on when adding or editing a location. The force size method always verifies the size even if date is available. If you choose this in 'edit', the first verification directly after this will never detect an update. So you might want to verify directly after the change. - (????): This location has not been verified and the method to be used is unknown (date or size). The first time this location is verified, it will not show up as updated, because it has no previous data to compare with. problems and solutions ---------------------- * Unable to browse URLs which have the character '=' in them. To cure this, put doublequotes on %u everywhere in OpenURL config ("%u"). This helps all software using 'upenurl.library'. * If the program won't start, make sure you have all the required libraries (see 'installation'). If you still have problems you can turn on the debug output. Just change the tooltype named 'console' from 'NIL:' to 'CON:'. If the output is interesting, please report it! * It is possible that Upd8 reports false updates even in date mode. This happens when the webmaster uploads without any changes made. * When adding a webpage which uses frames, be sure to use the URL of the particular page you wish to keep track of, not the URL which brings up the different frames. You can set the page with frames as 'optional viewing URL' though. (The URL for separate pages on framed sites can often be found in the menu frame, if one is available. Otherwise the browser might have a function to get the URL of a page currently displayed in a frame. In IBrowse, click right mouse button on the frame and select 'View frame in full window'. You can also look in the source code of the framed page for the frame definition.) * If the page changes but Upd8 does not report anything, it might be because of an hidden frame. That is, the URL leads to a framed page with only one frame, which transparently displays the right page. Many redirection services (come.to etc.) sometimes use this trick to keep their URL displayed in your browser. See the above entry on frames to sort out this problem. * Your URL works with your browser but not with Upd8. Upd8 only supports HTTP, so your URL must start with 'http://'. Upd8 automatically adds 'http://' if you do not enter it yourself, but this is useless if you entered for example a FTP only server. Feel free to e-mail non working URLs to me! * If you run out of memory while Upd8 verifies you list, disable 'redraw lists while verifying' in prefs! Triton or TritonRexx allocates loads of memory if a huge list is redrawed in a high frequency. It's correctly freed at exit though. * Please report found problems and/or solutions! future ------ * Multiple connections. (I who thought I wouldn't need to do this, but the competition forced it :-)) * Abort button for 'verify all' and 'verify'. * Fill in the fields for a new location automatically from the page which is currently opened in your browser. Well, wonder where I got that idea :-) * Automatically use checksum in lack of date? Now uses size. * Possibility to disable a location, the '----' method or something... * Maybe not list double updates of one page? * More individual settings for every location. * Option to get name from the title of the real page (HTML). * Porting to C, E or some other nice language. * Maybe an ARexx port (not in the same sense as above!) if someone finds this useful. * Support for authorization and other technical network features. Only on request, or if I'm very nice some day! * Smarter progress indication for 'verify marked'? * Allow other protocols than HTTP through proxy. * Please suggest and give comments! bugs and limitations -------------------- * Sometimes having the main window activated and resting produces a tiny CPU load. This is because the loop sensing GUI activity thinks something is happening. Anyone know how to fix this? * Triton or TritonRexx eats memory under some conditions (see 'problems and solutions'). Better fix? * Can not use the 'OpenURL()' directly from 'openurl.library' (must use 'rmh.library'). Fix? * Please report found bugs and/or solutions! thanks to --------- Alfonso Ranieri for 'rxsocket.library'! Jürgen Kohrmeyer for 'tritonrexx.library'! Troels Walsted Hansen for 'openurl.library'! And in no particular order to Jan-willem van Eys, Jerome Chesnot, Petra Struck, Matti Tiainen, Bo Arnholm, Stuart Tomlinson, Ron Jensen, Rolf Kleiber, Michael Jaccoud, Stephen, Radek Machacek, and Robert Kihl (and some other people whos names I lost together with my e-mails) who mailed me with suggestions, code, help and encouragement! BTW, excuse me for my lazyness ;-) history ------- 1.3 : Two new methods to verify, checksum and lock to string! Proxy support. Avoids cached pages, of course. Set individual size threshold in the edit window. You can sort locations with up and down buttons and new entries are inserted at the selector. There are now no problems with URLs containing '*'. Changed from visitware to freeware! Sorry to all you people who visited my website :-) Some memory problems are removed with the new redraw option. 1.2 : Fixed problem with 'openurl.library'. 'rmh.library' is now needed to enjoy 'openurl.library'. 1.1 : You can now select multiple locations to verify at once. OpenURL.library supported. Continue on error option with smart retry! Optional viewing URL for framed sites etc.. You can now enter URLs longer than 64 characters (512 :-)). The '=' in URL problem solved (see 'problems and solutions'). You can force Upd8 to use the size method on a location. Importing of BookCon plain text files is possible. Full keyboard control everywhere. Some improvements to HTTP code (no cached pages etc.). Some other improvements and GUI changes. 1.0ß2: Major improvement. New GUI, new features, better HTTP code. Note that the format of the listfile has changed. 0.7 : Rather crappy code and primitive, but the basics are working. ARexx (or other) source readable in all following versions.