Changes between Version 7 and Version 8 of CreatingOtherClients


Ignore:
Timestamp:
24/07/2006 02:18:50 (11 years ago)
Author:
daelstorm
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CreatingOtherClients

    v7 v8  
    99=== Generic message format ===
    1010
    11  1. '''uint''' __message_len__  -- Length of the message (including the message code)
     11 1. '''uint''' __message_len__  -- Length of the message (including the message code) (unsigned chars)
    1212 1. '''uint''' __message_code__ -- Message code
    1313 1. Message specific data
     
    2525==== userdata ====
    2626Statistics about a user
    27    1. '''uint''' __status__      -- user's status
    28    1. '''uint''' __avgspeed__    -- user's average upload speed
    29    1. '''uint''' __downloadnum__ -- (unknown)
    30    1. '''uint''' __files__       -- number of files a user has shared
    31    1. '''uint''' __dirs__        -- number of dirs a user has shared
    32    1. '''bool''' __slotsfull__   -- wether or not the user has an upload slot available
     27 1. '''uint''' __status__      -- user's status
     28 1. '''uint''' __avgspeed__    -- user's average upload speed
     29 1. '''uint''' __downloadnum__ -- (unknown)
     30 1. '''uint''' __files__       -- number of files a user has shared
     31 1. '''uint''' __dirs__        -- number of dirs a user has shared
     32 1. '''bool''' __slotsfull__   -- wether or not the user has an upload slot available
    3333     
    3434     
    3535==== transfer ====
    3636Information about a transfer
    37    1. '''bool''' __is_upload__   -- Is this an upload or a download?
    38    1. '''string''' __user__      -- The user associated with this transfer
    39    1. '''string''' __path__      -- The original path to the transfer
    40    1. '''uint''' __place__       -- Place in queue or (uint)-1 if unknown (only valid for downloads)
    41    1. '''uint''' __state__       -- The transfer's state
    42      * 00: Finished
    43      * 01: Transferring
    44      * 02: Negotiating
    45      * 03: Waiting
    46      * 04: Establishing
    47      * 05: Initiating
    48      * 06: Connecting
    49      * 07: Queued
    50      * 08: Getting address
    51      * 09: Getting status
    52      * 10: Awaiting user
    53      * 11: Connection closed
    54      * 12: Cannot connect
    55      * 13: Aborted
    56      * 14: Error
    57    1. '''string''' __error__     -- If the transfer's in error state, this contains the error
    58    1. '''off_t''' __position__   -- How far has the transfer proceded
    59    1. '''off_t''' __size__       -- Total size of this transfer
    60    1. '''uint''' __rate__        -- How fast the transfer is proceding
     37 1. '''bool''' __is_upload__   -- Is this an upload or a download?
     38 1. '''string''' __user__      -- The user associated with this transfer
     39 1. '''string''' __path__      -- The original path to the transfer
     40 1. '''uint''' __place__       -- Place in queue or (uint)-1 if unknown (only valid for downloads)
     41 1. '''uint''' __state__       -- The transfer's state
     42   * 00: Finished
     43   * 01: Transferring
     44   * 02: Negotiating
     45   * 03: Waiting
     46   * 04: Establishing
     47   * 05: Initiating
     48   * 06: Connecting
     49   * 07: Queued
     50   * 08: Getting address
     51   * 09: Getting status
     52   * 10: Awaiting user
     53   * 11: Connection closed
     54   * 12: Cannot connect
     55   * 13: Aborted
     56   * 14: Error
     57 1. '''string''' __error__     -- If the transfer's in error state, this contains the error
     58 1. '''off_t''' __position__   -- How far has the transfer proceded
     59 1. '''off_t''' __size__       -- Total size of this transfer
     60 1. '''uint''' __rate__        -- How fast the transfer is proceding
    6161       
    6262==== fileentry ====
    6363Information about a shared file
    64    1. '''off_t''' __filesize__   -- the file's size
    65    1. '''string''' __ext__       -- the file's extended attribute format (only 'mp3' or an empty string are supported)
    66    1. '''uint''' __numattrs__    -- number of extended attributes
    67    1. Iterate the range of __numattrs__
    68      * '''uint''' __attr__      -- an attribute The 'mp3' extended attribute format holds 3 attributes:
    69        1. '''uint''' __bitrate__   -- the bitrate of the file
    70        1. '''uint''' __length__    -- duration of the file in seconds
    71        1. '''uint''' __vbr__       -- wether the mp3 has a variable bitrate or not
     64 1. '''off_t''' __filesize__   -- the file's size
     65 1. '''string''' __ext__       -- the file's extended attribute format (only 'mp3' and 'ogg' or an empty string are supported)
     66 1. '''uint''' __numattrs__    -- number of extended attributes
     67 1. Iterate the range of __numattrs__
     68   * '''uint''' __attr__      -- an attribute The extended attribute format holds 3 attributes:
     69     1. '''uint''' __bitrate__   -- the bitrate of the file
     70     1. '''uint''' __length__    -- duration of the file in seconds
     71     1. '''uint''' __vbr__       -- wether the mp3 has a variable bitrate or not
    7272   
    7373     
    7474==== folder ====
    7575Information about a shared folder
    76    1. '''uint''' __numfiles__    -- how many files the folder contains
    77    1. Iterate the range of __numfiles__
    78       1. '''string''' __file__    -- the filename or full path (depends on context)
    79       1. '''fileentry''' __info__ -- the file's information
     76 1. '''uint''' __numfiles__    -- how many files the folder contains
     77 1. Iterate the range of __numfiles__
     78   1. '''string''' __file__    -- the filename or full path (depends on context)
     79   1. '''fileentry''' __info__ -- the file's information
    8080
    8181==== sharesdb ====
    8282Information about a user's shares
    83    1. '''uint''' __numfolders__  -- how many folders there are
    84    1. Iterate the range of __numfolders__
    85       1. '''string''' __folder__  -- the folder's path
    86       1. '''folder''' __files__   -- the files contained in this folder (filenames are relative)
     83 1. '''uint''' __numfolders__  -- how many folders there are
     84 1. Iterate the range of __numfolders__
     85   1. '''string''' __folder__  -- the folder's path
     86   1. '''folder''' __files__   -- the files contained in this folder (filenames are relative)
    8787     
    8888==== cipher ====
     
    411411   1. '''string''' __username__ - ''Username to download a file from''
    412412   1. '''string''' __path__ - ''Path of the file to download''
    413    1. '''string''' __localpath__ - ''Path to store the file name''
    414    1. '''off_t''' __size__ - ''File's size (can be 0)''
    415413 * Daemon
    416414   * '''Not Sent'''
     
    421419   1. '''string''' __path__ - ''Path of the file to download''
    422420   1. '''string''' __localpath__ - ''Path to store the file name''
    423    1. '''off_t''' __size__ - ''File's size (can be 0)''
    424421 * Daemon
    425422   * '''Not Sent'''
     
    553550 * SHA256
    554551== Soulseek weirdness ==
    555 
    556 == Other stuff ==
    557  * Museekd sends unsigned chars for message sizes to clients