RPi-Projekt Twitternde Webcam: Wechsel der Wetter-API

Ich hab es irgendwie nicht mitgeschnitten, aber als ich damals im Projekt die Wetter-API von worldweatheronline.com implementiert habe, dachte ich noch, es gäbe eine kostenlose Variante der API. Komischerweise ist das auch immer noch auf der Webseite in den FAQs so zu lesen. Allerdings bemerkte ich jetzt nach dem Ablauf des Testzeitraums für den Premium-Zugriff, dass ich nirgends auf die freie Version der API wechseln konnte. Ein weinig Googlen brachte mich dann auf einen Facebook-Post von WorldWeatherOnline, in dem angekündigt wurde, dass es ab April keine neuen kostenlosen Accounts mehr gibt. Also kurz bevor ich meinen Account erstellt hatte. :-(

Ok, also habe ich mich mal im Netz nach einer kostenlosen Alternative umgesehen und mit bei OpenWeatherMap hängen geblieben. Dort wird eine einfache kostenlose API angeboten, mit der ich die momentanen Wetterdaten und einige grundlegende Vorhersagen abrufen kann. Reicht mir völlig.

Das momentane Wetter ruft man über die URL

http://api.openweathermap.org/data/2.5/weather?id=2803564&units=metric&appid=[DeinApiKey]

auf.

Die Antwort als JSON-Objekt ist recht simpel:

{"coord":
{"lon":145.77,"lat":-16.92},
"weather":[{"id":803,"main":"Clouds","description":"broken clouds","icon":"04n"}],
"base":"cmc stations",
"main":{"temp":293.25,"pressure":1019,"humidity":83,"temp_min":289.82,"temp_max":295.37},
"wind":{"speed":5.1,"deg":150},
"clouds":{"all":75},
"rain":{"3h":3},
"dt":1435658272,
"sys":{"type":1,"id":8166,"message":0.0166,"country":"AU","sunrise":1435610796,"sunset":1435650870},
"id":2172797,
"name":"Cairns",
"cod":200}

Also sieht der Teil meines Python-Skripts, dass die beiden Temperaturwerte ausgiebt, nun so aus:

url = "http://api.openweathermap.org/data/2.5/weather?id=2803564&units=metric&appid=xxxxxxxxxxxxxxxxx"

try:
    response = urllib.urlopen(url)
except:
    print ("Error getting foreign weather")

object = json.load(response)

cTemp = int(object["main"]["temp"])
hTemp = int(object["main"]["temp_max"])

# now we get the complete text for the tweet
ttext = "Täglicher Blick über Bad Zwesten bei " + str(cTemp) + " Grad. Die erwartete Höchsttemperatur beträgt heute " +str(hTemp) + " Grad. #raspitweet"

So sollte das Ganze erstmal wieder funktionieren. Vielleicht mache ich noch mal ein paar andere Sachen mit der Wetter-API, mal schauen.

BBUGKS-Live #9

BBUGKS-Live LogoOliver und ich haben eine neue Folge unseres BlackBerry-Podcasts aufgezeichnet. Diesmal hatten wir wieder mal einen Gast. Ben Witt von BB10QNX ist unter anderem Spezialist für Mobile Management Systeme und beschäftigt sich mit der geschäftlichen sicheren Anbindung von mobilen Geräten an die Unternehmensinfrastruktur. Hierbei betrachtet er nicht nur BlackBerry sondern alle mobilen Plattformen, weshalb in dieser Podcast-Folge auch ein Blick über den Tellerrand möglich war.

Den Originalartikel mit allen Downloadmöglichkeiten findet ihr wie immer auf bbugks.de.

Filmzitate

Ich mag Filmzitate. Und wenn Filmfreunde so zusammen sitzen, kommt es oft auch mal zum klassischen "Filmzitate raten".

Mein Standardzitat ist in dann dieses:

Ich mach mal das Fenster auf.

Heute kam ich auf die Idee, mal zu versuchen, was Google so zu diesem Suchstring als Ergebnis auswirft. Und tatsächlich kommt (zumindest hier im unangemeldetem Zustand) als erstes Ergebnis ein kurzer Klipp aus meinem Lieblingsfilm mit genau der Szene, in der das obige Zitat vorkommt. Und das bei einem Film, der immerhin 27 Jahr alt ist. Chapeau, Google.

PS: Mann, bin ich alt!

Wenn ein einfaches Parkverbot nicht reicht

Manchmal reicht es nicht, ein einfaches Parkverbotsschild aufzuhängen, wie das heutige Fundstück beweist.

Bitte schön.

Parkverbot

Befreit

Ich fand das ja gestern einen Mörder-Gag. Der Kollege war glaub ich anderer Meinung. ;-)

Chat-Bild

Updates für den Twitter Client Oysttyer

     .#*^#=.                
     %'.,`.#`               
   ;',. ./#`                                                   
  ({.`,` #/                 
  `& ,` %,~=*'"*=~=-.,      
   \`=_/'.``  -  `'.  *\.                                      
    (%.  -  -      ˋ-. `&   
    `&`  ~     @      . #                                       
     `\`. `    .....ˊ  %'   
       `^~._.,,,.-+=~*'                                            

Kurzer Hinweis zum textbasierten Twitter-Client Oysttyer. Er wurden einige Updates bereit gestellt, die allerding hauptsächlich Fehlerbehebungen und kleinere Verbesserungen enthalten. Hier die Liste aus dem Changelog:

Changes in Version 2.6.4:

  • Add --http1.1 flag to curl to suit versions after 7.47.0. Earliest supported curl is now 7.33.0

Changes in version 2.6.3:

  • Nothing over 2.6.2. I just can't tag things properly

Changes in version 2.6.2:

  • Correct year on startup screen
  • Adds very rudimentary CI syntax checks
  • Expand long DMs suring start-up
  • Nicely truncate long DMs when using /dump
  • Revert shebang to original
  • Fix a bug where whoami comparison was not lowercased for sent dms
  • Update userstream endpoint

Nichts aufregendes also, aber es ist schön zu sehen, dass das Skript weiter gepflegt und verbessert wird. Das Update erfolgt wie gewohnt einfach durch den Austausch der einzelnen Skriptdatei, aus der der Client besteht.

Telegram: Der VillageGameBot will nur spielen

Der Messenger Telegram unterstützt seit einiger Zeit auch Bots. Diese kleinen Helfer können über die Telegram-API für allerlei nützliche Dinge programmiert werden. So gibt es zum Beispiel Bots, die einem in Chat mal schnell ein passendes GIF zu einem Stichwort anbieten und dieses posten. Aber auch die Begrüßung eines neuen Mitglieds in einer Gruppe kann so ein Bot erledigen.

Nun gibt es mit "Village Game" einen Bot, der tatsächlich so wie ein Strategie-Spiel funktioniert. Indem man mit ihm chattet, kann man das Spiel steuern. Der Entwickler nutzt auch die neueste Funktion von Telegram aus, mit der Bots auch eigene Buttons und Steuerelemente in Chats installieren können.

Wie bei Telegram-Bots üblich, beginnt man einfach einen Chat mit @VillageGameBot und sendet ein "/start". Man kann verschiedene Sprachen auswählen, die deutsche Übersetzung ist aber noch sehr schlecht, weshalb ich die englische Variante ausgewählt habe.

Das Spiel teilt einem nun mit, dass man ein neues Dorf gegründet hat und man auch gleich zwei Arbeiter bekommt, die Getreide für Brot anbauen. Mit dem Verkauf dieser Ernte erhält man Geldsäcke, die Währung des Spiels. Wenn man nicht aktiv ist, produzieren die Arbeiter fleissig weiter. Wenn die Speicher voll sind, sendet der Bot eine entsprechende Chatnachricht, dass man mal wieder etwas verkaufen sollte.

VillageGameBot Screen1

Weiter kann man sich die Zeit mit sogenannten Quests vertreiben. Hierbei kann man Wölfe verjagen, eine Karawane beschützen oder das Dorf gegen Räberbanden verteitigen, was aber je nach Laune des VillageGameBots ziemlich ins Geld gehen kann.

VillageGameBot Raeuber

Nicht zuletzt kann man gegen zufällig ausgewählte Spieler Kämpfen und ihnen Geldsäcke abjagen und Medallien sammeln. Auch hier darf man mit Geldsäcken nicht knauserig sein.

VillageGameBot Schlacht

Das ganze ist noch relativ einfach gestrickt, zeigt aber sehr gut, was man mit Bots alles so anstellen kann. Es gibt Chatgruppen in verschiedenen sprachen, in denen man sich mit anderen Spielern austauschen kann. Auch ein Telegram-Kanal mit News und FAQs steht zur Verfügung. Alles ist über den Hilfe-Button im Botchat erreichbar.

Neue Arbeiter bekommt man übrigens, wenn man neue Spieler über einen speziellen Link einlädt. Wer sich das Spiel mal in Telegram ansehen mag und mir ein paar Arbeiter zukommen lassen will ;-) kann das über diesen Link tun: https://telegram.me/VillageGameBot?start=d1de42ac46

Viel Spass beim ausprobieren (und Zeit verschwenden). :-)

Camping

And now for something completely different.

Letzte Woche war ich campen. Eine befreundete Familie hat sich einen Opus Campinganhänger zugelegt und wir hatten uns verabredet, das gute Stück mal ein paar Tage mit insgesamt sieben Personen zu testen.

Opus Camper

Nun sind wir nicht so die Proficamper, also war die Packerei etwas umständlich und sicher haben wir auch das ein oder andere Teil zu viel oder zu wenig eingepackt.

Wir sind in der glücklichen Lage, das wir etwa dreißig Autominuten entfernt ein beliebtes Feriengebiet und Ausflugsziel  zu haben, die Edertalsperre mit dem Edersee. So waren wir am Mittwoch schnell am ausgewählten Campingplatz angekommen.

Da wir erst am späteren Abend aufbrechen konnten, dauerte der Aufbau des Campers für uns ungeübte doch etwas länger, und so war es schon dunkel, als wir die Kinder in den Schlafsäcken und eine Flasche Rotwein vor uns auf dem Tisch stehen hatten.

Der Ausblick auf den Edersee von unserem Stellplatz aus entschädigte uns am Morgen für die Mühen am Vortag. Bei etwas frischen Temperaturen gab es Frühstück vorm Camper und wir konnten uns langsam ans Camper-Leben gewöhnen.

Blick auf  den Edersee

Auf dem Campingplatz ist man Selbstversorger, man kann also nicht den ganzen Tag faulenzen und sich an einen gedeckten Tisch setzen. Wenn man nicht zu jeder Mahlzeit irgendwo einkehren möchte, heißt es also, selbst kochen, abwaschen, Geschirr ein- und ausräumen und so weiter. Also sicher nichts für denjenigen, der es etwas luxuriöser mag.

Die Nutzung von Gemeinschaftstoiletten und Duschen dürfte auch nicht jedermans Sache sein. Und der Weg, wenn man Nachts mal "muss", kann lang und kalt sein. :-)

Alles in allem wog aber die Ruhe, die Natur und Ausflugsziele in der näheren Umgebung die Unbequemlichkeiten auf. Ein Highlight war sicher die abends farbig beleuchtete Sperrmauer, deren Lichterspiel wir am letzten Abend unseres Aufenthalts erleben konnten.

Beleuchtete Ederseesperrmauer

Nach ein paar Tagen entwickelt man auch Routine in den täglichen "Camperaufgaben". So waren wir alles in allem gut erholt, als wir am Sonntag die Heimreise antraten.

Ob so ein Urlaub auch für mehr als ein verlängertes Wochenende etwas für mich ist, weiß ich noch nicht. Da muss ich erstmal ein paar Nächte im eigenen Bett drüber schlafen. ;-)

Zehn Jahre on the Blogs

Ja, jetzt ist es soweit. Auch beim Hommel-Net hat das Blog-Zeitalter Einzug gehalten.

Mit diesen beiden Sätzen begann der erste Blogpost, den ich auf diesem Blog geschrieben haben. Und das war - ich kann es kaum fassen - genau vor zehn Jahren am 29. April 2006. Ein Jubiläum, das mir Gelegenheit gibt, mal auf die letzten zehn Jahre hier zurück zu blicken.

Der Anfang

Angefangen hat alles mit einem Kapitel im Buch "Webseiten programmieren und gestalten" von Mark Lubkowitz, das ich mir damals gekauft hatte und in dem ein Projekt zum Aufsetzen eines Blogs mithilfe der Blogsoftware Serendipity vorgeschlagen wurde. Und so wurde blog.hommel-net.de gebohren, mein kleines zu Hause im großen Internet, dem ich bis heute treu geblieben bin. Auch Serendipity bin ich bis heute treu geblieben, einer kleinen, komfortablen Blogengine, die alles bietet, was man (ich) zum Bloggen benötigt. Die kleine, aber sehr aktive und sympatische Community steht immer mit Rat und Tat zur Seite, wenn es ein Problem zu lösen gilt oder man einfach nur mal eine Idee umsetzen möchte.

Tatsächlich basiert dieses Blog immer noch auf der ursprünglichen Installation von 2006, natürlich mit regelmäßigen Updates. Lediglich die Datenbank wurde einmal beim Umstieg von MySQL4 auf MySQL5 mittels SQL-Dump auf eine andere übertragen. Auch daran sieht man, wie stabil und solide diese Software aufgebaut ist.

Aber zurück zum Bloggen. Dieses Blog ist ein reines Hobby-Projekt von mir. Ich veröffentliche unregelmäßig Artikel, habe mir keine feste Regel auferlegt, wie zum Beispiel "mindestens ein Post pro Woche". Bei anderen Verpflichtungen, die man als Familienvater so hat, steht das Blog auch mal hintenan und wenn ich mal keine Lust oder auch keine Inspiration zum Schreiben habe, liegt es auch mal ein paar Wochen brach.

Letzendlich kehre ich aber immer wieder hierher zurück um ein paar Gedanken festzuhalten, etwas lustiges aus meinem Arbeitsalltag als Administrator einer kleinen Genossenschaftsbank, ein Musikvideo, ein Fundstück aus den Weiten des Netzes. Ab und an gibt es auch mal einen technischen Artikel zu meinem Lieblingsbetriebssystem Linux sowie Anleitungen und Tipps zu diversen Computerthemen. Auch hier habe ich mich nie auf einen Schwerpunkt für das Blog festlegen können (oder wollen). Das, gepaart mit dem unregelmäßigen Erscheinen von Artikeln und der nicht vorhandenen SEO sorgt wohl dafür, dass es hier nicht gerade von Besuchern und Lesern so wimmelt. Die Besucherzahlen dümpeln in sehr überschaubarer Höhe (bzw. Tiefe) vor sich hin.

Trotzdem oder gerade deswegen freue ich mich über jeden Leser, der sich hierher verirrt und ich freue mich immer noch wie Bolle über jedes Feedback, das über die Kommentare oder andere Kanäle reinkommt. DANKE!

In 2013 lernte ich die Jungs von der BlackBerry-User-Group Kassel kennen und als die Idee aufkam, ein Blog für die Gruppe zu betreiben, war ich sofort Feuer und Flamme und habe mich für Installation und technische Betreuung der Seite bereit erklärt. Und so ging im Mai 2014 dann bbugks.de online. Die Seite läuft selbstverständlich auch mit Serendipity. ;-)

Seitdem schreibe ich nun für zwei Blogs Artikel, was der Veröffentlichungsfrequenz hier natürlich auch nicht immer förderlich ist, aber ich gebe mir weiterhin Mühe, auch mein Baby hier nicht zu sehr zu vernachlässigen.

Die Zeit mit dem Blog möchte ich nicht missen. Ich habe viele Menschen kennengelernt, die ich sonst nicht kennengelernt hätte. Auch habe ich viel gelernt und lerne noch. Ich finde es großartig, dass durch Blogs heutzutage jeder in der Lage ist, einfach Texte oder anderen Content im Internet zu veröffentlichen und somit einer riesigen Öffentlichkeit zur Verfügung zu stellen. Die Menschen konnten und können dadurch weltweit enger zusammenrücken und das lange bevor es die großen sozialen Netzwerke wie Facebook, Twitter und Konsorten gab. Ich finde übrigens Twitter großartig und treibe mich dort auch gern herum. Ich glaube aber trotz aller Unkenrufe, dass ein eigenes Blog auf dem nur ich Herr meines Contents bin, durch kein soziales Netzwerk ersetzt werden kann.

Ich werde also weiter bloggen und zwar hier in meinem kleinen Reich. Auch wenn das bedeutet, dass weniger Menschen meine Texte lesen, das ist es mir wert. Allerdings wird das hier auch immer ein Hobby-Projekt bleiben, das bei Bedarf auch mal vernachlässigt werden kann. Das ist zumindest der Plan, aber man kann ja nie wissen.

In diesem Sinne sage ich nochmals herzlich Danke an alle Leser, die mich die letzten Jahre begleitet haben und hoffentlich auch in Zukunft dabei bleiben. Ich freue mich auf die kommenden Jahre hier auf dem Hommel-Net Weblog (und frage mich gerade, ob ich mir damals nicht einen etwas eingängigeren Namen hätte aussuchen können, Past-Me).

To infinity and beyond.

Mario

S9YCamp 2016

Nachdem mir das Treffen von Serendipityentwicklern und -nutzern im letzten Jahr total viel Spaß gemacht hatte, war ich auch in diesem Jahr froh, dass ich wieder zum S9YCamp fahren konnte. Also machte ich mich am 22. April auf den Weg nach Essen ins Linuxhotel.

Linuxhotel

Nachdem ich mich durch den Freitagabendverkehr im Ruhrgebiet gekämpft hatte, kam ich zusammen mit Matthias im Hotel an. Und wenig später kamen dann mit Dirk, Malte, Garvin und Bernd auch die restlichen Teilnehmer unseres kleinen Treffens an.

Bis auf Bernd - den wir aber aus dem S9Y-Forum und diversen sozialen Medien auch schon kannten -  waren alle schon im letzten Jahr dabei. Das Linuxhotel war mit seinem tollen Angebot für Opensource-Projekte wieder eine hervorragende Location.

Tux im Park

Den ersten Abend nutzten wir dann ausgiebig zum Klönen und Pläne für das Wochenende schmieden. Es gab wieder die (fast schon) traditionelle Pizza und auch Bier und Rotwein. :-) Außerdem stellten wir fest, dass FreeBSD lauter als Serendipity ist. Nach einer entsprechend kurzen Nacht, bewacht von unserem Zimmer-Tux, ging es dann ans Arbeiten.

Zimmer-Tux

Am Samstag hatten wir uns dann ein stattliches Arbeitsprogramm vorgenommen, dass nur von diversen Nahrungsaufnahmen unterbrochen wurde. So konnten wir weiter an der neuen Projekthomepage inklusive Dokumentation arbeiten, die nun hoffentlich auch zeitnah verlöffentlicht werden kann.

Wie die meisten anderen Opensource Projekte konnten wir auch einen "Code of Conduct" verabschieden, der in Zukunft dem Umgang und das Miteinander im Projekt regeln soll.

Die offenen Issues des anstehenden 2.1er Releases wurden gesichtet, bewertet und zum Teil auch behoben.

Am Abend ging es dann nochmal, wie sollte es anders sein, auf einen schnellen Snack zum Dönertempel.

Musik-Klingel

Der Sonntag war dann nochmal gemütlich, je nachdem wann die Rückreise geplant war, verliessen die Teilnehmer nach und nach die Runde, natürlich nicht ohne ein leckeres Frühstück und eine letzte Arbeitsbesprechung in unserem Seminarraum.

Als wir dann nicht mehr vollständig waren, bemerkten wir: Wir hatten das Gruppenfoto vergessen! /o\ Das wird dann im nächsten Jahr nachgereicht.

Gegen Mittag machte ich mich dann auch auf die Heimreise. Es war wieder ein sehr schönes Wochenende. Es ist toll, wenn man sich mal mit ein paar Leuten unserer kleinen Community "in echt" treffen und miteinander quatschen, arbeiten und einfach eine gute Zeit verbringen kann. Was mich betrifft, ich komme nächstes Jahr gern wieder.

Über das S9YCamp schrieben auch:

(to be continued)

tweetbackcheck