diff --git a/CPAN/Media/Scan.pm b/CPAN/Media/Scan.pm
new file mode 100644
index 00000000000..2b7d3a6c607
--- /dev/null
+++ b/CPAN/Media/Scan.pm
@@ -0,0 +1,155 @@
+package Media::Scan;
+
+use strict;
+use base qw(Exporter);
+
+use Media::Scan::Audio;
+use Media::Scan::Image;
+use Media::Scan::Error;
+use Media::Scan::Progress;
+use Media::Scan::Video;
+
+# Log levels
+use constant MS_LOG_ERR => 1;
+use constant MS_LOG_WARN => 2;
+use constant MS_LOG_INFO => 3;
+use constant MS_LOG_DEBUG => 4;
+use constant MS_LOG_MEMORY => 9;
+
+# Flags
+use constant MS_USE_EXTENSION => 1;
+use constant MS_FULL_SCAN => 1 << 1;
+use constant MS_RESCAN => 1 << 2;
+use constant MS_INCLUDE_DELETED => 1 << 3;
+use constant MS_WATCH_CHANGES => 1 << 4;
+use constant MS_CLEARDB => 1 << 5;
+
+our $VERSION = '0.01';
+
+our @EXPORT = qw(
+ MS_LOG_ERR MS_LOG_WARN MS_LOG_INFO MS_LOG_DEBUG MS_LOG_MEMORY
+ MS_USE_EXTENSION MS_FULL_SCAN MS_RESCAN MS_INCLUDE_DELETED
+ MS_WATCH_CHANGES MS_CLEARDB
+);
+
+require XSLoader;
+XSLoader::load('Media::Scan', $VERSION);
+
+=head2 new( \@paths, \%options )
+
+Create a new Media::Scan instance and begin scanning.
+
+paths may be a single scalar path, or an array reference with multiple paths.
+
+options include:
+
+=over 4
+
+=item loglevel (default: MS_LOG_ERR)
+
+One of the following levels:
+
+ MS_LOG_ERR
+ MS_LOG_WARN
+ MS_LOG_INFO
+ MS_LOG_DEBUG
+ MS_LOG_MEMORY
+
+=item async (default: 0)
+
+If set to 1, all scanning is performed in a background thread, and the call to new() will
+return immediately. Make sure to keep a reference to the Media::Scan object, or
+the scan will be aborted at DESTROY-time.
+
+=item cachedir (default: current dir)
+
+An optional path for libmediascan to store some cache files.
+
+=item flags (default: MS_USE_EXTENSION | MS_FULL_SCAN)
+
+An OR'ed list of flags, the possible flags are:
+
+ MS_USE_EXTENSION - Use a file's extension to determine how to scan it.
+ MS_FULL_SCAN - Perform a full scan on every file.
+ MS_RESCAN - Only scan files that are new or have changed since the last scan.
+ MS_INCLUDE_DELETED - The result callback will be called for files that have been deleted
+ since the last scan.
+ MS_WATCH_CHANGES - Continue watching for changes after the scan has completed.
+ MS_CLEARDB - Wipe the internal libmediascan database before scanning.
+
+=item ignore (default: none)
+
+An array reference of file extensions that should be skipped. You may also specify 3 special types:
+
+ AUDIO - Ignore all audio files.
+ IMAGE - Ignore all image files.
+ VIDEO - Ignore all video files.
+
+=item thumbnails (default: none)
+
+An arrayref of hashes with one or more thumbnail specifications. Thumbnails are created during the
+scanning process and are available within the result callback.
+
+The format of a thumbnail spec is:
+
+ { format => 'AUTO', # or JPEG or PNG
+ width => 100,
+ height => 100,
+ keep_aspect => 1,
+ bgcolor => 0xffffff,
+ quality => 90,
+ }
+
+Most values are optional, however at least width or height must be specified.
+
+=item on_result
+
+A callback that will be called for each scanned file. The function will be passed
+a L
-Squeezebox Server looks in the same path as the song, thus you would be looking for the +Logitech Media Server looks in the same path as the song, thus you would be looking for the same artfile in this case. However there is an option in Server Settings, Advanced, Formatting for setting filenames for Artwork, Artwork Thumbnail, and for setting a central location for artwork files. You can enter a specific filename @@ -71,7 +71,7 @@
%ARTIST-ALBUM.jpg-
for Artwork or Artwork Thumbnail in the server settings section. The extension can be specified for any Squeezebox Server supported format, .jpg is +
for Artwork or Artwork Thumbnail in the server settings section. The extension can be specified for any Logitech Media Server supported format, .jpg is assumed if no extension is given.
@@ -131,7 +131,7 @@The above list is included for completeness, it is unlikely that anyone would actually want to have differing artwork files for songs of different bitrates, but the -ability is in the Squeezebox Server. +ability is in the Logitech Media Server.
diff --git a/HTML/EN/html/docs/buttons.html b/HTML/EN/html/docs/buttons.html index f4498b0b3a3..07eacb82d51 100644 --- a/HTML/EN/html/docs/buttons.html +++ b/HTML/EN/html/docs/buttons.html @@ -43,7 +43,7 @@
The code to button name mapping is contained within .ir files located - in the IR subfolder of the Squeezebox Server folder. The files + in the IR subfolder of the Logitech Media Server folder. The files consist of lines with the button name followed by an equals sign (=) followed by the IR code in hex (no 0x necessary). Everything after a # is considered a comment. Leading and trailing whitespace is ignored, as is whitespace @@ -81,7 +81,7 @@
The button name to function mapping is contained within .map files - located in the IR subfolder of the Squeezebox Server folder. + located in the IR subfolder of the Logitech Media Server folder. The files consist of lines with the button name followed by an equals sign (=) followed by the function. Everything after a # is considered a comment. Leading and trailing whitespace diff --git a/HTML/EN/html/docs/cli-api.html b/HTML/EN/html/docs/cli-api.html index 9fc71e03dea..6a77dc16c1a 100644 --- a/HTML/EN/html/docs/cli-api.html +++ b/HTML/EN/html/docs/cli-api.html @@ -10,12 +10,12 @@
- The Squeezebox Server provides a command-line interface to the + the Logitech Media Server provides a command-line interface to the players via TCP/IP. After starting the server, commands and queries may be sent by connecting to a specific TCP/IP port. The server will reply echoing the request (for commands) or by returning the - requested data (for queries). By default, the Squeezebox Server will listen + requested data (for queries). By default, the server will listen for connections on TCP/IP port 9090. This format is designed for ease of integration into AMX, Crestron and other automation systems. @@ -24,7 +24,7 @@
To use the command line interface interactively, use the telnet @@ -298,9 +298,9 @@
<playerid>
is the unique identifier for the
player, usually (but not guaranteed to be) the MAC address of the
- player. Some commands are global to the Squeezebox Server and do not
+ player. Some commands are global to the server and do not
require a <playerid>
. For commands requiring it,
- a random player will be selected by the Squeezebox Server if the
+ a random player will be selected by the server if the
<playerid>
is omitted, and returned in the
server reply. <playerid>
may be obtained by using
the "player id" or "players" queries.
@@ -308,7 +308,7 @@
<p0>
through <pN>
are
positional parameters. Pass a "?" to obtain a
- value for that parameter in the Squeezebox Server response (i.e. send a
+ value for that parameter in the server response (i.e. send a
query). Details of the parameters vary for each command as described
below.
http://<server>:<port>/music/<track_id>/cover.jpg @@ -598,7 +598,7 @@
- General: general management of the Command Line - Interface and of the Squeezebox Server. + Interface and of the server.
- Players: management of players. @@ -625,8 +625,8 @@
- Plugins: commands and queries - proposed by various Squeezebox Server plugins. These are only available if - the plugin is enabled in the Squeezebox Server configuration. The query + proposed by various server plugins. These are only available if + the plugin is enabled in the server configuration. The query "can" can be used to determine if a command or query is available.
@@ -698,7 +698,7 @@
The "login" command allows the caller to authenticate itself on - the server, as defined in the Security pane of the Squeezebox Server preferences. + the server, as defined in the Security pane of the server preferences. Like any other command, the user and password must be escaped. If successful, the server replaces the password with 6 star characters. If unsuccessful, the server disconnects. If security is off this command is @@ -760,7 +760,7 @@
- The "version" query returns version number of Squeezebox Server. + The "version" query returns version number of the server.
Examples: @@ -785,7 +785,7 @@
The "listen" command enables to receive asynchronously internal server commands (notifications) on the CLI connection. Notifications concern - all activity in the Squeezebox Server, not just the activity triggered by the + all activity in the server, not just the activity triggered by the command-line. Use 0 to clear, 1 to set, ? to query, and no parameter to toggle the listen state of the command-line connection.
@@ -866,7 +866,7 @@
The "pref" command allows the caller to set and query the - Squeezebox Server's internal preference values. The following affect the + server's internal preference values. The following affect the behaviour of CLI queries and commands:
- @@ -961,7 +961,7 @@
The "pref validate" command allows the caller to validate a - Squeezebox Server's internal preference value without setting it. + server's internal preference value without setting it.
If you want to validate a preference from an other namespace than "server" @@ -2138,7 +2138,7 @@
The "playerpref" command allows the caller to set and query the - Squeezebox Server's internal player-specific preferences values. + server's internal player-specific preferences values.
If you want to query/set a preference from an other namespace than "server" @@ -2174,7 +2174,7 @@
The "playerpref validate" command allows the caller to validate a - Squeezebox Server's internal player-specific preference value without setting it. + server's internal player-specific preference value without setting it.
If you want to validate a preference from an other namespace than "server" @@ -2342,7 +2342,7 @@
The "disconnect" command tells a Squeezebox 2 or newer player - on another Squeezebox Server instance to disconnect from its server and + on another server instance to disconnect from its server and connect to us. This is the opposite of "connect", where we tell a player connected to us to connect to a different server.
@@ -2376,7 +2376,7 @@
The "players" query returns information about all "players" (physical players as well as streaming clients) - known by the Squeezebox Server. + known by the server.
Accepted tagged parameters: @@ -2424,7 +2424,7 @@
count
- Number of players known by Squeezebox Server. Equivalent to + Number of players known by the server. Equivalent to "player count ?". @@ -2641,11 +2641,11 @@
- The "rescan" command causes Squeezebox Server to rescan the entire music + The "rescan" command causes the server to rescan the entire music library, reloading the music file information. If "playlists" is indicated ("rescan playlists"), only the playlist directory is rescanned. Issued with a "?", "rescan ?" returns if the - Squeezebox Server is currently scanning. Scanning occurs when Squeezebox Server starts and + server is currently scanning. Scanning occurs when the server starts and following "rescan" and "wipecache" commands.
@@ -2787,7 +2787,7 @@
- The "abortscan" command causes Squeezebox Server to cancel a running scan. + The "abortscan" command causes the server to cancel a running scan. Please note that after stopping a scan this way you'll have to fully rescan your music collection to get consistent data.
@@ -2811,7 +2811,7 @@
- The "wipecache" command allows the caller to have the Squeezebox Server + The "wipecache" command allows the caller to have the server rescan its music library, reloading the music file information. This differs from the "rescan" command in that it first clears the tag database. During a rescan triggered by "wipecache", @@ -3233,7 +3233,7 @@
rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -3453,7 +3453,7 @@rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -3503,7 +3503,7 @@album
- Album name, including Squeezebox Server's added "(N of M)" if + Album name, including the server's added "(N of M)" if the server is set to group multi disc albums together. See tag "title" for the unmodified value. @@ -3516,7 +3516,7 @@year
- Album year. This is determined by Squeezebox Server based on the album + Album year. This is determined by the server based on the album tracks. @@ -3773,7 +3773,7 @@
The "musicfolder" query returns the content of a given music - folder, starting from the top level directory configured in Squeezebox Server. + folder, starting from the top level directory configured in the server.
Accepted tagged parameters: @@ -3810,7 +3810,7 @@
Browses the folder identified by "url". If the content - of "url" did not happen to be in the Squeezebox Server database, it is + of "url" did not happen to be in the server database, it is added to it.
"url" has precedence over "folder_id" if both are @@ -4000,7 +4000,7 @@rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -4126,7 +4126,7 @@
rescan -Returned with value 1 if the Squeezebox Server is still scanning the database. The results may therefore be incomplete. + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -4532,7 +4532,7 @@ rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -4799,7 +4799,7 @@modificationTime
- Date and time song file was last changed. + Date and time song file was last changed on disk. @@ -4846,6 +4846,28 @@ +Genre IDs, separated by commas (only useful if the server is set to handle multiple items in tags).
+ ++ D + ++ addedTime + ++ Date and time song file was first added to the database. + ++ + U + ++ lastUpdated + ++ Date and time song file was last updated in the database. + +q @@ -5014,7 +5036,7 @@ album:All%20for%20You modificationTime:Thursday%2C%20March%201%2C%202007%2C%209:21:58%20PM type:mp3 genre_id:2 bitrate:160kbps%20VBR artist_id:3 tracknum:12 tagversion:ID3v2.3.0 year:1995 samplerate:44100 - url:file:%2F%2F%2FUsers%2Ffred%2FPrograms%2FSqueezebox Server%2FMusic%2F12%2520-%2520If%2520I%2520Had%2520You.mp3 + url:file:%2F%2F%2FUsers%2Ffred%2FPrograms%2FLogitech Media Server%2FMusic%2F12%2520-%2520If%2520I%2520Had%2520You.mp3 <LF>" @@ -5032,7 +5054,7 @@
- The "titles" command returns all titles known by the Squeezebox Server. + The "titles" command returns all titles known by the server.
Accepted tagged parameters: @@ -5138,7 +5160,7 @@
rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -5267,7 +5289,7 @@rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -6503,7 +6525,7 @@
@@ -6648,7 +6670,7 @@ rescan -Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The command may therefore have missed items. Not returned if no scan is in progress. rescan
- Returned with value 1 if Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -6702,7 +6724,7 @@version
- Squeezebox Server version. Equivalent to + Logitech Media Server version. Equivalent to "version ?" @@ -6711,7 +6733,7 @@info total albums
- Number of albums known to Squeezebox Server. Equivalent to + Number of albums known to the server. Equivalent to "info total albums ?" @@ -6720,7 +6742,7 @@info total artists
- Number of artists known to Squeezebox Server. Equivalent to + Number of artists known to the server. Equivalent to "info total artists ?" @@ -6729,7 +6751,7 @@info total genres
- Number of genres known to Squeezebox Server. Equivalent to + Number of genres known to the server. Equivalent to "info total genres ?" @@ -6738,7 +6760,7 @@info total songs
- Number of songs known to Squeezebox Server. Equivalent to + Number of songs known to the server. Equivalent to "info total songs ?" @@ -6766,7 +6788,7 @@player count
- Number of players known by Squeezebox Server. Equivalent to + Number of players known by the server. Equivalent to "player count ?". @@ -6936,13 +6958,13 @@other player count
- Number of players connected to other discovered Squeezebox Servers in the local network. + Number of players connected to other discovered servers in the local network. @@ -6967,7 +6989,7 @@ - For each player connected to some other Squeezebox Server in the local network: + For each player connected to some other server in the local network: server
- Squeezebox Server to which the player is connected + The server to which the player is connected @@ -7022,9 +7044,9 @@ player, including the current playlist. Set the <start> parameter to "-" to get the playlist data starting from the current song.
- In this "curent" mode and if repeat is on, Squeezebox Server will attempt + In this "curent" mode and if repeat is on, the server will attempt to return <itemsPerResponse> elements, by repeating the playlist at - most once, unless shuffling is on and Squeezebox Server is configured to re-shuffle + most once, unless shuffling is on and the server is configured to re-shuffle the playlist at each loop (in which case it is impossible to predict the song following the last one in the playlist until this last song has finished playing). @@ -7089,7 +7111,7 @@change detection "algorithm".
If the player is manually (through the web page) or automatically - deleted from Squeezebox Server, the status query returns the "error" + deleted from the server, the status query returns the "error" tag with value "invalid player" and the subscription is terminated.
Please note this mechanism is completely distinct from the @@ -7115,7 +7137,7 @@rescan
- Returned with value 1 if the Squeezebox Server is still scanning the + Returned with value 1 if the server is still scanning the database. The results may therefore be incomplete. Not returned if no scan is in progress. @@ -7555,7 +7577,7 @@
- filter:foldersonly - list folders only
- filter:filesonly - list files only -
- filter:musicfiles - list all files considered music files by Squeezebox Server; +
- filter:musicfiles - list all files considered music files by the server; this is the same filter as is used when scanning the disk for music
- filter:filetype:xyz - list file type .xyz only
- filter:xyz - any expression filter path/filenames @@ -7636,7 +7658,7 @@
A new client is notified using "client new". "client disconnect" is sent when a client disconnects. Unless it reconnects (as signaled by "client reconnect") before a number of - minutes, the client will be automatically forgotten by Squeezebox Server (as + minutes, the client will be automatically forgotten by the server (as indicated by command/notification "client forget".) @@ -7865,7 +7887,7 @@
url (or playlisturl) URL of the alarm playlist. Default: the current playlist. - url should be a valid Squeezebox Server audio url. + url should be a valid Logitech Media Server audio url. The special value 0 means the current playlist.
Example values:@@ -8095,8 +8117,8 @@
Plugins commands and queries
- The following command and queries are proposed by Squeezebox Server plugins. The - plugin must be enabled in the Squeezebox Server configuration for the commands + The following command and queries are proposed by server plugins. The + plugin must be enabled in the server configuration for the commands and queries to be available to the CLI client. Please use query "can" to determine if the given command or query is available. Query "radios" can diff --git a/HTML/EN/html/docs/display.html b/HTML/EN/html/docs/display.html index ac97312b0c4..22ed9098dd3 100644 --- a/HTML/EN/html/docs/display.html +++ b/HTML/EN/html/docs/display.html @@ -580,12 +580,12 @@
Character Displays
display. These may be defined by plugins and used anywhere on the display. -Squeezebox Server allows you to define many custom characters using: +
Logitech Media Server allows you to define many custom characters using: Slim::Display::Text::setCustomChar().
Each display screen can use up to 8 custom characters. If more custom characters exist on a screen they will be replaced with a blank -character. [NB Squeezebox Server also uses custom characters for the +character. [NB Logitech Media Server also uses custom characters for the predefined symbols which also count towards this limit.]
Each custom character is 5 pixels wide and 7 pixels high plus an diff --git a/HTML/EN/html/docs/fonts.html b/HTML/EN/html/docs/fonts.html index 6931e5a2e9a..4be23781915 100644 --- a/HTML/EN/html/docs/fonts.html +++ b/HTML/EN/html/docs/fonts.html @@ -47,7 +47,7 @@
Squeezebox Graphics Font Files
The inter-character spacing character must always be present. -However if any pixels are set in it, then Squeezebox Server interprets this +However if any pixels are set in it, then the server interprets this to mean no inter-character spacing. This is useful for font files defining custom characters which are intented to be displayed without space between them. @@ -56,7 +56,7 @@
Squeezebox Graphics Font Files
We used photoshop to create the font files, saving them as 1bpp Windows BMP files. -
If you modify a font file, you'll need to restart Squeezebox Server +
If you modify a font file, you'll need to restart the server to see your changes.
Custom Fonts
@@ -65,7 +65,7 @@Custom Fonts
should be distributed with font files which follow the naming convention:< fontname > . < line_number > . font . bmp -
These files should be placed in the plugin's root directory and Squeezebox Server +
These files should be placed in the plugin's root directory and the server restarted before they are available to the server.
Custom fonts files define characters for the fontname specified by diff --git a/HTML/EN/html/docs/http.html b/HTML/EN/html/docs/http.html index e21c0e2cf03..d7d3258d394 100644 --- a/HTML/EN/html/docs/http.html +++ b/HTML/EN/html/docs/http.html @@ -1,19 +1,19 @@ -[% pagetitle = 'Squeezebox Server Web Interface' %] +[% pagetitle = 'Logitech Media Server Web Interface' %] [% techinfo = '1' %] [% lefttoright = '1' %] [% PROCESS helpheader.html %]
Overview
This document describes the interface to the HTTP server that's built into - the Squeezebox Server.
-The Squeezebox Server provides an HTTP server that can be used to:
+ the Logitech Media Server. +Logitech Media Server provides an HTTP server that can be used to:
-
- Browse the music library.
- View the status and playlist of the player.
- Control the player.
- Configure the server.
When the Squeezebox Server is started, it starts listening for HTTP connections +
When the server is started, it starts listening for HTTP connections on the default port of 9000.
The HTTP server may be accessed by the user with a traditional web browser to navigate around the music library and control the player. The HTTP server @@ -21,7 +21,7 @@
Overview
or curl, for example) as a way to access and control the player via HTTP. The server can return XML instead of HTML for such "automation" uses (see The XML Skin documentation.) -In the examples in this document the Squeezebox Server is running on a computer +
In the examples in this document the server is running on a computer with the IP address of 10.0.1.201.
HTTP Access
To access the main page to control the player via a web browser use this URL: @@ -57,7 +57,7 @@
HTTP Access
Note: Commands that use paths to songs or playlists can use relative paths from the root of the Music Library folder to specify songs. For example, if the Music Library is specified as "D:\mymusic" and you'd like to refer to a song in that folder named "foo.mp3" you can specify just "foo.mp3" in the command parameter. Likewise, to refer to items in the Saved Playlist folder, you can use a prefix of "__playlists/" before the path. For example, to refer to the saved playlist "bar.m3u" in the Saved Playlists folder, you can specify a path of "__playlists/bar.m3u".
Commands
The following is a summary of the supported commands. Additional information - about the command set is available in the Squeezebox Server + about the command set is available in the Logitech Media Server Command Line Interface documentation.
@@ -337,37 +337,37 @@ Commands
CSRF Security Measures
-To protect against "Cross Site Request Forgery" (CSRF) security threats, Squeezebox Server applies special scrutiny to HTTP requests for functions that can make changes to your system or manipulate playlists or players. -This scrutiny is important to understand if you want to "bookmark" such a URL, or control Squeezebox Server via the HTTP interface. -Squeezebox Server requires one of four things to be true in order to allow such control-oriented URLs to be accepted:
+To protect against "Cross Site Request Forgery" (CSRF) security threats, Logitech Media Server applies special scrutiny to HTTP requests for functions that can make changes to your system or manipulate playlists or players. +This scrutiny is important to understand if you want to "bookmark" such a URL, or control the server via the HTTP interface. +Logitech Media Server requires one of four things to be true in order to allow such control-oriented URLs to be accepted:
-
@@ -421,7 +421,7 @@- Referer request header matches Squeezebox Server URL -
- Squeezebox Server will accept an HTTP URL/command if the request includes a "Referer" request header that matches the "Host" request header. -If you're using a web browser and clicking on links in the web interface (for instance, the Previous/Skip/Play/Pause links on the right-hand player pane), your browser will send a Referer header that tells Squeezebox Server it's following a link you clicked on from a Squeezebox Server page, and the request will be accepted. +
- Referer request header matches Logitech Media Server URL +
- The server will accept an HTTP URL/command if the request includes a "Referer" request header that matches the "Host" request header. +If you're using a web browser and clicking on links in the web interface (for instance, the Previous/Skip/Play/Pause links on the right-hand player pane), your browser will send a Referer header that tells Logitech Media Server it's following a link you clicked on from a Logitech Media Server page, and the request will be accepted. If you are using custom software to make the HTTP requests, simply make sure the HTTP request includes a Referer header with the same value as the URL you are requesting, and a Host header that includes the :port information (as described in the HTTP standard) and all will be fine.
- Submission includes form-specific token -
- Squeezebox Server embeds special authorization tokens in most settings pages in the web interface. If a request includes a +
- The server embeds special authorization tokens in most settings pages in the web interface. If a request includes a valid form authorization token, it will be processed.
- "cauth" URL parameter presented and valid
- If you're using a Bookmark/Favorite, no Referer request header is sent. -In such a case, Squeezebox Server cannot tell if your request is legitimate, or your browser following an <IMG> tag in a hostile web page or HTML email. +In such a case, the server cannot tell if your request is legitimate, or your browser following an <IMG> tag in a hostile web page or HTML email. In such cases, you will see a "403 Forbidden" error page. -On this page you'll see a URL similar to what you requested, but with a ";cauth=" parameter added to the end, e.g. when denying a bookmarked request for
http://10.0.1.201:9000/status.html?p0=rescan
, Squeezebox Server will offer you a clickable link with a URL like
+On this page you'll see a URL similar to what you requested, but with a ";cauth=" parameter added to the end, e.g. when denying a bookmarked request forhttp://10.0.1.201:9000/status.html?p0=rescan
, the server will offer you a clickable link with a URL like
http://10.0.1.201:9000/status.html?p0=rescan;cauth=aa2d378f7e9f18611e951e7c6b30eea8
By clicking on this link, you can execute your HTTP command. If you want to bookmark a URL that gives such an error, bookmark the "cauth" URL displayed on the error page. -"cauth" URIs are unique for each Squeezebox Server installation. They are based on a special "securitySecret" that is randomly assigned the first time you start the Squeezebox Server software. +"cauth" URIs are unique for each Logitech Media Server installation. They are based on a special "securitySecret" that is randomly assigned the first time you start the server software. This allows the same URL likehttp://10.0.1.201:9000/status.html?p0=rescan;cauth=aa2d378f7e9f18611e951e7c6b30eea8
-to always work on your Squeezebox Server installation (so you can bookmark it or use it in your home automation system), but not work on another Squeezebox Server setup. -This unpredicatbility makes it virtually impossible for a hostile web site to trick your Squeezebox Server into doing something you don't want. +to always work on your server installation (so you can bookmark it or use it in your home automation system), but not work on another server setup. +This unpredicatbility makes it virtually impossible for a hostile web site to trick your server into doing something you don't want.
By default, the same "cauth" value is accepted for any URI. So once you note the "cauth" value for your system, you can use that same value with any URI/command documented here. @@ -376,13 +376,13 @@CSRF Security Measures
If you want greater protection against CSRF attacks, you may set your csrfProtectionLevel server preference to "HIGH" so that each different command/URI will insist on a unique (but reusable) "cauth=" value. For instance, the "cauth" parameter forhttp://10.0.1.201:9000/status.html?p0=playlist&p1=play&p2=soothing
would be completely different for the parameter forhttp://10.0.1.201:9000/status.html?p0=playlist&p1=play&p2=loud-alarm
-This also makes it more difficult for an attacker to trick your Squeezebox Server into doing something you don't want. +This also makes it more difficult for an attacker to trick your server into doing something you don't want.- Request appears to be an AJAX/XmlHttpRequest call
- Requests bearing X-Requested-With headers indicating that they are legitimate XmlHttpRequest calls will be allowed, -as Javascript/XmlHttpRequest security guidelines and Squeezebox Server username/password authentication should make -JAX/XmlHttpRequest calls safe to act on. +as Javascript/XmlHttpRequest security guidelines and the server username/password authentication should make +AJAX/XmlHttpRequest calls safe to act on.
Multiple Players
Player Status
-When you use the HTTP interface to control the Squeezebox Server (and player) to +
When you use the HTTP interface to control the server (and player) to obtain status the server returns a response that contains:
- A header indicating a content type
@@ -472,8 +472,8 @@
The following is an example of an HTTP status transactions. -The text in blue is sent from the client to the Squeezebox Server HTTP server. -Text in red is returned by the Squeezebox Server HTTP server. +The text in blue is sent from the client to the HTTP server. +Text in red is returned by the HTTP server.
GET /status.html?p0=pause&p1=1 HTTP/1.0 diff --git a/HTML/EN/html/docs/index.html b/HTML/EN/html/docs/index.html index d1a2917d8d0..d4aa16722db 100644 --- a/HTML/EN/html/docs/index.html +++ b/HTML/EN/html/docs/index.html @@ -3,12 +3,12 @@ [% WRAPPER helpTopicList %] [% PROCESS helpTopic href="artwork.html" title="Artwork Setup" %] - [% PROCESS helpTopic href="http.html" title="The Squeezebox Server Remote Control" %] - [% PROCESS helpTopic href="cli-api.html" title="The Squeezebox Server Command Line Interface" %] + [% PROCESS helpTopic href="http.html" title="The Logitech Media Server Remote Control" %] + [% PROCESS helpTopic href="cli-api.html" title="The Logitech Media Server Command Line Interface" %] [% PROCESS helpTopic href="skins.html" title="Skin Creation" %] [% PROCESS helpTopic href="xml_skin.html" title="The XML Skin" %] - [% PROCESS helpTopic href="xpl.html" title="The Squeezebox Server xPL Interface" %] - [% PROCESS helpTopic href="plugins.html" title="Squeezebox Server Plugins" %] + [% PROCESS helpTopic href="xpl.html" title="The Logitech Media Server xPL Interface" %] + [% PROCESS helpTopic href="plugins.html" title="Logitech Media Server Plugins" %] [% PROCESS helpTopic href="buttons.html" title="Button Mapping" %] [% PROCESS helpTopic href="input.html" title="Input Modes" %] [% PROCESS helpTopic href="fonts.html" title="Font Files" %] diff --git a/HTML/EN/html/docs/input.html b/HTML/EN/html/docs/input.html index 6e6f5582992..15cd74a97e0 100644 --- a/HTML/EN/html/docs/input.html +++ b/HTML/EN/html/docs/input.html @@ -5,7 +5,7 @@Overview
- The Squeezebox Server software comes equipped with a number (currently five) of + The Logitech Media Server software comes equipped with a number (currently five) of generic input modes which can be used by other modes to handle interaction with the user via the remote. This allows module writers to concentrate on what to do with the input rather than the gathering of that input. diff --git a/HTML/EN/html/docs/plugins.html b/HTML/EN/html/docs/plugins.html index 3357e06dd8e..eec73ec0996 100644 --- a/HTML/EN/html/docs/plugins.html +++ b/HTML/EN/html/docs/plugins.html @@ -1,16 +1,16 @@ -[% pagetitle = 'Squeezebox Server Plugins' %] +[% pagetitle = 'Logitech Media Server Plugins' %] [% techinfo = '1' %] [% lefttoright = '1' %] [% PROCESS helpheader.html %]
Introduction
-This document illustrates the basic framework upon which to build a Plugin or module compatible with the Squeezebox Server software. -The Squeezebox Server provides a method to load custom modules at startup which are then made available to the user via remote control menus. -Each plugin serves as an area within Squeezebox Server remote menu system, available from within the Plugins menu. Plugin files are stored in -the "Plugins" folder which is in the same folder as the Squeezebox Server software. For simple plugins, a single file in this folder will suffice. +
This document illustrates the basic framework upon which to build a Plugin or module compatible with the Logitech Media Server software. +The server provides a method to load custom modules at startup which are then made available to the user via remote control menus. +Each plugin serves as an area within the server remote menu system, available from within the Plugins menu. Plugin files are stored in +the "Plugins" folder which is in the same folder as the server software. For simple plugins, a single file in this folder will suffice. For more complex plugins, you can store an entire set of files in a sub-folder, naming the main plugin file: Plugin.pm. The Plugin interface can provide a very powerful -control and has complete access to the functionality of the Squeezebox Server. As with the rest of the Squeezebox Server, plugin modules are created +control and has complete access to the functionality of the server. As with the rest of the server, plugin modules are created using the Perl language.
Perl Module Basics
@@ -20,8 +20,8 @@Perl Module Basics
package Plugins::pluginname;Where
pluginname
is the name of the module (which should be the same as the filename, without the .pm extension.) This defines the 'namespace' for the module. It essentially sets up the module as an entity of its own, within the server environment. This allows you to then refer to the functions and variables within this plugin by the full reference Plugins::pluginname::function.
-Squeezebox Server Plugin Hooks
-Each level in the Squeezebox Server menu hierarchy is considered a "mode" by the Squeezebox Server. Each time the server is started, it reads the Plugins directory for modules. Each is added, by name, into a list. Each plugin is given a mode, and a set of functions that are defined within that module. The plugins can each be enabled or disabled at will from the web interface. The plugin module itself must define a mode and functions in a form that the server is expecting. This comes from two functions: sub setMode() and sub getFunctions(). A third subroutine, sub getDisplayName() is required to provide the name that the server should display for the plugin. Simple examples of these three functions are below. We will now build a template based on these main functions.
+Logitech Media Server Plugin Hooks
+Each level in the server menu hierarchy is considered a "mode" by the server. Each time the server is started, it reads the Plugins directory for modules. Each is added, by name, into a list. Each plugin is given a mode, and a set of functions that are defined within that module. The plugins can each be enabled or disabled at will from the web interface. The plugin module itself must define a mode and functions in a form that the server is expecting. This comes from two functions: sub setMode() and sub getFunctions(). A third subroutine, sub getDisplayName() is required to provide the name that the server should display for the plugin. Simple examples of these three functions are below. We will now build a template based on these main functions.
Example 1
@@ -45,7 +45,7 @@Squeezebox Server Plugin Hooks
Modes
-If you wish for your plugin to have a player display interface, then you will need to set up what is called a Mode. The remote buttons are context sensitive, meaning that they can serve different roles when the Squeezebox Server is in different modes. The setMode() +
If you wish for your plugin to have a player display interface, then you will need to set up what is called a Mode. The remote buttons are context sensitive, meaning that they can serve different roles when the server is in different modes. The setMode() subroutine defines this mode. Within this subroutine, there must be a definition for $client->lines, which is the text to be displayed on the Slim client while in this plugin mode. Typically, this is labeled just as above, though it can be any name you wish. The lines subroutine, or other name if you have chosen one, returns a hash defining the display to be shown on the player. This can be updated at any time from any point in the plugin module by using the @@ -74,7 +74,7 @@
Modes
Functions
-The Squeezebox Server handles all commands from the remote control for each mode by creating a hash table of functions, each button having a subroutine associated with it. The subroutine getFunctions() returns a reference to this hash, and can be any label you wish, although typically %functions is used. The call to point to this list is shown above in example 1. The function list, should look something like this example taken from rescan.pm, which is included with the Squeezebox Server:
+The server handles all commands from the remote control for each mode by creating a hash table of functions, each button having a subroutine associated with it. The subroutine getFunctions() returns a reference to this hash, and can be any label you wish, although typically %functions is used. The call to point to this list is shown above in example 1. The function list, should look something like this example taken from rescan.pm, which is included with the server:
Example 2
@@ -113,7 +113,7 @@Functions
function calls such as:-$client->showBriefly();Examples of remote control functions include: 'up','down','play,'add' (REC button),'left','right','numberScroll' and 'stop' The full button to function map is found in the Default.map file, which is in the IR directory under the Squeezebox Server directory.
+Examples of remote control functions include: 'up','down','play,'add' (REC button),'left','right','numberScroll' and 'stop' The full button to function map is found in the Default.map file, which is in the IR directory under the Logitech Media Server directory.
Player Menu
@@ -153,7 +153,7 @@Lines
Strings
-The plugin API also allows you to add in your own localization. The format of the strings list follows the same format as the strings.txt file used by the Squeezebox Server for localization. The function strings() can be used within the plugin to extract a strings for the user's specified language. Defining the strings is done as follows:
+The plugin API also allows you to add in your own localization. The format of the strings list follows the same format as the strings.txt file used by the server for localization. The function strings() can be used within the plugin to extract a strings for the user's specified language. Defining the strings is done as follows:
Example 6
sub strings { return ' @@ -173,7 +173,7 @@Strings
One special note, the format of the strings list is very strict. The whitespace must be a tab, not spaces, which is why the tabs are shown above.
Web Interface
-Squeezebox Server Plugins can expose their own web interface, accessible through +
Logitech Media Server Plugins can expose their own web interface, accessible through the main server's web pages. To do this, include a function called "webPages" which returns a list of two values: a hash reference to handler functions for the plugin's pages, and a string representing the path of @@ -186,8 +186,8 @@
Web Interface
"index.html", "index.htm" or "index.xml".The index page string represents the URL path for a link that will -be included in the "Plugins" section of the Squeezebox Server index -page. When exposed through the Squeezebox Server's web interface, all plugin +be included in the "Plugins" section of the server index +page. When exposed through the server's web interface, all plugin web pages are prepended with the URL path http://<host>/plugins/<pluginname>/. However, neither the regular expression keys nor the index URL path need to take this prefix @@ -207,7 +207,7 @@
Web Interface
Plugins also have the option of adding links to other sections of -the Squeezebox Server index page. Specifically, links can be added to the +the server index page. Specifically, links can be added to the "browse", "search", "settings", "plugins" and "help" sections. Note that not all skins may support every section. Links can be added using the Slim::Web::Pages::addLinks() method. The method takes two @@ -243,7 +243,7 @@
ScreenSavers
- getScreensaverFunctions()
- This subroutine, just like getFunctions points to the function has for the screensaver mode.
- setScreensaverMode
- subroutine just like setMode to initialize anything you need for the screensaver mode.
- leaveScreensaverMode
- subroutine to execute before the mode exits
-- $client->string('SCREENSAVER_NAME')
- SCREENSAVER_NAME should be change to a unique identifier for your plugin name. This can be the same as your plugin, or something different. This allows for future nationalisation for the other languages supported by Squeezebox Server.
+- $client->string('SCREENSAVER_NAME')
- SCREENSAVER_NAME should be change to a unique identifier for your plugin name. This can be the same as your plugin, or something different. This allows for future nationalisation for the other languages supported by server.
@@ -260,7 +260,7 @@Other Functions
Summary
-Using the existing plugins as examples (one appears below) and this document as an explanation of what each section of the plugin can do, you should now be able to start working on a plugin of your own. Remember that this is only a framework to allow you to hook into the Squeezebox Server. There are always many other ways to implement the features of a plugin. As long as your provide the lines from the examples above, the server will try to work with your Plugin. The rest can be just about anything you want, including using any of functions and subroutines within the Squeezebox Server. Remember, there's more than one way to do it.
+Using the existing plugins as examples (one appears below) and this document as an explanation of what each section of the plugin can do, you should now be able to start working on a plugin of your own. Remember that this is only a framework to allow you to hook into the server. There are always many other ways to implement the features of a plugin. As long as your provide the lines from the examples above, the server will try to work with your Plugin. The rest can be just about anything you want, including using any of functions and subroutines within the server. Remember, there's more than one way to do it.
Happy Coding!
NOTE:
@@ -275,7 +275,7 @@Appendix: Sample Plugin
# # This code is derived from code with the following copyright message: # -# Squeezebox Server Copyright 2001-2009 Logitech. +# Logitech Media Server Copyright 2001-2011 Logitech. # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License, # version 2. diff --git a/HTML/EN/html/docs/remotestreaming.html b/HTML/EN/html/docs/remotestreaming.html index 5e096654d7b..8977a1a9f46 100644 --- a/HTML/EN/html/docs/remotestreaming.html +++ b/HTML/EN/html/docs/remotestreaming.html @@ -1,27 +1,27 @@ [% pagetitle = 'REMOTE_STREAMING' | string %] [% PROCESS helpheader.html %] -The Squeezebox Server was designed to stream mp3 files to a Slim Devices/Logitech network music player. However, it can also stream the same files over the Internet to an MP3 software player such as Winamp and iTunes. +
The Logitech Media Server was designed to stream mp3 files to a Slim Devices/Logitech network music player. However, it can also stream the same files over the Internet to an MP3 software player such as Winamp and iTunes. -
For the sake of discussion, the computer running the Squeezebox Server will be called the remote machine. +
For the sake of discussion, the computer running the server will be called the remote machine. -
First install and start the Squeezebox Server software on this machine. +
First install and start the Logitech Media Server software on this machine. Make sure it is reachable over the Internet. If not, you will need to open port 9000 on your router.
Now, use the following instructions:
-
- Open the stream called http://localhost:9000/stream.mp3 in your MP3 software player. (Replace "localhost" with the IP address of the remote computer.) This will inform the Squeezebox Server that the software player is ready to receive a stream. +
- Open the stream called http://localhost:9000/stream.mp3 in your MP3 software player. (Replace "localhost" with the IP address of the remote computer.) This will inform the server that the software player is ready to receive a stream. -
- Open the web interface of the Squeezebox Server running on the remote computer by opening the web page http://localhost:9000 (Replace "localhost" with the IP address of the remote computer). You will notice a "player" corresponding to the IP address of the computer with the MP3 software player. +
- Open the web interface of the server running on the remote computer by opening the web page http://localhost:9000 (Replace "localhost" with the IP address of the remote computer). You will notice a "player" corresponding to the IP address of the computer with the MP3 software player. -
- Use the left pane of the Squeezebox Server web interface to browse and select files and playlists. When music is selected, it will appear in the right pane of the web interface. +
- Use the left pane of the server web interface to browse and select files and playlists. When music is selected, it will appear in the right pane of the web interface. -
- Click on "Play" in the right pane of the Squeezebox Server web interface to start the music. +
- Click on "Play" in the right pane of the server web interface to start the music.
- After a couple of seconds, you will hear music playing through the MP3 software player. (The delay is due to buffering in the MP3 player software.) -
- To change the content playing, use the Squeezebox Server on the remote machine. +
- To change the content playing, use the server on the remote machine. -
- If you are using the Squeezebox Server's password security, you'll need to use a slightly modified URL like this: http://username:password@localhost:9000/stream.mp3 +
- If you are using the server's password security, you'll need to use a slightly modified URL like this: http://username:password@localhost:9000/stream.mp3
Your music can also be streamed to a Squeezebox or Transporter network music player for listening on a stereo. For more information about this product and FAQs, visit www.mysqueezebox.com. diff --git a/HTML/EN/html/docs/skins.html b/HTML/EN/html/docs/skins.html index b65d55cd8d5..63a5bbadd0d 100644 --- a/HTML/EN/html/docs/skins.html +++ b/HTML/EN/html/docs/skins.html @@ -7,9 +7,9 @@
Overview
WARNING: This documentation is substantially out of date.- The web interface to the Squeezebox Server makes use of customizable html + The web interface to the Logitech Media Server makes use of customizable html templates collected together into a skin. These skins reside in the - html subfolder of the folder where the Squeezebox Server software was + html subfolder of the folder where the server software was installed. The skin subfolders are presented for selection in the additional server settings setup page based on the name of the skin subfolder. The default skin is in the EN subfolder. Each @@ -19,7 +19,7 @@
Overview
When a page not in the html subfolder of either your skin - or the default skin is requested, the Squeezebox Server builds the page + or the default skin is requested, the server builds the page dynamically based on the templates within the skin subfolder. This building is accomplished by gathering information relevant to the requested page in a perl subroutine, then using that information to complete the template. @@ -27,7 +27,7 @@
Overview
Directory Structure
-Squeezebox Server +Logitech Media Server
- html
@@ -57,7 +57,7 @@
Template Syntax
Template Dependencies section of this document.- Squeezebox Server uses the freely available + Logitech Media Server uses the freely available Template Toolkit version 2.13 for its templates. Full documentation is available at the linked web site. Some of the simpler @@ -149,16 +149,16 @@
Template Directives
Template Plugins
Template Toolkit supports the use of plugins to add functionality. These - are different from Squeezebox Server plugins. There are currently no Squeezebox Server + are different from server plugins. There are currently no server specific plugins implemented. The standard Template Toolkit plugins are available, except for those that require the use of other CPAN modules - that have not already been included with Squeezebox Server. + that have not already been included with server.
Template Filters
Template Toolkit makes use of perl functions called filters to perform processing - of text. Squeezebox Server includes all the standard Template Toolkit filters, plus + of text. The server includes all the standard Template Toolkit filters, plus some additional ones described here.
@@ -276,7 +276,7 @@
Template Dependencies
end scratch area -->
Non-Template Requestable Items
- Certain requests made to the Squeezebox Server HTTP server are fulfilled outside + Certain requests made to the server HTTP server are fulfilled outside of the template mechanism. Some items are generated dynamically, while others are served up as the file exists on the server. The static item requests are satisfied by following the mechanism of @@ -491,8 +491,8 @@
Template Functions
Template Variables
There are three types of variable available. The first are Template Toolkit - provided, the second are provided to all pages by Squeezebox Server, and the third are - provided to specific pages by Squeezebox Server. + provided, the second are provided to all pages by the server, and the third are + provided to specific pages by Logitech Media Server.
Template Toolkit variables
@@ -534,7 +534,7 @@
-Template Toolkit variables
- content
- Used in wrapper templates to refer to the wrapped content
Squeezebox Server General Variables
+Server General Variables
- Content-Type
- The content type of the requested page, will usually be text/html.
@@ -558,7 +558,7 @@Squeezebox Server General Variables
- Portion of the path used to determine the virtual root. This includes the skin name when a skin other than the "skin" server preference is requested. - Squeezebox Server also allows a pseudo-root of /slimserver/ to be used, which also ends + Logitech Media Server also allows a pseudo-root of /slimserver/ to be used, which also ends up in webroot. When creating absolute URLs webroot should be used as the root rather than simply using "/".
@@ -629,7 +629,7 @@Page Specific Variables
- newVersion
- - Indicates the latest version of Squeezebox Server. Not defined if the + Indicates the latest version of the server. Not defined if the checkVersion server parameter is false.
- nofolder
@@ -658,7 +658,7 @@Page Specific Variables
- forget
- - If this parameter is set in the HTTP request, Squeezebox Server will delete + If this parameter is set in the HTTP request, the server will delete all information about the client refered to by the player parameter.
diff --git a/HTML/EN/html/docs/xpl.html b/HTML/EN/html/docs/xpl.html index 262cf75f49c..f26fbb99fba 100644 --- a/HTML/EN/html/docs/xpl.html +++ b/HTML/EN/html/docs/xpl.html @@ -1,10 +1,10 @@ -[% pagetitle = 'Squeezebox Server xPL Support' %] +[% pagetitle = 'Logitech Media Server xPL Support' %] [% techinfo = '1' %] [% lefttoright = '1' %] [% PROCESS helpheader.html %]Introduction
-The Squeezebox Server software includes native support for the xPL home automation protocol. +
The Logitech Media Server software includes native support for the xPL home automation protocol. xPL is an open standard, intended to permit the control and monitoring of devices throughout the home. The purpose of xPL is to provide an efficient, unified mechanism for devices to communicate with each other, and with an intelligent house manager. @@ -25,12 +25,12 @@
xPL Messages
is recommended reading for anyone who is interested in using the xPL protocol to greatest advantage. -Enabling xPL Support in Squeezebox Server
+Enabling xPL Support in the server
To enable xPL support, go to Server Settings -> Additional Server Settings -> Network.
-
Scroll to the xPL section, and set xPL support to Enabled.
-Click Change, then restart your Squeezebox Server software. +Click Change, then restart your server software.Once enabled, each player that is connected to Squeezebox Server (including software players) will generate an xPL heartbeat message, +
Once enabled, each player that is connected to the server (including software players) will generate an xPL heartbeat message, alerting other nodes on the network of it's presence.
@@ -40,25 +40,25 @@Starting an xPL Hub
including Windows and Linux. See the xPL Project Site for a complete list. -Controlling Squeezebox Server via xPL
-You can control Squeezebox Server by sending xPL messages, either to all devices, or targetted at a particular player. +
Controlling the server via xPL
+You can control the server by sending xPL messages, either to all devices, or targetted at a particular player. There are a number of ways of sending an xPL message - see the xPL Project Site for a list of applications that support xPL, and for a variety of command-line tools.
-Squeezebox Server can be controlled using four different types of xPL message.
+The server can be controlled using four different types of xPL message.
-audio.basic messages can be used to provide basic control of Squeezebox Server. This includes functions common to all audio players, such as play, stop, volume etc.
+audio.basic messages can be used to provide basic control of the server. This includes functions common to all audio players, such as play, stop, volume etc.-audio.slimserv messages are used to harness the more advanced features of Squeezebox Server, performing any of the commands that can be performed +audio.slimserv messages are used to harness the more advanced features of the server, performing any of the commands that can be performed via the command-line interface.
-remote.basic messages are used to control Squeezebox Server by simulating button presses on a remote control, +remote.basic messages are used to control the server by simulating button presses on a remote control, in a similar way to the "button" command in the command-line interface.
osd.basic messages are used to display text on a players screen.
-Squeezebox Server Status Messages
-Each player that is connected to Squeezebox Server will send out a heartbeat message as soon as it connects, +
Logitech Media Server Status Messages
+Each player that is connected to the server will send out a heartbeat message as soon as it connects, and at intervals of between 5 and 30 minutes thereafter. The heartbeat message includes information about the player, such as the player's mode (playing, paused or stopped), the name of the song that is currently playing, and the text that is diff --git a/HTML/EN/html/errors/401.html b/HTML/EN/html/errors/401.html index ac44dfb7225..20b25b24c61 100644 --- a/HTML/EN/html/errors/401.html +++ b/HTML/EN/html/errors/401.html @@ -1,2 +1,2 @@
401 Authorization Required -401 Authorization is Required to access this Squeezebox Server +401 Authorization is Required to access this Logitech Media Server