You are not logged in.

#1 2009-07-02 13:22:40

lolilolicon
Member
Registered: 2009-03-05
Posts: 1,722

irssi DCC transfer automation?

I'm totally newbie to using IRC's DCC to transfer files. I'm a little disappointed that the thing I've been downloading transfers really slow and there have been several times the connection was closed with the file unfinished. I have to type /msg <bot> xdcc send #<file_id>  and  /dcc resume <bot> <filename> again to resume it.  That's too bad.

I want to leave it alone and let it get the job done all without me. Like some ftp client's got a 'keep alive' option, or Bittorrent clients with a re-request ability... I want to know with irssi how I can "keep it alive", or even when the connection gets closed it should re-request and resume automatically.

What's more, I've got 24 files, each about 300MB large, to download... That's a lot when you can't automate the request and transfer.
I'm wondering, if I can just write some little script to get this whole task done one by one automatically?... Does irssi support something like that? (I believe lftp has this nice attribute, it's like bash...)

Thanks in advance.

Last edited by lolilolicon (2009-07-03 00:56:27)


This silver ladybug at line 28...

Offline

#2 2009-07-03 04:26:42

lolilolicon
Member
Registered: 2009-03-05
Posts: 1,722

Re: irssi DCC transfer automation?

OK,
I came back and searched a bit, finding this xdccget.pl script for irssi here
http://scripts.irssi.org/html/xdccget.pl.html
haven't tried it out yet.
[Edit: tried it but it not that good for me, since when the file transfer in the queue fails, it does not retry to get this file to resume till completed, but drop this task and proceed for the next in the queue... This is nothing if my connection does not get closed, which isn't the case... :sigh:]

Edit:: I don't know perl... but I read the code a little, doesn't this mean it WILL retry till this file is completed?

100     if (/\*\*\* Closing Connection:/) {
101         print CLIENTCRAP "%R>>%n XDCC-Transfer closed";
102         # Is it a canceled transger?
103         if ($queue[0]->{'status'} == 5) {
104         $queue[0]->{'status'} = 4;
105         } else {
106         # We should try again
107         $queue[0]->{'status'} = 0;
108         }

Reading this, I know I'm close! Any body know perl could help me out in a flash I believe...
Now I'll go crawl over the codes..........XD

Does irssi only support loading perl scripts this way (like loading a module) or there's some way else?

Or if not, any better client for an alternative? Thanks.

Last edited by lolilolicon (2009-07-03 06:40:51)


This silver ladybug at line 28...

Offline

#3 2009-07-04 01:22:01

Daenyth
Forum Fellow
From: Boston, MA
Registered: 2008-02-24
Posts: 1,244

Re: irssi DCC transfer automation?

That code snippet is not too useful without knowing what the status numbers mean.

Offline

#4 2009-07-04 06:45:25

lolilolicon
Member
Registered: 2009-03-05
Posts: 1,722

Re: irssi DCC transfer automation?

Daenyth, happy you replied ^^ (I remember you as a perl master)
The xdccget.pl is in here:
http://scripts.irssi.org/html/xdccget.pl.html

Take a look please.


This silver ladybug at line 28...

Offline

Board footer

Powered by FluxBB