Skip to content

Instantly share code, notes, and snippets.

@pagenoare
Created July 1, 2009 14:09
Show Gist options
  • Save pagenoare/138798 to your computer and use it in GitHub Desktop.
Save pagenoare/138798 to your computer and use it in GitHub Desktop.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import irssi
import feedparser
username = 'pagenoare'
p_title = ''
def checker():
global p_title
channels = irssi.settings_get_str('np_channels').split()
if channels[0] == "''":
return
server = irssi.active_server()
d = feedparser.parse('http://ws.audioscrobbler.com/2.0/user/%s/recenttracks.rss' % username)
title = d.entries[0].title
if title != p_title:
for channel in channels:
server.command("action %s słucha %s [last.fm]" % (channel, title.encode('utf-8')))
p_title = title
irssi.timeout_add(irssi.settings_get_int('np_refresh_time')*1000, checker)
def nowplaying(data, server, witem):
d = feedparser.parse('http://ws.audioscrobbler.com/2.0/user/%s/recenttracks.rss' % username)
title = d.entries[0].title
if not server or not server.connected:
irssi.prnt("Not connected to server")
if isinstance(witem, irssi.Channel) or isinstance(witem, irssi.Query):
witem.command("/me słucha %s" % title.encode('utf-8'))
irssi.settings_add_str("misc", "np_channels", username)
irssi.settings_add_int("misc", "np_refresh_time", 30)
irssi.command_bind('np', nowplaying)
checker()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment