Re: POE::Component::Server::IRC (and PoCo::FTP and other goodies)

2002-01-24 Thread Rocco Caputo

On Thu, Jan 24, 2002 at 12:47:52PM -0500, alex j avriette wrote:
>
> On Thursday, January 24, 2002, at 11:52 AM, Rocco Caputo wrote:
>
> > On a more higher level, there are a lot of half-baked ideas on POE's
> > web site.  Implementing one of them, or even just commenting on them,
> > would be a big help.  It's a lot of stuff to think about, and it would
>
> Okay, I'll have a looksee. Two things on my list of "code that needs to
> be written":
>
> A. Streaming server for MP3/Ogg data

This one I can help a little with.  Here's a simple streaming web
server adapted from a sample written by Arthur Bergman.

http://poe.perl.org/?POE_Cookbook/Web_Stream_Server

That reminds me: Another way to help is to suggest or write articles
for the cookbook and/or FAQ.  A lot of people learn better by example.

> A note about napster servers. They function almost exactly like IRC
> servers. They are a chat medium, with an improvised sort of CTCP for
> sharing files. The server itself shares no files.

Increasing the SysRW block size may not help as much as I originally
thought.  I had the strange idea that your server was streaming large
files.

-- Rocco Caputo / [EMAIL PROTECTED] / poe.perl.org / poe.sf.net



Re: POE::Component::Server::IRC (and PoCo::FTP and other goodies)

2002-01-24 Thread tr16

On Thu, Jan 24, 2002 at 12:47:52PM -0500, alex j avriette wrote:

> course wrote the LittleEndian filter, and the napster server. I am very 
> impressed with it and want to contribute however I can. I suspect 
> finishing off PoCo::FTP would be useful to the project, but I'd have to 
> reach sungo to do that I suspect. Is sungo on list?

I don't know if sungo did something, but you could try a module i wrote:
http://sourceforge.net/projects/poeftp. It works well so far. Data
connections are missing and the API is quite raw atm but i like the
cmd queue stuff somehow, and it works :) Finishing it should not be too much
work. It mostly depends on the chosen interface, passing data packets as
events is easy, interoperating with client session wheels isn't.
I havent worked on it since I had no time and there were no urgent need.
Additionaly I wanted to make it the test case for a coloured petri net
implementation. I read about these some months ago and they should really
help. Implementing it is not easy, the original implementation uses
Standard ML and strong type checking and binding to tokens based on their
values. A lot of the power results from that, yet I don't really know
how to do it in Perl. Anyway, it could make POE programming a lot easier,
concurrency related behaviour is much easier to get as a petri net.
I hope that I can come up with something in the next 1 or 2 months, depends
on the time and brain I got :)
For example, it could remove all the ugly cmd chain/queue handling in the
FTP module, all the internal states, race condition work arounds, ...

torvald



Re: POE::Component::Server::IRC (and PoCo::FTP and other goodies)

2002-01-24 Thread Matt Cashner

On (01/24/02 12:47), alex j avriette wrote:

> finishing off PoCo::FTP would be useful to the project, but I'd have to 
> reach sungo to do that I suspect. Is sungo on list?

but of course i am. i am not pursuing that poco anymore. my last
employer pulled funding of that project and i dont work that employer
anymore.  it was one of those things where i needed it for work. but now
i dont. have at.  poco::Ftp is one of those oft talked about never done
kinda things.  here's to hoping you actually finish it :)

> B. PoCo::FTP (you have no idea how much I despise Net::FTP)

when the revolution comes, the Net:: tree is first up against the wall.
/me shivers.

m.



Re: POE::Component::Server::IRC (and PoCo::FTP and other goodies)

2002-01-24 Thread alex j avriette


On Thursday, January 24, 2002, at 11:52 AM, Rocco Caputo wrote:

> perlserver.pl is 403 forbidden.  Have you tried increasing the SysRW

Oops, sorry, that machine was recently upgraded and im afraid a complete 
mirror of its previous configuration was not accomplished.

http://envy.posixnap.net/~alex/perlcode/perlserver/perlserver.pl.txt

is the code for the server, and its now available. I could *swear* I 
previously sent this code to the list, but it was in that transitory 
period between two servers, so it may have never gotten out at all. so 
the modules necessary for the server are there as well as the server 
itself. it was mostly just a proof of concept. i got discouraged when it 
became slow and just chalked it up to perl not being able to handle it. 
If there's something I'm doing thats deliberately obtuse, let me know 
and I'll dig right in again.

> It's possible to write POE servers at three levels.  Each successively
> higher level trades away some control and performance for convenience.

To be honest, I havent really gone over the POE documentation 
extensively, and the napster server was my first project. I saw 
PoCo::FTP and decided I wanted to hack on that, but havent had time to 
make it useful.

>> I'd love to contribute if I can however.
>
> Publishing your Napster code would help.  There are lots of options if
> you want a more direct hand in POE's development...

I am a POE zealot already. It is far superior to any of the other 
network interfaces (yes I am aware that POE is not a network interface, 
but thats what it means to me) that perl has. Ive used PoCo::IRC, of 
course wrote the LittleEndian filter, and the napster server. I am very 
impressed with it and want to contribute however I can. I suspect 
finishing off PoCo::FTP would be useful to the project, but I'd have to 
reach sungo to do that I suspect. Is sungo on list?

> On a more higher level, there are a lot of half-baked ideas on POE's
> web site.  Implementing one of them, or even just commenting on them,
> would be a big help.  It's a lot of stuff to think about, and it would

Okay, I'll have a looksee. Two things on my list of "code that needs to 
be written":

A. Streaming server for MP3/Ogg data
B. PoCo::FTP (you have no idea how much I despise Net::FTP)
C. (waaay down on the priority list) The Napster server. I'd like to 
talk to LDS about this as well, he wrote a napster server using 
IO::Socket, as well as a client module (MP3::Napster), which might be 
better off being POE.

Oh, since I've forgotten to add this above...

A note about napster servers. They function almost exactly like IRC 
servers. They are a chat medium, with an improvised sort of CTCP for 
sharing files. The server itself shares no files.

> No help is too small.  Thanks!

Hey, I'm happy to contribute what I can. I really like POE and perl. :-)

alex