X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=m4%2Flls%2Fserver_cmd.suite.m4;h=2a39907cee624219d1fb166b07dbf84288f67bb4;hp=2ddc53dcba134073fab6081c9365d608c3dc2856;hb=0dc920429abd832a9a8c3e056069df063f0fa028;hpb=fdf416e9af730a1df9eec8d7acb108d7ca881926 diff --git a/m4/lls/server_cmd.suite.m4 b/m4/lls/server_cmd.suite.m4 index 2ddc53dc..2a39907c 100644 --- a/m4/lls/server_cmd.suite.m4 +++ b/m4/lls/server_cmd.suite.m4 @@ -52,6 +52,15 @@ aux_info_prefix = Permissions: Print what is being done. [/help] +[subcommand addatt] + purpose = add new attribute(s) + non-opts-name = attribute... + aux_info = AFS_READ | AFS_WRITE + [description] + This adds new attributes to the attribute table. At most 64 attributes + may be defined. + [/description] + [subcommand check] purpose = run integrity checks on database tables aux_info = AFS_READ @@ -115,18 +124,18 @@ aux_info_prefix = Permissions: summary = enable verbose mode [subcommand ff] - purpose = jump N seconds forward or backward - synopsis = n[-] + purpose = jump forward or backward in the current audio file + synopsis = seconds aux_info = VSS_READ | VSS_WRITE [description] - This sets the 'R' (reposition request) bit of the vss status flags - which enqueues a request to jump n seconds forwards or backwards. - - Example: - - para_client ff 30- + This enqueues a request to reposition the audio stream according to + the argument, which may be a signed or an unsigned integer. Negative + values correspond to backward jumps. - jumps 30 seconds backwards. + If a negative number is given whose absolute value exceeds the current + postition of the stream, a jump to the beginning of the audio file + is performed. If a positive amount of seconds is given which exceeds + the remaining time of the audio file, the next audio file is loaded. [/description] @@ -135,10 +144,11 @@ aux_info_prefix = Permissions: non-opts-name = [command] aux_info = NO_PERMISSION_REQUIRED [description] - Without any arguments, help prints a list of available commands. When - called with a command name as first argument, it prints the description - of this command. + When executed without any arguments, the available server commands + are listed. Otherwise, if the first argument is the name of a server + command, the description of this command is shown. [/description] + m4_include(`long-help.m4') [subcommand hup] purpose = reload config file, log file and user list @@ -169,6 +179,110 @@ aux_info_prefix = Permissions: n <= 100. [/description] +[subcommand ls] + purpose = list audio files which match a pattern + non-opts-name = [pattern...] + aux_info = AFS_READ + [description] + If no pattern is given, all files are listed. Otherwise, the command + lists all files of the audio file table whose path matches at least + one of the given patterns. + [/description] + [option listing-mode] + short_opt = l + summary = use alternative output format + arg_type = string + arg_info = optional_arg + typestr = mode + default_val = long + [help] + The optional mode argument is either a single character or a word + according to the following list. + + short (s). List only the path or basename (last component of the path), + depending on whether -p is also given. This listing mode acts as if + --listing-mode had not been given. + + long (l). Show detailed information. This is the default if no argument + to --listing-mode is supplied. + + verbose (v). Multi-line output, one row per data field stored in the + audio file table. + + parser-friendly (p). Like verbose listing mode, but use numerical + values for the names of the output fields and prefix each line with + a length field. + + mbox (m). Generate output suitable to be viewed with a mail + program. One "mail" per matching audio file. + + chunk-table (c). Print path (or basename, depending on whether -p is + also given), chunk time and chunk offsets. + + [/help] + [option basename] + short_opt = b + summary = list and match basenames only + [help] + Print only the basename of each matching file and match only the + basenames of the paths stored in the audio file table against the + given patterns. The default is to print and match the full path. + [/help] + [option admissible] + short_opt = a + summary = list only admissible files + [help] + List only files which are admissible with respect to the current mood + or playlist. + [/help] + [option reverse] + short_opt = r + summary = reverse sort order + [option unix-date] + short_opt = d + summary = print dates as seconds after the epoch + [option sort] + short_opt = s + summary = change sort order + arg_type = string + arg_info = required_arg + typestr = order + default_val = path + [help] + The sort order must be given as an required argument. Like for + --listing-mode, this argument may either be a single character or a + word, according to the following list. + + path (p). Sort alphabetically by path or basename, depending on + whether -b is given. This is the default if --sort is not given. + + score (s). Iterate over the entries of the score table, rather than + the audio file table. This sort order implies --admissible, since + the score table contains only admissible files. + + lastplayed (l) + + numplayed (n) + + frequency (f) + + channels (c) + + image-id (i) + + lyrics-id (y) + + bitrate (b) + + duration (d) + + audio-format (a) + + hash (h) + + If --sort is not given, path sort is implied. + [/help] + [subcommand lsatt] purpose = list attributes aux_info = AFS_READ @@ -294,20 +408,45 @@ aux_info_prefix = Permissions: [subcommand sender] purpose = control paraslash senders - synopsis = [sender cmd [arguments]] + synopsis = [sender subcmd [arguments]] aux_info = VSS_READ | VSS_WRITE [description] - Send a command to a specific sender. The following commands are - available, but not all senders support every command. + This command executes a subcommand for the given sender, which is + one of "http", "dccp" or "udp". Various subcommands exist to print + information about the sender, to activate and deactivate the sender, + and to change the access permissions and targets. The following + subcommands are available: + + help, status, on, off, allow, deny, add, delete. + + All senders support the first four commands. The "allow" and "deny" + commands are supported by the http and the dccp senders while "add" + and "delete" are only supported by the udp sender. If no sender is + given, the list of available senders is shown. + + Examples: + + Get help for the udp sender (contains further examples): + + sender udp help + + Show the access control list and the number of connected clients of + the http sender: + + sender http status + + Senders may be activated and deactivated independently of each + other. The following command switches off the dccp sender: + + sender dccp off - help, on, off, add, delete, allow, deny, status. + Add an UDP unicast for a client to the target list of the UDP sender: - The help command prints the help text of the given sender. If no - command is given the list of available senders is shown. + sender udp add client.foo.org - Example: + Start UDP multicast, using the default multicast address: - para_client sender http help + sender udp add 224.0.1.38 [/description] @@ -362,11 +501,12 @@ aux_info_prefix = Permissions: [/description] [subcommand tasks] - purpose = list active server tasks + purpose = list active server tasks (deprecated) aux_info = NO_PERMISSION_REQUIRED [description] - For each task, print ID, status and name. This is mostly useful - for debugging. + This used to print the ID, the status and the name of each task, + mainly for debugging purposes. As of version 0.6.2, the subcommand + prints nothing. It will be removed in 0.7.0. Don't use. [/description] [subcommand term] @@ -498,3 +638,65 @@ aux_info_prefix = Permissions: short_opt = v summary = print detailed (multi-line) version text +m4_define(`BLOB_COMMANDS', ` +[subcommand rm`$2'] + purpose = remove `$1' blob(s) + non-opts-name = pattern... + aux_info = AFS_READ | AFS_WRITE + [description] + Remove all `$1' blobs which match any of the given patterns. + [/description] + +[subcommand mv`$2'] + purpose = rename `$1' blob(s) + non-opts-name = source dest + aux_info = AFS_READ | AFS_WRITE + [description] + Rename `$1' source to dest. The command fails if the source `$1' + does not exist or if the destination `$1' already exists. + [/description] + +[subcommand add`$2'] + purpose = add a blob to the `$1' table + non-opts-name = `$1'_name + aux_info = AFS_READ | AFS_WRITE + [description] + Read from stdin and ask the audio file selector to create a blob in + the `$1' table. If the named blob already exists, it gets replaced + with the new data. + [/description] + +[subcommand cat`$2'] + purpose = dump a `$1' blob to stdout + non-opts-name = `$1'_name + aux_info = AFS_READ + +[subcommand ls`$2'] + purpose = list blobs of type `$1' which match a pattern + non-opts-name = [pattern...] + aux_info = AFS_READ + [description] + Print the list of all blobs which match the given pattern. If no + pattern is given, the full list is printed. + [/description] + [option id-sort] + short_opt = i + summary = sort by identifier + [help] + The default is to sort alphabetically by name. + [/help] + [option long] + short_opt = l + summary = long listing + [help] + Print identifier and name. The default is to print only the name. + [/help] + [option reverse] + short_opt = r + summary = reverse sort order +') + +BLOB_COMMANDS(`moods', `mood') +BLOB_COMMANDS(`playlist', `pl') +BLOB_COMMANDS(`image', `img') +BLOB_COMMANDS(`lyrics', `lyr')