Difference between revisions of "Bemix Notes"
Line 1: | Line 1: | ||
− | Bemix is a web-based media player. It supports multiple soundcards and various networked client types, allowing a group to use a centralized server to control several speakers. | + | Bemix is a web-based media player. It supports multiple soundcards and various networked client types, allowing a group to use a centralized server to control several speakers. Commands are issued through URLs, where the URL portion of the address represents the command to be issued, while the GET portion of the URL passes in parameters to the server. |
=URL Scheme= | =URL Scheme= | ||
Line 24: | Line 24: | ||
* (s,c)players | * (s,c)players | ||
* (s,c)playlists | * (s,c)playlists | ||
+ | |||
+ | =Results= | ||
+ | Each command returns a data structure through HTTP defining variable names and values. Every command contains at least one <code>success</code> variable, whose values may be either <code>true</code> or <code>false</code>. | ||
=Client Types= | =Client Types= |
Revision as of 21:18, 15 January 2006
Bemix is a web-based media player. It supports multiple soundcards and various networked client types, allowing a group to use a centralized server to control several speakers. Commands are issued through URLs, where the URL portion of the address represents the command to be issued, while the GET portion of the URL passes in parameters to the server.
Contents
URL Scheme
All URLs are relative to http://bemix.com/, and all URLs have an output=[html, client]. An example URL is http://bemix.com/play?output=client&playerId=2
Players
- (s,c)play?playerId=x
- (s,c)pause?playerId=x
- (s,c)stop?playerId=x
- (s,c)loadList?playerId=x&playlistId=y
- (s,c)player?playerId=x
Playlist
- (s,c)create?name=x
- (s,c)delete?playlistId=x
- (s,c)add?playlistId=x&song=y
- (s,c)remove?playlistId=x&index=y
- (s,c)playlist?playlistId=x
Browsing
- (s)browse?dir=x
General
- (s,c)players
- (s,c)playlists
Results
Each command returns a data structure through HTTP defining variable names and values. Every command contains at least one success
variable, whose values may be either true
or false
.
Client Types
Bemix is capable of dumping data in multiple of formats. Currently on "client" and "html" formats are planned, but XML/RDF formats are possibly in the future. The format of the export is indicated in the URL by the output
parameter.
Client
The "client" output format returns data in a simple newline-delimited list. String values are not delimited by quote characters, and list items are delimited by commas (including a comma after the final element). The format of each line is name=value
, where name
is the name of the variable being returned, and value
is the value of the variable. No whitespace characters are inserted between name
, =
, and value
.
The result of the playlist command:
id=30 name=the list success=true
The result of the playlists command:
ids=32,30,31, success=true