XDCC Autoresume/Autoqueue Stealth Script — File Browser
XDCCAutoresumeAutoqueueStealthScriptv4.2.0 / XDCCAutoresumeAutoqueueStealthScriptv4.2.0 / XDCCStealthMenus.mrc
XDCCStealthMenus.mrc — 64.67 KB — Download this file
;-------------------------------------------------------------------------
;
; Name: XDCC Autoresume/Autoqueue Stealth Script
; File: XDCCStealthMenus.mrc
; Version: 4.1.5
; Author: Werecow
; Date: 23-02-2005
;
; Contents: The menus for the XDCC Stealth script.
;
;
; WARNING: many channels will ban you for using XDCC leech scripts. While this is a silly rule,
; it is your responsibility. Use this wisely. Don't use it in such channels, or don't get caught.
; And play nice for the other people that want to use the XDCCs! If you leech em dry other people
; may be unable to get on.
;
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------Keyboard Shortcuts Section----------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
; Activate the shortcut listeners.
;-------------------------------------------------------------------------
#groupctrlkeys on
on 1:KEYDOWN:@xdcc_info:17:{
set %ctrldown 1
if (%shftdown == 1 && $sline($active,1) != $null) { .enable #groupshortcuts }
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:17:{
unset %ctrldown
.disable #groupshortcuts
}
;-------------------------------------------------------------------------
on 1:KEYDOWN:@xdcc_info:16:{
set %shftdown 1
if (%ctrldown == 1 && $sline($active,1) != $null) { .enable #groupshortcuts }
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:16:{
unset %shftdown
.disable #groupshortcuts
}
;-------------------------------------------------------------------------
on 1:ACTIVE:*:{
unset %shftdown
unset %ctrldown
.disable #groupshortcuts
}
#groupctrlkeys end
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
; Shortcut listeners are activated (shift and control pressed).
;-------------------------------------------------------------------------
#groupshortcuts off
on 1:KEYUP:@xdcc_info:65:{
; a: add request
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
if ($triggerHash.findNick($sline($active,1) *)) {
/addrequest $sline($active,1)
}
else {
/outputxdccinfo 14Bot not found: $sline($active,1)
/outputxdccinfo
}
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:83:{
; s: start queue
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
if ($exists($getqfilenm($triggerHash.findNetwork($sline($active,1) *), $sline($active,1)))) {
/startqueue $sline($active,1)
}
else {
/outputxdccinfo 14No queue file for $triggerHash.findNetwork($sline($active,1) *) $sline($active,1) $getqfilenm($triggerHash.findNetwork($sline($active,1) *), $sline($active,1))
/outputxdccinfo
}
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:82:{
; r: remove q
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
if ($exists($getqfilenm($triggerHash.findNetwork($sline($active,1) *),$sline($active,1)))) { /removerequest $sline($active,1) }
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:67:{
; c: clear q
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
if ($exists($getqfilenm($triggerHash.findNetwork($sline($active,1) *),$sline($active,1)))) { /clrq $sline($active,1) }
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:68:{
; d: suspend
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
if ($exists($getqfilenm($triggerHash.findNetwork($sline($active,1) *),$sline($active,1)))) { /stopxdccqueue $sline($active,1) }
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:77:{
; m: monitor transfers
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
/transferstatsdialog
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:86:{
; v: visualq
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
/xdccbrowsebots
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:80:{
; p: pack listing for bot
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
var %llen = $sline($active,0)
var %i = 1
while (%i <= %llen) {
/botpacks $triggerHash.findNetwork($sline($active,%i) *) $sline($active,%i)
inc %i
}
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:81:{
; q: bot's queue
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
var %llen = $sline($active,0)
var %i = 1
while (%i <= %llen) {
/showdetailedqueue $sline($active,%i)
inc %i
}
}
;-------------------------------------------------------------------------
on 1:KEYUP:@xdcc_info:*:{
; other: undefined shortcut
if ($keyval != 38 && $keyval != 40 && $keyval != 37 && $keyval != 39) {
/outputxdccinfo No shortcut for key $keyval $+ .
}
;unset %shftdown
;unset %ctrldown
;.disable #groupshortcuts
}
#groupshortcuts end
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;----------------------------Menu Add-Ons Section-------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
; Channel (and report window), status and nicklist addons.
;-------------------------------------------------------------------------
Menu channel,status,@XDCC_Info,nicklist,query {
-
XDCC Auto Resume/Auto Queue:
.$iif($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Add XDCC queue for bot $1 $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+a))):/addrequest $1
.$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Remove specific XDCC queue for bot $1 $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+r))):/removerequest $1
.$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Clear XDCC queue for selected bot(s) $1 (and on) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+c))):{
var %i = 1
while (%i <= $sline($active,0)) {
/clrq $sline($active,%i)
inc %i
}
}
.$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Start Processing Queue File for Selected Bot(s) $1 (and on) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+s))):{
var %i = 1
var %nicklistselects = $null
while (%i <= $sline($active,0)) {
set %nicklistselects %nicklistselects $sline($active,%i)
inc %i
}
/startqueue %nicklistselects
}
.$iif($group(#groupautoxdccresume) == ON && $active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Suspend Autoqueue and Auto Re-Request for Selected Bot(s) $1 (and on) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+d))):{
var %i = 1
while (%i <= $sline($active,0)) {
/stopxdccqueue $sline($active,%i)
inc %i
}
}
.-
.VisualQ (XDCC Pack Browser) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+v)):/xdccbrowsebots
.-
.$iif($get($1).status != $null,Stop all current downloads for selected bot(s) $1 (and on)):{
if ($1 != $null && $?!="Halt ALL incoming transfers for ALL selected bots?") {
/haltDownloads $1
var %i = 1
while (%i <= $sline($active,0)) {
if ($get($sline($active,%i)).status != $null) { /haltDownloads $sline($active,%i) }
else { /outputxdccinfo 14No current downloads active for $sline($active,%i) $+ . }
inc %i
}
}
else { /outputxdccinfo 14No bot selected or halting cancelled. }
/outputxdccinfo
}
.$iif($send($1).status != $null,Stop all current uploads for selected bot(s) $1 (and on)):{
if ($1 != $null && $?!="Halt ALL outgoing transfers for ALL selected bots?") {
/haltUploads $1
var %i = 1
while (%i <= $sline($active,0)) {
if ($send($sline($active,%i)).status != $null) { /haltUploads $sline($active,%i) }
else { /outputxdccinfo 14No current uploads active for $sline($active,%i) $+ . }
inc %i
}
}
else { /outputxdccinfo 14No bot selected or halting cancelled. }
/outputxdccinfo
}
.-
.-
.Advanced Bot Control:
..Stop All Timers for bot $1:/timer $+ * $+ $1 $+ * off
..-
..Remove yourself from REMOTE queue for bot $1:{
if ($1 != $null) { var %botnick = $1 }
else { var %botnick = $?="No bot selected, please enter bot name." }
if (%botnick != $null) {
if $active = @XDCC_Info) { var %botnetwork = $triggerHash.network(%botnick) }
else { var %botnetwork = $network }
if (%botnetwork != $null) {
var %con = $null
var %j = 1
while (%con == $null && %j < $scon(0)) {
if ($scon(%j).network == %botnetwork) { set %con %j }
inc %j
}
if (%con != $null) { /scon %con /msg %botnick xdcc remove }
else {
/outputxdccinfo 14Not connected to network %botnetwork $+ 14.
/outputxdccinfo
}
}
}
else {
/outputxdccinfo 14No bot selected, no nickname entered or action cancelled.
/outputxdccinfo
}
}
..-
..$iif($findfile($XDCCdir,*.q,1),Remove a Pack from ALL XDCC Queues by Name):{
var %texttomatch = $?="Enter the pack's EXACT description or filename (E.g.: 'File 1 cd 1-2004' OR 'file_1.CD1-2004.tar'. IMPORTANT TIP: Be thorough, for instance: 'blah' will remove all wildcard matches for *blah*, including 'blah.divx', 'blah.divx.cd1.tar', 'blah.cd2.divx' and 'blah.2.divx.tar', whereas 'blah.divx' will only remove the first two, and 'blah.divx.cd1' will only remove the second)."
if (%texttomatch != $null) {
/removepackfromallbots * * %texttomatch
}
else {
/outputxdccinfo 14Cancel pressed or no packname entered. No packs removed.
/outputxdccinfo
}
}
.-
.$iif($botqueuehandling == on,Bot Queue):
..$iif($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Add Selected Bot(s) $1 (and on) To Bot Queue File):{
var %i = 1
while (%i <= $sline($active,0)) {
/addbotqueue $sline($active,%i)
inc %i
}
}
..$iif($exists($botqueuefile) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Remove Selected Bot(s) $1 (and on) From Bot Queue File):{
var %i = 1
while (%i <= $sline($active,0)) {
/removebotqueue $sline($active,%i)
inc %i
}
}
..-
..$iif($exists($botqueuefile),Clear Bot Queue File):/clrbotq
..$iif($exists($botqueuefile),Crop Bot Queue File (Removes Queue-less bots)):/cropbotqueue
..-
..$iif(($exists($botqueuefile) || $lines($tempbotqueuefile) > 0),Start Processing First N Bots in Bot Queue File):{
var %numbots = $?="Give number of bots to start processing simultaneously."
if (%numbots isnum && %numbots > 0) {
/startbotqueues %numbots
}
else {
/outputxdccinfo 14Invalid amount entered or cancelled bot queue start.
/outputxdccinfo
}
}
..-
..$iif($exists($botqueuefile),Show Bot Queue):/viewbotqueues
.-
.$iif($multisourcehandling == on && $active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Multi-Source Downloading):
..$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1),Check for More Sources for FIRST Pack in Queue(s) for Selected Bot(s) $1 (and on)):{
if ($?!="Alternate source searching can lock up your IRC for anywhere between several seconds up to several minutes depending on your system speed, number of selected bots and bot library size. Continue?") {
/pleasewaitdialog
var %y = 1
/outputxdccinfo 14Starting sources search for $sline($active,0) selected bot(s). 4Please wait, this can take anywhere from a few seconds up to a few minutes to complete depending on the size of your xdcc library and cause total nonresponsiveness in your IRC during that time...
while (%y <= $sline($active,0)) {
if ($exists($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y))) && $lines($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y))) > 0) {
/checkformorepacksources $triggerHash.network($sline($active,%y)) $sline($active,%y) $read($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y)), nt, 1)
}
else {
/outputxdccinfo 14No queue exists for bot7 $sline($active,%y) 14on network3 $triggerHash.network($sline($active,%y)) $+ .
/outputxdccinfo
}
inc %y
}
/closewaitdialog
}
}
..$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1),Check for More Sources for ALL Packs in Queue(s) for Selected Bot(s) $1 (and on)):{
if ($?!="Alternate source searching can lock up your IRC for anywhere between several seconds up to several minutes depending on your system speed, number of selected bots, size of bots' queues and bot library size. Continue?") {
/pleasewaitdialog
var %y = 1
/outputxdccinfo 14Starting sources search for all queued packs for $sline($active,0) selected bot(s). 4Please wait, this can take anywhere from a few seconds up to a few minutes to complete depending on the size of your xdcc library and cause total nonresponsiveness in your IRC during that time...
while (%y <= $sline($active,0)) {
if ($exists($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y))) && $lines($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y))) > 0) {
var %x = 1
while (%x <= $lines($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y)))) {
/checkformorepacksources $triggerHash.network($sline($active,%y)) $sline($active,%y) $read($getqfilenm($triggerHash.network($sline($active,%y)),$sline($active,%y)), nt, %x)
inc %x
}
}
else {
/outputxdccinfo 14No queue exists for bot7 $sline($active,%y) 14on network3 $triggerHash.network($sline($active,%y)) $+ .
/outputxdccinfo
}
inc %y
}
/closewaitdialog
}
}
.-
.Special Case Modifications:
..Add/Change Alternate DCC Server command for Bot $1 $iif($read($alternatedccserverfile, snt,$network $1), on $network (you have a command set),(no command currently set)):{
if ($1 != $null && triggerHash.network($1) != $null) { var %altdcccommand = $triggerHash.network($1) $1 $?="Enter alternate dcc command for $1 (E.g.: /dccserver +sc on 1337)." }
elseif ($1 != $null) { var %altdcccommand = $network $1 $?="Enter alternate dcc command for $1 (E.g.: /dccserver +sc on 1337)." }
else {
var %temp = $?="Enter bot nickname and alternate dcc command separated by a space (E.g.: guest1234 /dccserver +sc on 1337)."
var %altdcccommand = $triggerHash.network($gettok(%temp,1,32)) %temp
}
if ($numtok(%altdcccommand, 32) > 5) {
if ($read($alternatedccserverfile, wnt, $gettok(%altdcccommand,1-2,32) *)) { write -dw" $+ $gettok(%altdcccommand,1-2,32) *" $alternatedccserverfile }
/write -a $alternatedccserverfile %altdcccommand
/outputxdccinfo 14Added Alternate DCC command for bot 7 $gettok(%altdcccommand, 2, 32) 14on network3 $gettok(%altdcccommand, 1, 32) $+ .
/outputxdccinfo
}
else {
/outputxdccinfo 14No command entered, bot unknown, or action cancelled.
/outputxdccinfo
}
}
..-
..Toggle DCCALLOW support for Network $network ( $+ $iif($read($dccallownetworkfile, wnt, $network),on,off) $+ ):{
if ($exists($dccallownetworkfile) && $read($dccallownetworkfile, wnt, $network)) {
/write -dw $+ $network $dccallownetworkfile $network
/outputxdccinfo 14Removed network 3 $network 14from DCCallow support file.
}
else {
/write -a $dccallownetworkfile $network
/outputxdccinfo 14Added network 3 $network 14to DCCallow support file.
}
/outputxdccinfo
}
..-
..Add/Change Key for Channel $chan $iif($read($chankeyfile, snt,$network $chan), on $network (you have a key set),(no key currently set)):{
if ($chan != $null) { var %botchan = $network $chan $?*="Enter key for $chan (E.g.: 1337Key)." }
else { var %botchan = $?*="Enter network, channel name and key separated by a space (E.g.: EFnet #Channel 1337Key)." }
if ($numtok(%botchan, 32) > 2) {
if ($read($chankeyfile, wnt, $gettok(%botchan,1-2,32) *)) { write -dw" $+ $gettok(%botchan,1-2,32) *" $chankeyfile }
/write -a $chankeyfile %botchan
/outputxdccinfo 14Added channel key for channel12 $gettok(%botchan, 2, 32) 14on network3 $gettok(%botchan, 1, 32) $+ .
/outputxdccinfo
}
else {
/outputxdccinfo 14No key entered or action cancelled.
/outputxdccinfo
}
}
..-
..Auto network joining at IRC start:/xdccconnectatstart
.-
.Pack Listings/Searches:
..VisualQ (XDCC Pack Browser) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+v)):/xdccbrowsebots
..$iif($findfile($XDCCdir,*.pff,1),Find XDCC Pack):{
var %searchstring = $?="Enter XDCC pack search string (word-order specific!)."
if (%searchstring != $null) {
/pleasewaitdialog
/findpack %searchstring
/closewaitdialog
}
}
..$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .pff,1) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Browse All Known XDCC Packs for Selected BOT(s) $1 (and on) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+p))):{
if ($1 != $null) {
var %i = 1
while (%i <= $sline($active,0)) {
if ($triggerHash.exists($network, $sline($active,%i)) != $null) {
/botpacks $network $sline($active,%i)
}
elseif ($triggerHash.findNetwork($sline($active,%i) *) != $null) {
/botpacks $triggerHash.findNetwork($sline($active,%i) *) $sline($active,%i)
}
else {
/outputxdccinfo 5No matches found for3 $network 7 $+ $sline($active,%i) 5(Note: The script needs to catch the bot's ad before it can search the bot).
/outputxdccinfo
}
inc %i
}
}
else {
set %botnick $?="Enter bot and network name for pack listing separated by a space (E.g.: EFnet XDCC-Bot01)"
if (%botnick != $null) { /botpacks %botnick }
}
}
..Browse All Known XDCC Packs for CHANNEL $iif($chan != $null,$chan,$triggerHash.findChan($1 *)):{
if ($chan != $null) { /chanpacks $network $chan }
elseif ($triggerHash.findChan($1 *) != $null) {
var %botchan = $triggerHash.network($1) $triggerHash.findChan($1 *)
/chanpacks %botchan
}
else {
var %botchan = $?="Enter network and channel name for pack listing separated by a space (E.g.: EFnet #Channel)."
if (%botchan != $null) { /chanpacks %botchan }
}
}
..Browse All Known XDCC Packs for NETWORK $iif($triggerHash.network($1) != $null,$triggerHash.network($1),$network):{
if ($1 != $null && $triggerHash.network($1)) {
var %botnetwork = $triggerHash.network($1)
/networkpacks %botnetwork
}
elseif ($network != $null) { /networkpacks $network }
else {
var %botnetwork = $?="Enter network name for pack listing (E.g.: EFnet)."
if (%botnetwork != $null) { /networkpacks %botnetwork }
}
}
.Queue/Active Bot Listings:
..VisualQ (XDCC Pack Browser) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+v)):/xdccbrowsebots
..-
..$iif(($get(0) > 0 || $send(0) > 0 || $exists($xdccsessiongetfile) || $exists($xdccsessionsendfile) || $exists($xdcctotalgetfile) || $exists($xdcctotalsendfile) || $exists($xdccsessionfailfile) || $exists($lastsessionfailfile) || $exists($lastxdccsessiongetfile) || $exists($lastxdccsessionsendfile)),Monitor Current Transfer Speeds and Completed/Failed Transfers $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+m))):/transferstatsdialog
..-
..$iif(($get(0) > 0 || $send(0) > 0),Show All Currently Transfering Bots):/getxdccsending
..$iif($exists($xdccsinprogress),Show All Currently Active Bots):/getxdccactive
..-
..$iif($findfile($XDCCdir,*.q,1),Show All Queues for All Bots):/showqueues
..$iif($findfile($xdccdir,* $+ $replxdccfile($1) $+ .q,1) && ($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null),Show Detailed Queues for Specific Selected Bot(s) $1 (and on) $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+q))):{
var %i = 1
while (%i <= $sline($active,0)) {
/showdetailedqueue $sline($active,%i)
inc %i
}
}
..$iif(($chan != $null && $findfile($xdccdir,$replxdccfile($network) $+ *.q,1)) || ($active == @XDCC_Info && $findfile($xdccdir,$replxdccfile($triggerHash.findNetwork($1 *)) $+ *.q,1)),Show Detailed Queues for all bots in CHANNEL $iif($active == @XDCC_info,$triggerHash.findChan($1 *),$chan $+ )):{
if ($active == @XDCC_Info) { /showdetailedchanqueues $triggerHash.findNetwork($1 *) $triggerHash.findChan($1 *) }
else { /showdetailedchanqueues $network $chan }
}
..$iif($findfile($xdccdir,$replxdccfile($network) $+ *.q,1) || ($active == @XDCC_Info && $findfile($xdccdir,$replxdccfile($triggerHash.findNetwork($1 *)) $+ *.q,1)),Show Detailed Queues for all bots on NETWORK $iif($active == @XDCC_info,$triggerHash.findNetwork($1 *) $+ ,$network $+ )):{
if ($active == @XDCC_Info) { /showdetailednetworkqueues $triggerHash.findNetwork($1 *) }
else { /showdetailednetworkqueues $network }
}
..$iif($findfile($XDCCdir,*.q,1),Show Detailed Queues For ALL Bots):/showdetailedqueues
..$iif($exists($botqueuefile),Show Bot Queue):/viewbotqueues
.Wishlist:
..Add wishlist item:/addtoxdccwishlist $?="Input new wishlist item to search for."
..$iif($exists($xdccwishlist),Remove wishlist item):/removefromxdccwishlist $?="Input wishlist item to remove."
.Statistics/Completes:
..$iif(($get(0) > 0 || $send(0) > 0 || $exists($xdccsessiongetfile) || $exists($xdccsessionsendfile) || $exists($xdcctotalgetfile) || $exists($xdcctotalsendfile) || $exists($xdccsessionfailfile) || $exists($lastsessionfailfile) || $exists($lastxdccsessiongetfile) || $exists($lastxdccsessionsendfile)),Monitor Current Transfer Speeds and Completed/Failed Transfers $iif($group(#groupctrlkeys) == on && $active == @XDCC_Info,(CTRL+SHIFT+m))):/transferstatsdialog
..-
..Show Completed/Failed Transfer Lists For THIS Session:
...$iif($exists($xdccsessiongetfile) && $lines($xdccsessiongetfile) > 0,Show All Completed File Receptions this IRC Session):/getsessiongets
...$iif($exists($xdccsessionsendfile) && $lines($xdccsessionsendfile) > 0,Show All Completed File Sends this IRC Session):/getsessionsends
...-
...$iif($exists($xdccsessionfailfile) && $lines($xdccsessionfailfile) > 0,Show All FAILED Transfers for this IRC Session):/getsessionfails
...-
..Show Completed/Failed Transfer Lists For PREVIOUS Session:
...$iif($exists($lastxdccsessiongetfile) && $lines($lastxdccsessiongetfile) > 0,Show All Completed File Receptions for PREVIOUS IRC Session):/getprevsessiongets
...$iif($exists($lastxdccsessionsendfile) && $lines($lastxdccsessionsendfile) > 0,Show All Completed File Sends for PREVIOUS IRC Session):/getprevsessionsends
...-
...$iif($exists($lastsessionfailfile) && $lines($lastsessionfailfile) > 0,Show All FAILED Transfers for PREVIOUS IRC Session):/getprevsessionfails
...-
..Show TOTAL Completed/Failed Transfer Lists:
...$iif($exists($xdcctotalgetfile) && $lines($xdcctotalgetfile) > 0,Show Total Completed File Receptions):/gettotalgets
...$iif($exists($xdcctotalsendfile) && $lines($xdcctotalsendfile) > 0,Show Total Completed File Sends):/gettotalsends
...-
...$iif($exists($totalfailfile) && $lines($totalfailfile) > 0,Show Total Failed Transfers):/gettotalfails
...-
...$iif($exists($xdcctotalgetfile) || $exists($xdcctotalsendfile),Reset Total Completed File Receptions/Send Files):{
if($?!="Delete Total Completed File Receptions/Send Files?") {
.remove $xdcctotalgetfile
.remove $xdcctotalsendfile
}
}
...$iif($exists($totalfailfile), Reset Total Failed File Receptions/Send File):{
if($?!="Delete Total Failed File Receptions/Send Files?") {
.remove $totalfailfile
}
}
..-
..$iif($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Show Bot Info):{
var %i = 1
while (%i <= $sline($active,0)) {
if ($triggerHash.findNetwork($1 *) != $null) { /showbotinfo $sline($active,%i) }
inc %i
}
}
..Get XDCC library statistics:/xdccgetstats
.-
.Channel/Network joining:
..$iif($triggerHash.findNetwork($1 *) != $network,Connect to bot $1 $+ 's Network in new window):{
/joinnetwork $triggerHash.findNetwork($1 *)
}
..$iif($active == @XDCC_Info || $triggerHash.exists($network, $1), Join bot $1 $+ 's Channel):{
/joinchan $1
}
..-
..Auto network joining at IRC start:/xdccconnectatstart
.-
.XDCC Library Maintainance/Cleaning:
..$iif($active != @XDCC_Info && !$triggerHash.exists($network, $1),Add Selected Bot $1 on $network $chan to Bot Library):{
var %trigger = $?="Enter bot's exact trigger (e.g.: /msg botname XDCC send #):"
if (!$triggerHash.exists($network, $1) && $chan != $null && $1 != $null && $network != $null && %trigger != $null) {
/triggerHash.add $network $1 $chan default default %trigger
if ($botliston == TRUE) {
//aline -l @XDCC_Info $1
//cline -lc7 @XDCC_Info $fline(@XDCC_Info,$1,1,1)
}
/outputxdccinfo 4 $+ $triggerHash.items $+ : Added "3 $+ $network 7 $+ $1 $+ 12 $chan ||5 %trigger $+ " to $triggerHash 14(Trigger Scheme $4 $+ ).
/outputxdccinfo
}
else {
/outputxdccinfo 14Bot $1 not added to bot library.
/outputxdccinfo
}
}
..$iif($active == @XDCC_Info || $triggerHash.exists($network, $1) != $null,Remove Selected Bot(s) $1 (and on) on $network Entirely from Bot Library):{
var %i = 1
if ($?!="This will delete all files and entries related to ALL selected bots, are you sure you want to do this?") {
while (%i <= $sline($active,0)) {
if ($triggerHash.exists($network, $sline($active,%i)) != $null) {
/removebot $sline($active,%i) $network
dec %i
}
elseif ($triggerHash.findNetwork($sline($active,%i) *)) {
/removebot $sline($active,%i) $triggerHash.findNetwork($sline($active,%i) *)
dec %i
}
else {
/outputxdccinfo Bot not listed (3 $+ $network $+ ¦7 $+ $sline($active,%i) $+ )
/outputxdccinfo
}
inc %i
}
}
else { /outputxdccinfo 14Bot7 $1 14 not removed from triggerfile, remove operation cancelled. }
}
..-
..Clean Old Files from Bot Library ( $+ $liblimitdate days):{
/pleasewaitdialog
/cleanxdcclib
/closewaitdialog
}
.-
.Settings Menu:/xdccpreferencesdialog
.Settings Old Style (direct menu access):
..Activate/Deactivate Autoresume ( $+ $group(#groupautoxdccresume) $+ ):{
if ($group(#groupautoxdccresume) == ON) {
if ($?!="Switch Autoresume Transfer OFF?") { /resumeswitch }
}
else {
if ($?!="Switch Autoresume Transfer ON?") { /resumeswitch }
}
}
..Activate/Deactivate Autoresume On Bot Rejoin ( $+ $group(#groupautoxdccresumejoin) $+ ):{
if ($group(#groupautoxdccresumejoin) == ON) {
if ($?!="Switch Autoresume On Bot Rejoin OFF?") { /resumejoinswitch }
}
else {
if ($?!="Switch Autoresume On Bot Rejoin ON?") { /resumejoinswitch }
}
}
..Activate/Deactivate AutoQueue ( $+ $group(#groupautoxdccq) $+ ):{
if ($group(#groupautoxdccq) == ON) {
if ($?!="Switch Autoqueue Function OFF?") { /autoqswitch }
}
else {
if ($?!="Switch Autoqueue Function ON?") { /autoqswitch }
}
}
..Activate/Deactivate Bot Queue Handling ( $+ $botqueuehandling $+ ):{
if ($botqueuehandling == on) {
if ($?!="Switch Bot Queue Handling Function OFF?") { /botqueuehandlingswitch }
}
else {
if ($?!="Switch Bot Queue Handling Function ON?") { /botqueuehandlingswitch }
}
}
..Activate/Deactivate Time Automated Testing For Available Download Slots Or Bandwidth ( $+ $testnumoftransferspeed $+ , $botqueuemode $+ ):{
if ($testnumoftransferspeed == on) {
if ($?!="Switch Time Automated Testing For Transfer Number Or Bandwidth Function OFF?") { /timerbotqueuetestswitch }
}
else {
if ($?!="Switch Time Automated Testing For Transfer Number Or Bandwidth ON?") { /timerbotqueuetestswitch }
}
}
..Activate/Deactivate AutoResume at IRC Start ( $+ $group(#groupautoresumeatstart) $+ ):{
if ($group(#groupautoresumeatstart) == ON) {
if ($?!="Switch AutoResume at IRC start Function OFF?") { /autostartswitch }
}
else {
if ($?!="Switch AutoResume at IRC start Function ON?") { /autostartswitch }
}
}
..Activate/Deactivate Auto Retry at No New Connections Notice ( $+ $group(#groupnonewconnects) $+ ):{
if ($group(#groupnonewconnects) == ON) {
if ($?!="Switch Auto Retry at No New Connections notice Function OFF?") { /autononewconnectswitch }
}
else {
if ($?!="Switch Auto Retry at No New Connections notice Function ON?") { /autononewconnectswitch }
}
}
..Activate/Deactivate Auto Join at Bot Request ( $+ $group(#groupautojoinxdcc) $+ ):{
if ($group(#groupautojoinxdcc) == ON) {
if ($?!="Switch Auto join at XDCC bot request Function OFF?") { /autojoinxdccswitch }
}
else {
if ($?!="Switch Auto join at XDCC bot request Function ON?") { /autojoinxdccswitch }
}
}
..Activate/Deactivate Preemptive Join ( $+ $xdccpreemptivejoin $+ ):{
if ($xdccpreemptivejoin == on) {
if ($?!="Switch preemptive join Function OFF?") { /preemptivejoinswitch }
}
else {
if ($?!="Switch preemptive join Function ON?") { /preemptivejoinswitch }
}
}
..Activate/Deactivate Auto Connect to networks in Auto-Connect List at IRC start ( $+ $connectnetsatstart $+ ):{
if ($connectnetsatstart == on) {
if ($?!="Switch Auto Connect at IRC start Function OFF?") { /connectnetsatstartswitch }
}
else {
if ($?!="Switch Auto Connect at IRC start Function ON?") { /connectnetsatstartswitch }
}
}
..Activate/Deactivate Auto Connect to XDCC networks at IRC start ( $+ $connectxdccnetsatstart $+ ):{
if ($connectxdccnetsatstart == on) {
if ($?!="Switch Auto connect to XDCC networks at IRC start Function OFF?") { /connectxdccnetsatstartswitch }
}
else {
if ($?!="Switch Auto connect to XDCC networks at IRC start Function ON?") { /connectxdccnetsatstartswitch }
}
}
..Activate/Deactivate Multi-source support ( $+ $multisourcehandling $+ ):{
if ($multisourcehandling == on) {
if ($?!="Switch Multi Source Download support Function OFF?") { /automultisourceswitch }
}
else {
if ($?!="Switch Multi Source Download support Function ON?") { /automultisourceswitch }
}
}
..Activate/Deactivate AutoRemove at Bot Removal Confirmation Message ( $+ $group(#groupautoremove) $+ ):{
if ($group(#groupautoremove) == ON) {
if ($?!="Switch AutoRemove at bot Removal confirmation Function OFF?") { /autoremoveswitch }
}
else {
if ($?!="Switch AutoRemove at bot Removal confirmation Function ON?") { /autoremoveswitch }
}
}
..Activate/Deactivate Auto Suspend Bot on DCC Pending Error ( $+ $group(#groupdccpendingerror) $+ ):{
if ($group(#groupdccpendingerror) == ON) {
if ($?!="Switch Auto Suspend Bot on DCC Pending Error Function OFF?") { /groupdccpendingerrorswitch }
}
else {
if ($?!="Switch Auto Suspend Bot on DCC Pending Error Function ON?") { /groupdccpendingerrorswitch }
}
}
..Activate/Deactivate Attempt to Clean Pack from ALL Bot Queues on Pack Complete ( $+ $clearallqueuesoncomplete $+ ):{
if ($clearallqueuesoncomplete == on) {
if ($?!="Switch Attempt to Clean Pack from ALL Bot Queues on Pack Complete Function OFF?") { /clearallqueuesoncompleteswitch }
}
else {
if ($?!="Switch Attempt to Clean Pack from ALL Bot Queues on Pack Complete Function ON? (WARNING: This feature MAY be unreliable, especially when queueing up multiple parts of a pack, like 'movie.avi' and 'movie 2.avi'. Also, full coverage can not be guaranteed. Use with caution.)") { /clearallqueuesoncompleteswitch }
}
}
..Activate/Deactivate Packfile Change Tracking ( $+ $comparepacks $+ ):{
if ($comparepacks == on) {
if ($?!="Switch Packfile Change Tracking Function OFF?") { /comparepacksswitch }
}
else {
if ($?!="Switch Packfile Change Tracking Function ON?") { /comparepacksswitch }
}
}
..Activate/Deactivate Nickname Change Tracking ( $+ $group(#groupnickchangedetect) $+ ):{
if ($group(#groupnickchangedetect) == ON) {
if ($?!="Switch Nickname Change Tracking Function OFF?") { /groupnickchangedetectswitch }
}
else {
if ($?!="Switch Nickname Change Tracking Function ON?") { /groupnickchangedetectswitch }
}
}
..Activate/Deactivate Queue Position Tracking ( $+ $group(#grouptrackqueuepos) $+ ):{
if ($group(#grouptrackqueuepos) == ON) {
if ($?!="Switch Queue Position Tracking Function OFF?") { /trackqueueposswitch }
}
else {
if ($?!="Switch Queue Position Tracking Function ON?") { /trackqueueposswitch }
}
}
..Activate/Deactivate Auto Clean XDCC Library At Startup ( $+ $autocleanatstart $+ ):{
if ($autocleanatstart == on) {
if ($?!="Switch Auto Clean XDCC Library At Startup Function OFF?") { /autocleanatstartswitch }
}
else {
if ($?!="Switch Auto Clean XDCC Library At Startup Function ON?") { /autocleanatstartswitch }
}
}
..-
..Activate/Deactivate AutoResume Send ( $+ $group(#groupautosendresume) $+ ):{
if ($group(#groupautosendresume) == ON) {
if ($?!="Switch AutoResume Send Function OFF?") { /autoresendswitch }
}
else {
if ($?!="Switch AutoResume Send Function ON?") { /autoresendswitch }
}
}
..Set AutoResume Send Bandwidth Limit ( $+ $sendlimit cps):{
set %sendlimit $?="Enter auto resend upload cps bandwidth maximum (Type Unlimited for unlimited bandwidth)."
if ($sendlimit isnum) {
/outputxdccinfo 14Bandwidth limit for auto send resume set to $sendlimit cps.
}
else {
set %sendlimit Unlimited
/outputxdccinfo 14Bandwidth limit for auto send resume set to $sendlimit cps.
}
/outputxdccinfo
}
..-
..Swap mode for connection availability testing ( $+ $botqueuemode $+ ):{
if ($botqueuemode == number of transfers) { set %botqueuemode bandwidth }
else { set %botqueuemode number of transfers }
/timexdcctransferstest
/outputxdccinfo 14Mode for connection availability testing set to $botqueuemode $+ .
/outputxdccinfo
}
..Set your connection's maximum download bandwidth ( $+ $connectionbandwidth KByte):{
var %temp = $?="Enter connection maximum bandwidth (in KByte)"
if (%temp isnum && %temp >= 1) { set %connectionbandwidth %temp }
else { set %connectionbandwidth 1 }
/outputxdccinfo 14Connection maximum bandwidth set to $connectionbandwidth $+ .
/outputxdccinfo
}
..Set minimum bandwidth that should be used ( $+ $minbandwidth KByte):{
var %temp = $?="Enter minimum bandwidth usage (in KByte)"
if (%temp isnum && %temp >= 0 && $maxbandwidth >= %temp) { set %minbandwidth %temp }
else { set %minbandwidth 0 }
/outputxdccinfo 14Minimum bandwidth usage set to $minbandwidth $+ .
/outputxdccinfo
}
..Set maximum bandwidth that should be used ( $+ $maxbandwidth KByte):{
var %temp = $?="Enter maximum bandwidth usage (in KByte)"
if (%temp isnum && %temp >= 0 && %temp >= $minbandwidth) { set %maxbandwidth %temp }
else { set %maxbandwidth 0 }
/outputxdccinfo 14Maximum bandwidth usage set to $maxbandwidth $+ .
/outputxdccinfo
}
..Set maximum number of active download slots ( $+ $maxtransfers $+ ):{
var %temp = $?="Enter number of maximum simultaneous transfers"
if (%temp isnum && %temp >= 0 && %temp >= $mintransfers) { set %maxtransfers %temp }
else { set %maxtransfers unlimited }
/outputxdccinfo 14Maximum number of simultaneous transfers set to $maxtransfers $+ .
/outputxdccinfo
}
..Set minimum number of active download slots ( $+ $mintransfers $+ ):{
var %temp = $?="Enter number of minimum simultaneous transfers"
if (%temp isnum && %temp >= 0 && $maxtransfers >= %temp) { set %mintransfers %temp }
else { set %mintransfers 0 }
/outputxdccinfo 14Minimum number of simultaneous transfers set to $mintransfers $+ .
/outputxdccinfo
}
..-
..Write Debugging Log File ( $+ $debugxdccinfo $+ ):{
if ($debugxdccinfo == on) {
if ($?!="Switch Write Debugging Log Function OFF?") { /debugxdccswitch }
}
else {
if ($?!="Switch Write Debugging Log Function ON?") { /debugxdccswitch }
}
}
..-
..Automatic Move of Files/Extraction of Archives on Completion Options ( $+ $xdccautoextraction $+ ):
...Activate/Deactivate Automatically extract archives on file completion ( $+ $xdccautoextraction $+ ):{
if ($xdccautoextraction == on) {
if ($?!="Switch Automatically extract archives on file completion Function OFF?") { /xdccautoextractionswitch }
}
else {
if ($?!="Switch Automatically extract archives on file completion Function ON?") {
if ($winrarexe == $null) {
/outputxdccinfo 14WINRAR.exe not found, please select the winrar executable $+ .
var %tmpxdccextractfile = $sfile(C:\Program Files\WinRAR\WinRAR.exe,Select winrar.exe executable)
if (%tmpxdccextractfile != $null) {
set %winrarexe %tmpxdccextractfile
/outputxdccinfo 14Set winrar.exe path to2 $winrarexe $+ .
/xdccautoextractionswitch
}
else { /outputxdccinfo 14Selection cancelled or path error. }
/outputxdccinfo
}
else { /xdccautoextractionswitch }
}
}
}
...Select directory to auto-extract archives to on file completion ( $+ $xdccextractpath $+ ):{
var %tmpxdccextractpath = $sdir($iif($xdccextractpath == $null,$getdir,$xdccextractpath),Select directory to auto-extract archives to)
if (%tmpxdccextractpath != $null) {
set %xdccextractpath %tmpxdccextractpath
/outputxdccinfo 14Set auto-extract path to2 $xdccextractpath $+ .
}
else { /outputxdccinfo 14Selection cancelled or path error. }
/outputxdccinfo
}
...Select WINRAR.exe file to auto-extract archive files on file completion ( $+ $winrarexe $+ ):{
var %tmpxdccextractfile = $sfile(C:\Program Files\WinRAR\WinRAR.exe,Select winrar.exe executable)
if (%tmpxdccextractfile != $null) {
set %winrarexe %tmpxdccextractfile
/outputxdccinfo 14Set winrar.exe path to2 $winrarexe $+ .
}
else { /outputxdccinfo 14Selection cancelled or path error. }
/outputxdccinfo
}
...Set extraction flags for WINRAR.exe ( $+ $unrarflags $+ ):{
var %tmpunrarflags = $?="Input flags for winrar.exe executable: $crlf $+ -ibck: Run in background. $crlf $+ -kb: Keep broken files. $crlf $+ -ad: Separate folder for each archive (prevents loose files). $crlf $+ -o-: Do not overwrite existing files. $crlf $+ -o+: Overwrite all existing files. $crlf $+ -y: Assume yes to all queries. $crlf $+ -ilog[name]: Create log file. $crlf $+ $crlf $+ Do not add flag '--' (automatically added). $crlf $+ Current flags: $unrarflags $+ "
if (%tmpunrarflags != $null) {
set %unrarflags $remove(%tmpunrarflags,$chr(32) $+ --)
/outputxdccinfo 14Set winrar flags to2 $unrarflags $+ .
/outputxdccinfo
}
}
...-
...Activate/Deactivate Automatically move files on file completion ( $+ $xdccautomove $+ ):{
if ($xdccautomove == on) {
if ($?!="Switch Automatically move files on file completion Function OFF?") { set %xdccautomove off }
}
else {
if ($?!="Switch Automatically move files on file completion Function ON?") { set %xdccautomove on }
}
/outputxdccinfo 14Automatically Move Files on File Completion is now $xdccautomove $+ .
/outputxdccinfo
}
...Add new Output Directory for a Specific file Type:{
var %tmpxdccmovepath = $sdir($iif($xdccextractpath == $null,$getdir,$xdccextractpath),Select directory to auto-extract archives to)
if (%tmpxdccmovepath != $null) {
var %extension = $?="Enter file extension to use this path for:"
if (%extension != $null) {
//write -a $xdccautomovepathfile $remove(%extension,$chr(46)) %tmpxdccmovepath
/outputxdccinfo 14Set auto-extract path for extension . $+ $remove(%extension,$chr(46)) to2 %tmpxdccmovepath $+ .
}
else { /outputxdccinfo 14Cancelled or no extension entered. }
}
else { /outputxdccinfo 14Selection cancelled or path error. }
/outputxdccinfo
}
...-
..-
..Window Preferences ( $+ $infochoise $+ ):
...Print to Separate XDCC Info Window:{
set %infochoise special window
/outputxdccinfo 14Output window options set to $infochoise $+ .
/outputxdccinfo
}
...Print to Active Window:{
set %infochoise active window
/outputxdccinfo 14Output window options set to $infochoise $+ .
/outputxdccinfo
}
...Print to Server Status Window:{
set %infochoise server status window
/outputxdccinfo 14Output window options set to $infochoise $+ .
/outputxdccinfo
}
...Print to Both Active Window and Separate XDCC Info Window:{
set %infochoise both active and special windows
/outputxdccinfo 14Output window options set to $infochoise $+ .
/outputxdccinfo
}
...-
...Set Separate Output Window Font ( $+ $xdccfont $+ ):/setxdccfont
...-
...Toggle Bot List View ( $+ $showbotlist $+ ):{
if ($?!="This will close your separate XDCC window and then reopen it. Proceed?") {
window -c @XDCC_Info
if ($showbotlist == OFF) { set %showbotlist ON }
else { set %showbotlist OFF }
/outputxdccinfo 3Network14¦7Bot14 list view is now $showbotlist $+ .
/outputxdccinfo
}
}
...Toggle Bot List Coloring on Connect/Disconnect ( $+ $colorbotlist $+ ):{
if ($colorbotlist == on) {
if ($?!="Switch Botlist Coloring At (Dis)connect Function OFF?") { /colorbotlistswitch }
}
else {
if ($?!="Switch Botlist Coloring At (Dis)connect Function ON?") { /colorbotlistswitch }
}
}
...-
...Clear @XDCC_Info window buffer:/clear
...-
..Toggle Keyboard Shortcut Handling ( $+ $group(#groupctrlkeys) $+ ):{
if ($group(#groupctrlkeys) == on) {
if ($?!="Switch Keyboard Shortcut Function OFF?") { /keyshortcutsswitch }
}
else {
if ($?!="Switch Keyboard Shortcut Function ON?") { /keyshortcutsswitch }
}
}
..-
..Timer Options:
...Set delay offset for auto resume reactivation ( $+ $resumedelay secs):{
var %delay = $?="Set delay for item auto resume script reactivation after resume attempt (in seconds) (this should be at least as high as your DCC GET timeout value to be effective) ( $+ $resumedelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %resumedelay %delay
/outputxdccinfo 14Delay for item auto resume script reactivation after attempt set to $resumedelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...Set minimum delay for item resume request ( $+ $minresumedelay secs):{
var %delay = $?="Set minimum delay for item auto resume request (in seconds) ( $+ $minresumedelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0 && %delay <= $maxresumedelay) {
set %minresumedelay %delay
/outputxdccinfo 14Minimum delay for item auto resume request set to $minresumedelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used, or minimum delay higher than maximum delay. }
/outputxdccinfo
}
...Set maximum delay for item resume request ( $+ $maxresumedelay secs):{
var %delay = $?="Maximum delay for item auto resume request (in seconds) ( $+ $maxresumedelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0 && %delay >= $minresumedelay) {
set %maxresumedelay %delay
/outputxdccinfo 14Maximum delay for item auto resume request set to $maxresumedelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used, or maximum delay lower than minimum delay. }
/outputxdccinfo
}
...Set minimum delay for next queue item request ( $+ $minautoqdelay secs):{
var %delay = $?="Minimum delay for next queue item request (in seconds) ( $+ $minautoqdelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0 && %delay <= $maxresumedelay) {
set %minautoqdelay %delay
/outputxdccinfo 14Minimum delay for next queue item request set to $minautoqdelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used, or minimum delay higher than maximum delay. }
/outputxdccinfo
}
...Set maximum delay for next queue item request ( $+ $maxautoqdelay secs):{
var %delay = $?="Maximum delay for next queue item request (in seconds) ( $+ $maxautoqdelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0 && %delay >= $minautoqdelay) {
set %maxautoqdelay %delay
/outputxdccinfo 14Maximum delay for next queue item request set to $maxautoqdelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used, or maximum delay lower than minimum delay. }
/outputxdccinfo
}
...Set minimum delay for re-request item on queue full ( $+ $minqfulldelay secs):{
var %delay = $?="Minimum delay for re-request item when queue is full (in seconds) ( $+ $minqfulldelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 10 && %delay <= $maxqfulldelay) {
set %minqfulldelay %delay
/outputxdccinfo 14Minimum delay for re-request item on queue full set to $minqfulldelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, value lower than 10 seconds, or non-numeric character used, or maximum delay lower than minimum delay. }
/outputxdccinfo
}
...Set maximum delay for re-request item on queue full ( $+ $maxqfulldelay secs):{
var %delay = $?="Maximum delay for re-request item when queue is full (in seconds) ( $+ $maxqfulldelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 10 && %delay >= $minqfulldelay) {
set %maxqfulldelay %delay
/outputxdccinfo 14Maximum delay for re-request item on queue full set to $maxqfulldelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, value lower than 10 seconds, or non-numeric character used, or maximum delay lower than minimum delay. }
/outputxdccinfo
}
...Set minimum delay for re-requesting file on no new connection demand ( $+ $minnoconnect secs):{
var %delay = $?="Set minimum duration for auto re-request on Owner Demands That No New Connections Be Made notice (in seconds) ( $+ $minnoconnect $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %minnoconnect %delay
/outputxdccinfo 14Minimum duration for auto re-request on Owner Demands That No New Connections Be Made notice function set to $minnoconnect $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...Set maximum delay for re-requesting file on no new connection demand ( $+ $maxnoconnect secs):{
var %delay = $?="Set maximum duration for auto re-request on Owner Demands That No New Connections Be Made notice (in seconds) ( $+ $maxnoconnect $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %maxnoconnect %delay
/outputxdccinfo 14Maximum duration for auto re-request on Owner Demands That No New Connections Be Made notice function set to $maxnoconnect $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...Set offset time for auto resume at start ( $+ $startresumeoffset secs):{
var %delay = $?="Set offset duration for auto resume at start function (in seconds) ( $+ $startresumeoffset $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %startresumeoffset %delay
/outputxdccinfo 14Offset duration for auto resume at start function set to $startresumeoffset $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...-
...Set delay offset for auto resume SEND reactivation ( $+ $sendresumedelay secs):{
var %delay = $?="Set delay for item auto resume SEND script reactivation after resume attempt (in seconds) (this should be at least as high as your DCC SEND timeout value to be effective) ( $+ $sendresumedelay $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %sendresumedelay %delay
/outputxdccinfo 14Delay for item auto resume script reactivation after attempt set to $sendresumedelay $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...Set maximum delay for auto resume SEND ( $+ $sendresumetime secs):{
var %delay = $?="Set offset duration for auto resume send function (in seconds) ( $+ $sendresumetime $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %sendresumetime %delay
/outputxdccinfo 14Offset duration for auto resume send function set to $sendresumetime $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...-
...Set delay for updated packfile comparison ( $+ $packchangechecktime secs):{
var %delay = $?="Set delay for old/new packfile comparison (in seconds) ( $+ $packchangechecktime $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %packchangechecktime %delay
/outputxdccinfo 14Offset duration for old/new packfile comparison set to $packchangechecktime $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...-
...Set delay for timed testing for available bandwidth or download slots ( $+ $statisticstime $+ ):{
var %delay = $?="Set delay for timed testing for available bandwidth or download slots (in seconds) ( $+ $statisticstime $+ )"
if (%delay != $null && %delay isnum && %delay >= 0) {
set %statisticstime %delay
/timexdcctransferstest
/outputxdccinfo 14Timed testing for available bandwidth or download slots interval set to $statisticstime $+ .
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...-
...Set library file expiration date ( $+ $liblimitdate days):{
var %delay = $?="Enter the number of DAYS after which .pff and .old files should be removed upon Cleaning XDCC Library."
if (%delay != $null && %delay isnum && %delay >= 0) {
set %liblimitdate %delay
/outputxdccinfo 14Expiration date for old .pff and .old files set to $liblimitdate days.
}
else { /outputxdccinfo 4ERROR: No delay entered, timer setting cancelled, negative value, or non-numeric character used. }
/outputxdccinfo
}
...-
...Help on Timers:/TimerXDCChelp
..-
..Filename Settings:
...Set filename for XDCC Trigger Library File ( $+ %xdcctriggerfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for XDCC Trigger Library File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $triggerHash $xdccdir $+ \ $+ %newfilename
set %xdcctriggerfile %newfilename
/outputxdccinfo 14Set XDCC Trigger Library File name to2 $triggerHash $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Backup Trigger File ( $+ %triggerbackup $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Backup Trigger File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $triggerbackup $xdccdir $+ \ $+ %newfilename
set %triggerbackup %newfilename
/outputxdccinfo 14Set Backup Trigger File name to2 $triggerbackup $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Bot Queue File ( $+ %botqueuefile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Bot Queue File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $botqueuefile $xdccdir $+ \ $+ %newfilename
set %botqueuefile %newfilename
/outputxdccinfo 14Set Bot Queue File name to2 $botqueuefile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Temporary Bot Queue File ( $+ %tempbotqueuefile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Temporary Bot Queue File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $tempbotqueuefile $xdccdir $+ \ $+ %newfilename
set %tempbotqueuefile %newfilename
/outputxdccinfo 14Set Temporary Bot Queue File name to2 $tempbotqueuefile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Auto Resume Get Disabled Bots File ( $+ %autoresumedisablefile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Auto Resume Get Disabled Bots File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $autoresumedisablefile $xdccdir $+ \ $+ %newfilename
set %autoresumedisablefile %newfilename
/outputxdccinfo 14Set Auto Resume Get Disabled Bots File name to2 $autoresumedisablefile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Auto Resume Send Disabled Bots File ( $+ %autoresumesenddisablefile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Auto Resume Send Disabled Bots File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $autoresumesenddisablefile $xdccdir $+ \ $+ %newfilename
set %autoresumesenddisablefile %newfilename
/outputxdccinfo 14Set Auto Resume Send Disabled Bots File name to2 $autoresumesenddisablefile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Active Networks File ( $+ %networksendfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Active Networks File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $networksendfile $xdccdir $+ \ $+ %newfilename
set %networksendfile %newfilename
/outputxdccinfo 14Set Active Networks File name to2 $networksendfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Current XDCC Transfers File ( $+ %xdccsinprogress $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Current XDCC Transfers File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccsinprogress $xdccdir $+ \ $+ %newfilename
set %xdccsinprogress %newfilename
/outputxdccinfo 14Set Current XDCC Transfers File name to2 $xdccsinprogress $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Session Completed Incoming Transfers File ( $+ %xdccsessiongetfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Session Completed Incoming Transfers File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccsessiongetfile $xdccdir $+ \ $+ %newfilename
set %xdccsessiongetfile %newfilename
/outputxdccinfo 14Set Session Completed Incoming Transfers File name to2 $xdccsessiongetfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Session Completed Outgoing Transfers File ( $+ %xdccsessionsendfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Session Completed Outgoing Transfers File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccsessionsendfile $xdccdir $+ \ $+ %newfilename
set %xdccsessionsendfile %newfilename
/outputxdccinfo 14Set Session Completed Outgoing Transfers File name to2 $xdccsessionsendfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Last Known Queue Position File ( $+ %xdccqueueposfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Last Known Queue Position File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccqueueposfile $xdccdir $+ \ $+ %newfilename
set %xdccqueueposfile %newfilename
/outputxdccinfo 14Set Last Known Queue Position File name to2 $xdccqueueposfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Channel Key File ( $+ %chankeyfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Channel Key File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $chankeyfile $xdccdir $+ \ $+ %newfilename
set %chankeyfile %newfilename
/outputxdccinfo 14Set Channel Key File name to2 $chankeyfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for DCCALLOW Network Support File ( $+ %dccallownetworkfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for DCCALLOW Network Support File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $dccallownetworkfile $xdccdir $+ \ $+ %newfilename
set %dccallownetworkfile %newfilename
/outputxdccinfo 14Set DCCALLOW Network Support File name to2 $dccallownetworkfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Alternate Server Method Bot File ( $+ %alternatedccserverfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Alternate Server Method Bot File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $alternatedccserverfile $xdccdir $+ \ $+ %newfilename
set %alternatedccserverfile %newfilename
/outputxdccinfo 14Set Alternate Server Method Bot File name to2 $alternatedccserverfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Wishlist File ( $+ %xdccwishlist $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Wishlist File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccwishlist $xdccdir $+ \ $+ %newfilename
set %xdccwishlist %newfilename
/outputxdccinfo 14Set Wishlist File name to2 $xdccwishlist $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...Set filename for Debug Log File ( $+ %xdccdebugfile $+ ):{
var %newfilename = $replxdccfile($?="Please input new filename for Debug Log File")
if (%newfilename != $null && !$exists($xdccdir $+ \ $+ %newfilename)) {
.rename $xdccdebugfile $xdccdir $+ \ $+ %newfilename
set %xdccdebugfile %newfilename
/outputxdccinfo 14Set Debug Log File name to2 $xdccdebugfile $+ .
}
else { /outputxdccinfo 4ERROR:14 File already exists or no filename entered. }
/outputxdccinfo
}
...-
...Set XDCC Script Main directory ( $+ $xdccdir $+ ):{ /movexdccdir }
..-
..Load Previously Stored XDCC Script Setting Profile:{
var %xdccprofilename = $sfile($xdccdir $+ \ $+ *.set, Enter file name to load profile from, Load)
if (%xdccprofilename != $null) { /loadxdccscriptsettings $remove(%xdccprofilename,.set) }
}
..Save XDCC Script Setting Profile:{
var %xdccprofilename = $sfile($xdccdir $+ \ $+ *.set, Enter file name to save profile to, Save)
if (%xdccprofilename != $null) { /savexdccscriptsettings $remove(%xdccprofilename,.set) }
}
..Revert ALL Settings to Default Values:/reverttodefaults
..-
..Help on These Settings:/SettingsXDCChelp
.-
.Help:
..Help On Script Workings:/XDCChelp
..Help On General Settings:/SettingsXDCChelp
..Help On Timers:/TimerXDCChelp
..Show All Help Files:{
/XDCChelp
/SettingsXDCChelp
/TimerXDCChelp
}
.Check for New Script Version:/checknewversion
.About:/versioninfo
-
}
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
Menu @XDCC_Info {
-
Clear @XDCC_Info window buffer:/clear
-
}
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------
Menu menubar {
-
XDCC Get help:/XDCChelp
-
}
;-------------------------------------------------------------------------
;-------------------------------------------------------------------------