Difference between revisions of "Provision Mac Mini Server as Last.fm Player"

From rukapedia
Jump to: navigation, search
 
Line 26: Line 26:
 
* Install [http://code.google.com/p/haraldscan/ haraldscan]
 
* Install [http://code.google.com/p/haraldscan/ haraldscan]
 
** Change references to ''pysqlite2'' to ''sqlite3'' in ''haraldsql.py'' and ''haraldscan.py''
 
** Change references to ''pysqlite2'' to ''sqlite3'' in ''haraldsql.py'' and ''haraldscan.py''
 +
* Modify haraldscan to send information, via REST, to a web server for logging (source code to come)
 +
* Drop a launchd plist file into the ''/Users/casamia/Library/LaunchAgents'' directory so that the scanner runs every 60 seconds:
 +
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 +
<plist version="1.0">
 +
<dict>
 +
<key>Label</key>
 +
<string>net.reinvented.haraldscan</string>
 +
<key>ProgramArguments</key>
 +
<array>
 +
<string>/bin/sh</string>
 +
<string>/Users/casamia/Code/launchd/haraldscan.sh</string>
 +
</array>
 +
<key>RunAtLoad</key>
 +
<false/>
 +
<key>StartInterval</key>
 +
<integer>60</integer>
 +
</dict>
 +
</pre>

Latest revision as of 11:23, 11 July 2010

I'm provisioning a Mac Mini to act as a Last.fm music player at Casa Mia Café in Charlottetown.

The end result, after all the pieces are in place, is that:

  • previously-registered customer enters café
  • their mobile device (iPhone, Blackberry, etc.) is detected via Bluetooth scanner
  • the devices's Bluetooth device address is used to look up customer's Last.fm username
  • the customer's Last.fm library is added to the rotation of playlists playing inside the café (until the customer leaves the café)

Mac Mini Setup

  • First boot.
  • Walk through Apple setup (language, keyboard, registration, etc.)
  • Download Microsoft Intellitype drivers from here to support my Natural Ergonomic Keyboard 4000.
  • Install Google Chrome as an alternative to Safari.
  • Under System Preferences | Sharing, turn on Screen Sharing (with password) and File Sharing to support remote usage.

Install Last.fm Scrobbler

Set up Bluetooth Scanning

  • Install Xcode (LightBlue won't install without it)
  • Install LightBlue (test using these examples)
  • Install haraldscan
    • Change references to pysqlite2 to sqlite3 in haraldsql.py and haraldscan.py
  • Modify haraldscan to send information, via REST, to a web server for logging (source code to come)
  • Drop a launchd plist file into the /Users/casamia/Library/LaunchAgents directory so that the scanner runs every 60 seconds:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Label</key>
	<string>net.reinvented.haraldscan</string>
	<key>ProgramArguments</key>
	<array>
		<string>/bin/sh</string>
		<string>/Users/casamia/Code/launchd/haraldscan.sh</string>
	</array>
	<key>RunAtLoad</key>
	<false/>
	<key>StartInterval</key>
	<integer>60</integer>
</dict>