XMMS iNetCtl Plugin V1.2
by Gerry Duprey <gerry@cdp1802.org>

Overview
XMMS Network control plugin iNetControl allows a client on a local or remote system to be able to control the XMMS player via an easy to use/parse text line oriented interface. The protocol used is similar to the FTP command protocol.

Clients can control the following aspects of the XMMS player:

  • Loading/playing of playlists
  • Loading/playing of music files
  • Loading/playing of URLs
  • Pausing and stopping play
  • Moving to the next/previous track in a playlist
  • Changing volume
  • Changing players repeat and shuffle status
  • Requesting and controlling format of status messages
  • Shutdown XMMS

    Clients receive from the XMMS player:

  • Status updates whenever the playlist changes
  • Status updates whenever the track changes
  • Ongoing play status updates (i.e. position in current track).

    As of this release, there is no network security, though the hooks are already built in to the code for upcoming security checks (in inetctl.c). By default, iNetControl listens on port 1586 (that can be changed in the configuration).

    You can go directly to the SourceFroget download site by clicking here or go to the project page for iNetCtrl by clicking here to review release notes, post enhancement requests and bug reports, etc.

    This plugin was based on code samples and ideas from the following plugins

  • xmms-mpcp Vadim Berezniker vadim@berezniker.com
  • xmms-infopipe by Urpo Lankinen wwwwolf@iki.fi http://www.iki.fi/wwwwolf
  • xmms-osd by Andre Renaud andre@ignavus.net http://www.ignavus.net/software.html
  • xmms-shell by Logan Hanks logan@vt.edu

    Check out INSTALL for information on building and installing the plugin
    Check out inetctrl.txt for information on using the plugin to control XMMS.

    Version History

    August 11, 2002 - V1.2

  • Fixed a race condition when connections are closed
  • Shutdown/cleanup bugs fixed
  • Unformatted times are all now in MILLISECONDS (vs the old seconds)
  • New commands added:
    • PLAYLIST_UDPATES [on/off] - enable notification of changes to playlist contents
    • REQUEST PLAYLIST_TRACKS - return a list of all current tracks in playlist
    • JUMP_TO_TRACK x - jump to track #x in the playlist
    • JUMP_TO_TIME x - jump to "x" seconds into the currentplay playing track (absolute)
    • HIDE_PLAYER - hides all XMMS GUI windows
    • APPEND_FILE x appends file x to end of current playlist
    • REMOVE_TRACK x Removes track #x from the current playlist
    • NEXT_TRACK/PREV_TRACK x - takes an optional number, x, of track to move forward/backward

    April 30, 2002 - V1.1.5

  • Only a minor change to include netinet/in.h for systems where that isn't a default. No new features

    January 2002 - V1.1.4

  • Now includes documentation
  • Initial security support
  • Rewritten command parser to allow much easier expansion

    November 2001 - V1.0 -1.1.3
    Initial creation and subsequent feature enhancement (pre-public)