ok, I do not like writing documentation, and this is a first very rough release anyway :-) So I'll be very concise. napyrc is a proxy between napster protocol and irc protocol. It looks like an IRC server, you connect to it with your ordinary IRC client. Napster channels are mapped to IRC channels (with preppended #), napster nicks are mapped to IRC nick, as you could expect. Be sure to connect with the same IRC nick as your napster nick! Common IRC commands works, e.g. /join /part /whois /msg /list Many other commands do not work, e.g. /who /lusers Downloading and searching is done via special &console channel. Join the channel and issue commands (just write into the channel): search name - to search for a song named name e.g. search Metallica dir nick - to list all songs shared by nick e.g. dir Patel Notice: if the dir'ed nick shares too many files, napster server will disconnect you when you ask for a listing. This is a bug in napster server, not in napyrc, and will happen with any client. get nick song - get song from nick. You have to enter the full path of the song. e.g. get Patel C:\Program Files\Napster\Music\Nothing Else Matters.mp3 How user friendly :-) Or just enter the number listed in the first column with dir or search e.g. get 6 ps - print current transfers and their progress GET means somebody is GETting the file from you, RETR means you are RETRieving the file, SEND means someboey is SENDing the file to you (if he is firewalled) set - display various variables set variable value - set variable so far, meaningful variables are upload_limit, per_user_upload_limit, upload_speed, resume This affects only newly created connections. set N.variable value - set internal variable for connection #N (as displayed with ps) to the value. so far, the only meaningful variable is upload_speed (in B/s) e.g. set 12.upload_speed 20000 Resuming: if resume is set to 1, and file you are trying to download already exists, downloading will start at the offset equal to the length of the existing file, and data will be appended to the existing file. No other properties (such as bitrate, frequency...) are checked! Resuming works only if your part is not behind a firewall. So far, napyrc is known to work well with following irc clients: sirc bitchx epic4 zircon telnet localhost 6667 :-) I tested napyrc only on linux, with python 1.5.2. In theory, it should work on other platforms too... but theory is theory :-) Sharing files: napyrc will happily share all files, not just mp3's. Enter the file extensions in config.py, e.g. shared_patterns = ["*.mp3", "*.exe"] If the filename does not have an extension .mp3, string "|not really an|.mp3" will be added to it to fool napster server. Tell the downloader to rename it after downloading. All the information about shared files is computed on the fly when you connect to the server. This can be disk and CPU stressing, therefore you can prepare a list of shared files before. Use program makeshared.py, and set option use_shared_file = 1 in config.py Do not forget to update the list from time to time :-) What does not work: firewalled uploading - you must have direct connection to internet. your party can be firewalled (can have port 0) hotlist connecting as a new user - you must already have an account on napster resuming download wht your party is firewalled and others...