]> git.parisson.com Git - deefuzzer.git/commitdiff
cleanup
authorGuillaume Pellerin <yomguy@parisson.com>
Tue, 3 Nov 2009 15:04:57 +0000 (15:04 +0000)
committerGuillaume Pellerin <yomguy@parisson.com>
Tue, 3 Nov 2009 15:04:57 +0000 (15:04 +0000)
deefuzzer.py

index 8ec842dfe410ba26ea1f110915b49dcf1bb8c9b8..05b35d43fbd311bdef0c3a3270a32bc79c2be7c2 100755 (executable)
@@ -51,7 +51,7 @@ import tinyurl
 from threading import Thread
 from tools import *
 
-version = '0.4'
+version = '0.3.5'
 year = datetime.datetime.now().strftime("%Y")
 platform_system = platform.system()
 
@@ -68,8 +68,8 @@ def prog_info():
  you should have received as part of this distribution. The terms
  are also available at http://svn.parisson.org/deefuzzer/DeeFuzzerLicense
 
- depends : python, python-xml, python-shout, libshout3, icecast2
- recommends : python-mutagen
+ depends :  python, python-xml, python-shout, libshout3, icecast2,
+            python-mutagen, python-twitter, python-tinyurl
  provides : python-shout
 
  Usage : deefuzzer $1
@@ -288,72 +288,6 @@ class Station(Thread):
                 self.jingles_length = len(self.jingles_list)
                 self.jingle_id = 0
 
-    def update_rss(self, media_list, rss_file, sub_title):
-        rss_item_list = []
-        if not os.path.exists(self.rss_dir):
-            os.makedirs(self.rss_dir)
-
-        channel_subtitle = self.channel.name + ' ' + sub_title
-        _date_now = datetime.datetime.now()
-        date_now = str(_date_now)
-        media_absolute_playtime = _date_now
-
-        for media in media_list:
-            media_stats = os.stat(media.media)
-            media_date = time.localtime(media_stats[8])
-            media_date = time.strftime("%a, %d %b %Y %H:%M:%S +0200", media_date)
-            media.metadata['Duration'] = str(media.length).split('.')[0]
-            media.metadata['Bitrate'] = str(media.bitrate) + ' kbps'
-            media.metadata['Next play'] = str(media_absolute_playtime).split('.')[0]
-
-            media_description = '<table>'
-            media_description_item = '<tr><td>%s:   </td><td><b>%s</b></td></tr>'
-            for key in media.metadata.keys():
-                if media.metadata[key] != '':
-                    media_description += media_description_item % (key.capitalize(), media.metadata[key])
-            media_description += '</table>'
-
-            title = media.metadata['title']
-            artist = media.metadata['artist']
-            if not (title or artist):
-                song = str(media.file_title)
-            else:
-                song = artist + ' : ' + title
-
-            media_absolute_playtime += media.length
-
-            if self.rss_enclosure == '1':
-                media_link = self.channel.url + '/media/' + media.file_name
-                media_link = media_link.decode('utf-8')
-                rss_item_list.append(PyRSS2Gen.RSSItem(
-                    title = song,
-                    link = media_link,
-                    description = media_description,
-                    enclosure = PyRSS2Gen.Enclosure(media_link, str(media.size), 'audio/mpeg'),
-                    guid = PyRSS2Gen.Guid(media_link),
-                    pubDate = media_date,)
-                    )
-            else:
-                media_link = self.metadata_url + '/' + media.file_name + '.xml'
-                media_link = media_link.decode('utf-8')
-                rss_item_list.append(PyRSS2Gen.RSSItem(
-                    title = song,
-                    link = media_link,
-                    description = media_description,
-                    guid = PyRSS2Gen.Guid(media_link),
-                    pubDate = media_date,)
-                    )
-
-        rss = PyRSS2Gen.RSS2(title = channel_subtitle,
-                            link = self.channel.url,
-                            description = self.channel.description.decode('utf-8'),
-                            lastBuildDate = date_now,
-                            items = rss_item_list,)
-
-        f = open(rss_file, 'w')
-        rss.write_xml(f, 'utf-8')
-        f.close()
-
     def get_playlist(self):
         file_list = []
         for root, dirs, files in os.walk(self.media_dir):
@@ -376,15 +310,6 @@ class Station(Thread):
         file_list.sort()
         return file_list
 
-    def update_twitter(self, message):
-        if self.twitter_mode == '1':
-            tags = '#' + ' #'.join(self.twitter_tags)
-            message = message + ' ' + tags
-            message = message[:113] + ' ' + self.tinyurl
-            message = message.decode('utf8')
-            self.logger.write('Twitting : "' + message + '"')
-            self.twitter.post(message)
-
     def get_next_media(self):
         # Init playlist
         if self.lp != 0:
@@ -393,6 +318,7 @@ class Station(Thread):
             lp_new = len(new_playlist)
 
             if lp_new != self.lp or self.counter == 0:
+                # Init playlists
                 self.playlist = new_playlist
                 self.id = 0
                 self.lp = lp_new
@@ -439,9 +365,6 @@ class Station(Thread):
             self.logger.write(mess)
             sys.exit(mess)
 
-    def log_queue(self, it):
-        self.logger.write('Station ' + self.short_name + ' eated one queue step: '+str(it))
-
     def media_to_objs(self, media_list):
         media_objs = []
         for media in media_list:
@@ -451,6 +374,80 @@ class Station(Thread):
             elif file_ext.lower() == 'ogg':
                 media_objs.append(Ogg(media))
         return media_objs
+        def update_rss(self, media_list, rss_file, sub_title):
+        rss_item_list = []
+        if not os.path.exists(self.rss_dir):
+            os.makedirs(self.rss_dir)
+
+        channel_subtitle = self.channel.name + ' ' + sub_title
+        _date_now = datetime.datetime.now()
+        date_now = str(_date_now)
+        media_absolute_playtime = _date_now
+
+        for media in media_list:
+            media_stats = os.stat(media.media)
+            media_date = time.localtime(media_stats[8])
+            media_date = time.strftime("%a, %d %b %Y %H:%M:%S +0200", media_date)
+            media.metadata['Duration'] = str(media.length).split('.')[0]
+            media.metadata['Bitrate'] = str(media.bitrate) + ' kbps'
+            media.metadata['Next play'] = str(media_absolute_playtime).split('.')[0]
+
+            media_description = '<table>'
+            media_description_item = '<tr><td>%s:   </td><td><b>%s</b></td></tr>'
+            for key in media.metadata.keys():
+                if media.metadata[key] != '':
+                    media_description += media_description_item % (key.capitalize(), media.metadata[key])
+            media_description += '</table>'
+
+            title = media.metadata['title']
+            artist = media.metadata['artist']
+            if not (title or artist):
+                song = str(media.file_title)
+            else:
+                song = artist + ' : ' + title
+
+            media_absolute_playtime += media.length
+
+            if self.rss_enclosure == '1':
+                media_link = self.channel.url + '/media/' + media.file_name
+                media_link = media_link.decode('utf-8')
+                rss_item_list.append(PyRSS2Gen.RSSItem(
+                    title = song,
+                    link = media_link,
+                    description = media_description,
+                    enclosure = PyRSS2Gen.Enclosure(media_link, str(media.size), 'audio/mpeg'),
+                    guid = PyRSS2Gen.Guid(media_link),
+                    pubDate = media_date,)
+                    )
+            else:
+                media_link = self.metadata_url + '/' + media.file_name + '.xml'
+                media_link = media_link.decode('utf-8')
+                rss_item_list.append(PyRSS2Gen.RSSItem(
+                    title = song,
+                    link = media_link,
+                    description = media_description,
+                    guid = PyRSS2Gen.Guid(media_link),
+                    pubDate = media_date,)
+                    )
+
+        rss = PyRSS2Gen.RSS2(title = channel_subtitle,
+                            link = self.channel.url,
+                            description = self.channel.description.decode('utf-8'),
+                            lastBuildDate = date_now,
+                            items = rss_item_list,)
+
+        f = open(rss_file, 'w')
+        rss.write_xml(f, 'utf-8')
+        f.close()
+
+    def update_twitter(self, message):
+        if self.twitter_mode == '1':
+            tags = '#' + ' #'.join(self.twitter_tags)
+            message = message + ' ' + tags
+            message = message[:113] + ' ' + self.tinyurl
+            message = message.decode('utf8')
+            self.logger.write('Twitting : "' + message + '"')
+            self.twitter.post(message)
 
     def core_process_stream(self, media):
         """Read media and stream data through a generator.