Kanal-Aktualisierungen mittels youtube RSS feeds verfolgen · 2013-04-14
Um Youtube-Kanäle in Selfoss zu verfolgen habe ich folgenden spout zusammengehackt. Abgelegt wird er unter spouts\youtube\youtube.php. Über die youtube API gdata wird ein RSS-Feed erzeugt und dann an Simplepie übergeben. Youtube API
Es wird der Benutzername statt der Benutzer-ID benutzt, noch lässt das die Youtube-API zu.
<?PHP
namespace spouts\youtube;
/** * Spout for fetching an Youtube rss feed * * @package spouts * @subpackage rss * @copyright Copyright (c) Tobias Zeising (http://www.aditu.de) * @license GPLv3 (http://www.gnu.org/licenses/gpl-3.0.html) * @author Tobias Zeising <tobias.zeising@aditu.de> * @copywork Arndt Staudinger <info@clucose.com> April 2013 */ class youtube extends \spouts\rss\feed {
/** * name of source * * @var string */ public $name = 'Youtube RSS Feed';
/** * description of this source type * * @var string */ public $description = 'An Youtube RSS Feed as source';
/** * config params * array of arrays with name, type, default value, required, validation type * * - Values for type: text, password, checkbox * - Values for validation: alpha, email, numeric, int, alnum, notempty * * e.g. * array( * "id" => array( * "title" => "URL", * "type" => "text", * "default" => "", * "required" => true, * "validation" => array("alnum") * ), * .... * ) * * @var bool|mixed */ public $params = array( "channel" => array( "title" => "channel", "type" => "text", "default" => "", "required" => true, "validation" => array("notempty") ) );
/** * loads content for given source * I supress all Warnings of SimplePie for ensuring * working plugin in PHP Strict mode * * @return void * @param mixed $params the params of this source */ public function load($params) { parent::load(array( 'url' => 'http://gdata.youtube.com/feeds/api/users/' . $params['channel'] . '/uploads?alt=rss&orderby=published') ); }
/** * returns the date of this item * * @return string date */ public function getDate() { if($this->items!==false && $this->valid()){ $date1 = @current($this->items)->get_item_tags('', 'pubDate'); $date = date('Y-m-d H:i:s', strtotime($date1[0]['data'])); } if(strlen($date)==0) $date = date('Y-m-d H:i:s'); return $date; }
/** * returns the thumbnail of this item (for multimedia feeds) * * @return mixed thumbnail data */ public function getThumbnail() { if($this->items===false || $this->valid()===false) return "";
$item = current($this->items);
// search enclosures (media tags) if(count(@$item->get_enclosures()) > 0) {
// thumbnail given? if(@$item->get_enclosure(0)->get_thumbnail()) return @$item->get_enclosure(0)->get_thumbnail();
// link given? elseif(@$item->get_enclosure(0)->get_link()) return @$item->get_enclosure(0)->get_link();
// no enclosures: search image link in content } else {
$image = $this->getImage(@$item->get_content()); if($image!==false) return $image; }
return ""; } }
Bestandsdaten-Abfragen · 2013-04-15
Bestandsdaten außer Kontrolle Zitat:
Richtervorbehalt und Benachrichtigungspflicht – mit diesem Kompromiss haben CDU, CSU, FDP und SPD die geplante Bestandsdatenauskunft durch den Bundestag gebracht. Wäre da nicht dieser eine, kleine Schönheitsfehler: Eine richterliche Prüfung sowie die gesetzlich vorgeschriebene Benachrichtigung finden in Deutschland schon lange nicht mehr statt.
Google Reader-Alternative Selfoss · 2013-04-07
Nachdem Google Reader in absehbarer Zeit abgeschalten wird, bin ich dieses Wochenende auf die Lösung von Selfoss umgestiegen. Damit hoste ich meinen RSS reader auf dieser Webseite.
Mit der Lösung bin ich sogar etwas flexibler, da ich nun auch meine Youtube-Abonnements damit verfolgen kann. Dazu musste ich nur eine kleine Erweiterung zusammenhacken und es lief.
Die Lösung ist klein und schnell. Auch sind es nicht zuviele Funktionen, alles ist sehr schön übersichtlich.
Keine Rechnung in Papier, dafür aber die Werbung · 2010-02-19
Ich finde das schon merkwürdig wenn ein Unternehmen keine Rechnungen in Papier verschickt (aus Umweltschutzgründen!), aber dafür jeden Monat Werbung von diesem Unternehmen im Briefkasten liegt (an mich adressiert).