turntable.fm Related Web Sites and Services

turntable-fm-fully-loaded

At the moment (mid-July 2011) there’s no API for developing services to augment the turntable.fm collaborative DJing platform. That hasn’t stopped a handful of developers from hacking together a few tools to fill in gaps in the service’s offering.

Here are a few I’ve found, including a playlist export tool that I created yesterday. If you know of others not listed here, please leave a comment and I’ll add them to the list.

  1. Turntable.fm Playlist Manager – create playlists beyond your main DJ queue.
  2. ttDashboard – a leaderboard for users, songs, and rooms.
  3. TurntableScrobbler – scrobbles the current track to last.fm.
  4. Awesomes.fm – keeps track of every song you awesome. (seems to be permanently down for maintenance)
  5. Export Turntable.fm – export your playlist.
Posted in api, music, turntable.fm | 1 Comment

turntable.fm export playlist queue

turntable.fm export playlist
I wrote a little bookmarklet that will export your turntable.fm queue. I imagine they’ll be implementing something like this in the near future, so for now it’s bare bones.

To use:

  1. Drag the following bookmarklet to your bookmarks:

  2. Login to turntable.fm, enter any room (your dj queue must be visible on the screen for the bookmarklet to work, but you do not need to be on stage).
  3. Click the bookmarklet from your bookmarks.

You might have to allow popups from turntable.fm temporarily, as the playlist needs to open a new window to show itself. Turn them off when you’re done exporting.

The export should be almost instantaneous.

Posted in music, tools, turntable.fm | 4 Comments

fedora 15 virtualbox dhcp

If you’re test driving a “minimal” Fedora install on the completely awesome VirtualBox, you may be having a little trouble getting a DHCP address while using VBox’s bridged adapter.

Here’s what you DON’T need to do- install and run the DHCP service. Resist the urge to install the dhcp package. You don’t need it.

Two easy steps should solve this problem:

  1. Get the eth0 interface up. It’s now called p2p1, not eth0 (info).
  2. Get the “network” service running on runlevel 3, the default text-only runlevel. If you’re running a desktop, you’ll also want it running on level 5 (graphical mode). By default, the network service will not be running (at least during a “minimal” install).

Using chkconfig

You can get a list of which services are running at each runlevel with chkconfig:

# chkconfig --list

Note: This output shows SysV services only and does not include native
 systemd services. SysV configuration data might be overridden by native
 systemd configuration.

auditd             0:off    1:off    2:on    3:on    4:on    5:on    6:off
ip6tables          0:off    1:off    2:on    3:on    4:on    5:on    6:off
iptables           0:off    1:off    2:on    3:on    4:on    5:on    6:off
lvm2-monitor       0:off    1:on    2:on    3:on    4:on    5:on    6:off
netconsole         0:off    1:off    2:off    3:off    4:off    5:off    6:off
netfs              0:off    1:off    2:off    3:on    4:on    5:on    6:off
network            0:off    1:off    2:off    3:off    4:off    5:off    6:off
saslauthd          0:off    1:off    2:off    3:off    4:off    5:off    6:off
sendmail           0:off    1:off    2:on    3:on    4:on    5:on    6:off
sshd               0:off    1:off    2:on    3:on    4:on    5:on    6:off

You’ll note that my network service is off for all runlevels in this output.

Using ifconfig

You can check to see if your p2p1 interface is up with ifconfig:

# ifconfig

You’ll likely see just one entry for “lo”, the loopback interface.

# ifconfig
lo        Link encap:Local Loopback
 inet addr:127.0.0.1  Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING  MTU:16436  Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Bring up p2p1

To get p2p1 going, open “/etc/sysconfig/network-scripts/ifcfg-p2p1″ with your text editor. The changes to make are in blue:

DEVICE="p2p1"
BOOTPROTO=dhcp
HWADDR="04:00:21:55:71:1C"
ONBOOT="yes"
NM_CONTROLLED="yes"

Fix runlevels 3 & 5

Now we need to tell Fedora to enable networking for runlevels 3 & 5:

# chkconfig --level 35 network on

Good to Go!

Reboot your virtual machine. If your host device has internet connectivity, the virtual machine should too now. Test it by pinging yahoo.com:

# ping yahoo.com
PING yahoo.com (209.191.122.70) 56(84) bytes of data.
64 bytes from ir1.fp.vip.mud.yahoo.com (209.191.122.70): icmp_req=1 ttl=56 time=202 ms
64 bytes from ir1.fp.vip.mud.yahoo.com (209.191.122.70): icmp_req=2 ttl=56 time=167 ms
64 bytes from ir1.fp.vip.mud.yahoo.com (209.191.122.70): icmp_req=3 ttl=56 time=194 ms
64 bytes from ir1.fp.vip.mud.yahoo.com (209.191.122.70): icmp_req=4 ttl=56 time=196 ms

ifconfig should now look something like below. Note that the p2p1 interface is now present and has an IP address on the local network.

# ifconfig
lo        Link encap:Local Loopback
 inet addr:127.0.0.1  Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING  MTU:16436  Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

p2p1      Link encap:Ethernet  HWaddr 04:00:21:55:71:1C
 inet addr:192.168.1.127  Bcast:192.168.1.255  Mask:255.255.255.0
 inet6 addr: fe80::a00:29ff:fe25:741c/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:61359 errors:0 dropped:0 overruns:0 frame:0
 TX packets:45598 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:79521429 (75.8 MiB)  TX bytes:7321021 (6.9 MiB)
Posted in fedora, linux, virtualization | 4 Comments

iptables open port 80/443/110

On a fresh Linux install you may find that you can’t connect to your server over http (port 80).

To open the port you’ll need to edit your iptables configuration and add the following rule:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

On centOS iptables configuration is located here:

/etc/sysconfig/iptables

Afterwards, restart iptables:

/etc/init.d/iptables restart

Depending on your Linux flavor, your iptables rules will now look something like:

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

You can use the same procedure to open other ports as needed.

Posted in linux | Leave a comment