AminetAminet
Search:
83856 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/rexx/ProcessTorrent.lha

Mirror:Random
Showing:m68k-amigaosppc-amigaosppc-morphosi386-arosi386-amithlonppc-warpupppc-powerupgeneric
No screenshot available
Short:Get rid of most of CTorrent's limitations
Author:Hubert Maier (Raziel_Nosgoth at web.de)
Uploader:Raziel<raziel_nosgoth web de>
Type:util/rexx
Version:1.34 (05.12.2007)
Replaces:comm/tcp/ProcessTorrent.lha
Requires:CTorrent 1.3.4-dnh2, REXX running, AWeb (optional), a Torrent
Architecture:generic
Date:2007-12-05
Download:http://aminet.net/util/rexx/ProcessTorrent.lha - View contents
Readme:http://aminet.net/util/rexx/ProcessTorrent.readme
Downloads:750

Usage:

From CLI/Shell

(rx) ProcessTorrent.rx (name-of-the).torrent
(Mark "ProcessTorrent.rx" as S for script to save the "RX"!)

From within AWeb as pseudo-plugin:

Go to Settings/Browser settings/Viewer
Add: WITHOUT the "", of course

Type "APPLICATION / X-BITTORRENT"
Extensions "torrent" Action "Extl. Program (E)"
Name "path-to/ProcessTorrent.rx" (ProcessTorrent.rx must be  executeable)
Arguments "%f"

May as well run from any other browser, did not test, though.

*** NEW ***

Bugfix release!

*** INFORMATION ! ***

If you choose to set deletetorrent to YES, than EVERY Break-C will delete the
.torrent descriptor aswell!


HOW-TO:

CON: Output
Rather simple to understand ... IF someone explains it to you! ;-)
Redirect any output to a defineable window:
Your Command >"CON:100/200/300/400/Name the Window/CLOSE"

conx="115"  Start of window position from the right
cony="230"  Start of window position from the top
conlength="720"  Length of the window
conheigth="74"  Heigth of the window (Will also be used as the value to
    move the window down)
Name the Window: Call me buddy! :-)
CLOSE: Makes the close button available on the window
(There are many more arguments to give, justcheck your OS manual for it!)

Features:

- Introduced a new satellite system for the Resume part.
 Little scripts sent out as soon as a torrent is to be downloaded,
 sitting in WBStartup, waiting impatiently for a reboot.
 The first time, they will be called from within ProcessTorrent.rx, all the
 following instances (crash/reboot), they'll be performed through WBStartup
 automatically ... and will kill themselves when the download is done!
 Neat, eh? :-)

- Automatic Resume: With help of a little script in WBStartup you are now
 able to automatically resume a torrent after a reboot (without dealing
 with the cli/shell everytime!)

- The file name length is user defineable.
 The script will subtract 8 from the given length, so that the descriptor
 ".torrent" will fit and not cause trouble later on!
 Minimum would be a length of 13 due to the scripts design.
 e.g 30 = OFS&FFS; 107 = FFS2; 255 = PFS; 32.000 = SFS
 
-  Rips the name from the torrent descriptor and names the file
 (if there's only one)

-  Creates (if not available) a subdir (name ripped from the torrent
 descriptor) if there is more than one file inside the archive.
 (Path is User definable!)

-  User definable Torrent(Save)-path, Save-Path, Recovery-Path (lets you
 resume the download after a crash or pause!), CON:-output defineable
 Options for CTorrent (stick to the CTorrent manual for this!)

-  Torrent recovering: Saves the .torrent descriptor, so one don't have to go
 back to the download site everytime a crash happened or a Break-C was
 performed. Rips the right name from the .torrent descriptor and saves it
 with that specific name. (Path is User definable)

- Deletes Bad Characters from the file name or dir name, such as
 :/[]()*?#'|, as they would break the Amiga file/dir structure and the
 torrent couldn't be saved to disk. (User enhanceable!)

- Checks for "printable" ASCII chars, so no ESC commands will remain in
 Directory or File names.

- Respects the descriptor length of single files. i.e. .DivX, .mov etc. are
 written as is and a second descriptor as in .tar.gz works aswell!

- Displays the actual processed torrent's name (dir's name) in the torrent
 window bar, so the user can see which torrent is being downloaded. The
 ones that are finished will automatically be closed (and all the garbage
 that came with ProcessTorrent's script will be deleted aswell)
 Displays the tracker the torrent comes from in the window bar
 Displays the size of the tracker as reported by the torrent descriptor

- Uses unique port numbers (user definable space) whenever another torrent
 is started. The Port number stays unique and will be saved for this
 torrent until it's finished or cancelled.

- Automatically moves the window down (the size of user define conheight),
 if another download is running. The window position stays unique and will
 be saved for this torrent until it's finished or cancelled. (Windows won't
 be overdrawn afterwards, rather the already open window will be avoided).
 (User defineable!)
 
- Pops up a warning requester, if a torrent is processed which doesn't hold
 any useable data, or in short - a broken torrent ;-)

- Deletion of the .torrent descriptor on a user decidable base
 (ON by default!)

TODO:

- Suggestions welcome!

- Rewrite the HASHTABLECHECK macro (maybe ... i mean, it works) :-)

Requests?

Known bugs / Missing features:

Misc Bugs i can't really do something about:

- I stumbled over some rather nasty torrents, which are both big (~60k and up)
 and VERY slow when it comes to "seeder search". I actually had one where i
 was searching ages for the bug in my script. Then i tried it without the
 script, and it drove my system as unuseable sluggish as before.
 So, if you come across those "buggy" torrents, hands off!
 (You can easily unveil this torrents, when your CPU load goes up to 100%!)

- Files that are wrongly named inside the archives, i.e. DivX as .mpg or vice
 versa shouldn't be a problem. MPlayer plays them all anyway ;-)

- If one presses CTRL-C to cancel a download twice too fast, the
 commands to delete the .torrent file and the script from WBStartup
 will BREAK too and thus both files will stay until the next reboot
 (Although annoying, it's "normal" behaviour due to AREXX not being
 fast enough)

History

1.34 - FIXED: .torrent descriptor wasn't deleted on a resumed torrent
 - FIXED: Name not passed with single files
 - FIXED: File name length wasn't calculated correctly
 - CHANGED: File name length differences handled in the script

1.33 - CHANGED: 32 Bit Icon used (PNG dropped for backwards compatibility)
   (thanks to ZeroG for pointing it out and for the icon)
 - CHANGED: Default Tool set to "C:rx" (thanks to Jack for pointing it out)
 - ADDED: User defineable file name length (OFS, FFS(2), PFS, SFS)
 - ADDED: | to the Bad Chars for known reasons (it's amazing what some
   people put in a torrent file/dir name, it's as if they WANT you to get
   problems afterwards) :-)
 - ADDED: Displays the Size of the torrent in the window header
 - FIXED: Possible bug with the WBStartup script (it used the torrent
   descriptor from the browser's cache - changed to the resumetorrent one)

1.32 - ADDED: ' to the Bad Chars as it would break AREXX's structure and
   cripple file / directory names
 - ADDED: Pathetic looking (Glow)Icon for non-PNG users
   (thanks to ZeroG for pointing it out)
 - ADDED: Displays the name of the tracker the torrent comes from

1.31 - CHANGED: Reduced x/y start positions of the torrent windows to be
   "lower resolution" friendly
 - ADDED: Unique window positions (the window will be moved down it's
   own height to avoid drawing over earlier incarnations)
 - ADDED: Checks for screen size to avoid drawing windows "out-of-sight"
 - FIXED: Unique port numbers now work correctly (it was still possible
   to end up with two torrents sharing the same port)

1.3 - CHANGED: Switched to CTorrent 1.3.4-dnh2
   (http://os4depot.net/share/network/p2p/ctorrent.lha)
   AmiTorrent may still run (if it features the same set of commands as
   CTorrent, but i urge everyone to update to the latest available
   CTorrent port for OS4
 - ADDED: A check for already running CTorrent incarnations and the use
   of a unique port number for every incarnation
 - ADDED: #, ? and * to the Bad Chars as they break the Amiga DOS COPY
   command

1.21 - FIXED: Automatic Resume - works with more than one torrent now
 - FIXED: Bad misbehaviour where one could start the same torrent twice
   or more and therefore overwrite it's data (leading to a start over again)

1.2 - ADDED: Automatic Resume - Torrent download starts automatically after
   a crash/reboot
 - ADDED: Fancy PNG icons both for the script and for WBStartup
 - CHANGED: Reduced the file/dir name length to 95 + descriptor due to
   loosing files after download which had too long names
   (backwards compatibility!)
 - Made it even more hard to read - say "CLEANING UP" :-)

1.14 - ADDED: () to the BadChars
 - ADDED: Deletion of a .torrent on a user defined base
 - ADDED: Check for "printable" ASCII characters
 - Again CLEANUP (Can't believe how unREADable AREXX can grow) :-)

1.13 - ADDED: ProcessTorrent's own CON: output (finally!)
   (Thanks to zerohero for pointing it out!)
 - ADDED: Detection routine and pop-up window for broken torrents
 - More CLEANUP

1.12 - Some minor CLEANUP

1.11 - FIXED: Descriptor of single files

1.1 - ADDED: New subdir naming
 - ADDED: BadChar checking and removing
 - ADDED: Recovery-Path and .torrent saving

1.0 - CHANGED: Completely rewritten AREXX structure

0.1 Internal buggy pre-release


Contents of util/rexx/ProcessTorrent.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 4476    4476 100.0% -lh0- a7c1 Dec  2 20:57 Icons/WBStartup_Torrent.info
[generic]                 4067    9026  45.1% -lh5- 4acb Dec  5 09:09 ProcessTorrent.readme
[generic]                 5476    6238  87.8% -lh5- 5d87 Dec  5 09:09 ProcessTorrent.readme.info
[generic]                 2390    6447  37.1% -lh5- 921d Dec  5 09:09 ProcessTorrent.rx
[generic]                 4479    4479 100.0% -lh0- 6a67 Dec  5 09:09 ProcessTorrent.rx.info
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         5 files   20888   30666  68.1%            Dec  5 09:41

Aminet © 1992-2022 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>