README
author Dan
Sun, 04 Jan 2009 22:56:57 -0500
changeset 67 c4aefad02ce4
parent 65 35fe20340c91
permissions -rw-r--r--
WebServer now does not attempt to destruct if threader is not up

<div align="center">
  <b>Greyhound</b><br />
  A PHP-based web interface for Amarok<br />
  <br />
  &gt;&gt;&gt; <b>To access this script once started navigate to: &lt;&lt;&lt;<br />
  &gt;&gt;&gt; <a href="http://localhost:7447/">http://localhost:7447/</a> &lt;&lt;&lt;
</div>
<p>I wrote Greyhound because of some issues I was having with other web
   interface scripts freezing and not working right. Greyhound is my first
   shot at writing Amarok scripts but it seems to work pretty well.
   </p>
<p>Greyhound's interface is based on the WebControl script by Jonas Christian
   Drewsen, Andr&#0233; Kelpe, and Peter C. Ndikuwera. However unlike WebControl
   Greyhound is written entirely in PHP, making it a bit more portable. This
   script doesn't require an external web server to run, it has a relatively
   basic built-in (but multi-threaded) server.</p>
<p>The script needs a browser with XmlHttpRequest (AJAX) support to work. It's
   been tested on Firefox 3.0.5, Safari (Mac and Windows), Google Chrome, and
   Opera 9.5. It does not work (nor, in my opinion, need to work) under Internet
   Explorer.</p>
<p>It uses Smarty templates so you should be able to customize the HTML to
   your needs. The template file is /themes/funkymonkey/playlist.tpl. There's
   also a theme called iphone which is optimized for use on Apple's touch
   screen based mobile devices. Now your iPod&reg; or iPhone&reg; can control music other than
   its own. :-P</p>
<p>It advertises itself on your LAN using Avahi (if it's available on your computer).
   All of its control interfaces as well as authentication services are available via
   JSON, so it should be possible to write a custom (desktop) client. I have a script
   called grey-pidgin that I use internally that can update your Pidgin status to reflect
   the song currently playing <b>on your Greyhound server</b>. This means that if you're
   like me and you have to run your IM from one box and your music from another, you can
   still show off your music collection to all your buddies. The possibilities for clients
   are practically endless. I haven't released grey-pidgin because it lacks a GUI, but
   I may soon. We'll see. It's a bit rough around the edges for sure.</p>

<p>
  <b>License</b><br />
  I was originally planning to place this into the public domain but decided to
  make it <b>GPLv2</b> because it uses so many GPLv2 components.
</p>

<p>
  <b>Known issues</b><br />
  There are a few bugs in Greyhound that I haven't been able to iron out.
</p>

<ul>
  <li>Sometimes the server freezes up and requests either take forever or
      partial pages are returned. I know this is due to a lack of experience with
      socket programming on my part, but it seems to be aggravated by slow
      and/or lossy connections. There's a fix for this but it isn't 100%
      reliable yet.</li>
  <li>Reloading the configuration doesn't always work automatically yet.</li>      
</ul>

<p>
  <b>Author</b><br />
  Dan Fuhry &lt;<a href="mailto:dan@enanocms.org">dan@enanocms.org</a>&gt;<br />
  If you like this script be sure to check out my other projects:
    <a href="http://enanocms.org/">Enano CMS</a> and
    <a href="http://lifecodeidiocy.enanocms.org/">my blog</a>.
</p>