Kurztipp: Gnu Social XMPP Bot

Das wird wohl ähnliche Gründe wie das roundcube Problem aus dem letzten Kurztipp haben. Der XMPP Bot von gnu social kann sich nicht mehr an der ejabberd Instanz anmelden. Da wird sich PHP wohl auch an den selfsigned Zertifikat von ejabberd stören. Geholfen hat ein Verzicht auf Verschlüsselung ;-). Der XMPP Bot meldet sich also unverschlüsselt an den lokalen ejabberd an.

ejabberd Nagios

Es gibt da bestimmt tolle Plugins für Nagios, die ich nicht gefunden habe, aber ich wollte nur einen Graphen für meine Centreon/Nagios Installation.

#!/bin/bash
connections=$(ejabberdctl connected-users-number)
echo "Benutzer:$connections | 'Benutzer'=$connections"
exit 0

Munin hat ejabberd mit dabei und malt schöne Graphen für die Hippos.

Notizen via Jabber online posten

Ich hoffe es gibt bessere Lösungen, aber ich erzähle mal meine beiden.
Ich brauche eine einfache Möglichkeit Notizen via jabber (xmpp) zu posten. Diese sollen über eine Webseite angezeigt werden und durchsuchbar sein.
Jabber deshalb, weil es in der Regel häufig läuft wenn ich am Rechner sitze. Ich möchte nicht extra eine Seite öffnen um mir etwas zu notieren. Die meisten Notizen sind den Aufwand nicht wert.
Dazu nutze ich schon seit langer Zeit laconica/status.net unter mexdc.exdc.net. Funktioniert wunderbar, da gibt es einen netten Jabberbot der postet einfach alles was ich ihm schreibe. Auf Wunsch kann man sich auch anderen status.net Nutzern mitteilen.
Im Laufe der Zeit ist diese Notiz Funktion immer wichtiger für mich geworden, vernetzen via identi.ca, twitter&co dabei immer nebensächlicher. Natürlich kann man sich eine dedizierte status.net Instanz für diese Funktion aufsetzen. Habe ich auch gemacht, aus diversen Gründen bin ich aber unzufrieden damit. Einer der Hauptgründe ist, dass die aktuelle status.net Software (1.1.0) ziemlich fehlerbehaftet ist und z.B. der xmpp bot nicht das tut was er soll, daher bleibe ich auch noch bei der 0.9.9er.

Nun bin ich zufällig auf https://github.com/hj91/Using-XMPP-to-post-content-on-blog-sms-facebook gestoßen. Ähnlich wie bei status.net läuft ein bot, der einfach alles was man ihm so mitteilt via WordPress (xml-rpc) veröffentlicht. Das Skript ist einigermaßen übersichtlich und lässt sich eigentlich gut anpassen. Ein paar Dinge fehlen leider dabei. So ist es nicht möglich Beiträge mit Tags zu versehen. URLs werden nicht automatisch zu Links umgewandelt. Man kann zwar „<a href=http://heise.de>heise.de</a>“ posten, was dann auch als Link angezeigt wird, aber das ist natürlich zu aufwändig. Mit ejabberd im Hintergrund läuft das ganze sehr reibungslos und ohne Unterbrechung. Ach…aussehen tut es dann so: notizen.exdc.net. Na ja was soll man da auch groß erwarten!?

Voraussetzung ist bei beiden Lösungen, dass sie komplett selbst gehostet werden können, ohne externe Abhängigkeiten. Sollte ich bei dem Skript weiter kommen, schreibe ich nochmal was dazu.

Updates:
Wählt man P2 als Theme bei WordPress  funktioniert die Konvertierung zu clickable links.
Nach einiger Zeit verliert der Bot die connection zum ejabberd Server, das wird wohl die fehlende keepalive Funktion sein.

Update 2: eingestellt da status.net 1.1.1 nun gut mit xmpp läuft, siehe hier

Dokuwiki Jabber Bot – Jabber Dokuwiki Bot

Liebe Leute,
ich und alle anderen Menschen auf dem Planeten Erde wünschen sich (neben Feldfrieden und universellem Glück für alle) folgendes zu Weihnachten:
Einen Jabber-Dokuwiki-Bot.
Der Jabberbot soll Eingaben direkt in ein Dokuwiki posten. Diese Eingaben sollen sich mit Tags verschlagworten lassen. Es soll die Möglichkeit geben neue Wikiseiten über den Bot anlegen zu lassen oder Text an bestehende Seiten anzuhängen. Andersherum soll der Bot auch anzeigen können was er zu bestimmten Tags bereits im Wiki stehen (Seitennamen wo z.B. die Tags vorkommen) hat und es soll auch die Möglichkeit geben den Text von kompletten Wikiseiten anzeigen zu lassen.

Ich hoffe es wird ungefähr klar was gemeint ist. Es sind noch fünf Tage bis Weihnachten, also genug Zeit eine erste Alpha bereit zustellen. Mit technischen Ressourcen kann ich gerne helfen. Als Belohnung gibt es eine selbst gebackene Urwaldtorte in Göttingen.

Meine Status.net Installation hat so einen bot, aber halt leider nur für Status.net.

reply to remote user using jabber and statusnet and other stuff

Ist eigentlich ganz einfach:

reply http://mexdc.exdc.net/notice/24797 du redest auch eine Scheisse manchmal

Will man sich auf das letzte Posting einer Unterhaltung beziehen nimmt man einfach die URL dieser Nachricht. Da ich schon mal dabei bin.

Eine Nachricht an einen remote User schickt man so

Lieber @kero@mexdc.exdc.net du schlaefst zu wenig

oder

Lieber @mexdc.exdc.net/kero geh mal ins bett

und um eine Nachricht eines Users zu wiederholen

repeat #<notice_id> – Nachricht mit bestimmter ID wiederholen
repeat <nickname> – letzte Nachricht eines Benutzers wiederholen

Bekommt man natuerlich auch alles raus wenn man help beim Jabberbot eingibt. Ich wollte es halt mal irgendwo hinschreiben.

StatusNet und remote groups

Es ist problemlos moeglich  Gruppen unter http://identi.ca/group/ in der eigene StatusNet Installation zu joinen. Dazu einfach die Gruppe auf  http://identi.ca/group (bzw. wo auch immer) joinen und bei Profile Account einfach den Useraccount@Sitename angeben, also so was kero@mexdc.exdc.net. Danach erscheinen alle Nachrichten die auf der remote Installation mit !group getagt sind auch auf der eigenen Installation, genauso werden natuerlich eigene messages mit !group als tag auf der remote  Installation veroeffentlicht. Nette Sache, ob man was mit Anfangen kann haengt natuerlich vom Inhalt der Gruppen ab.  Die messages werden je nach Einstellungen dann auch via Jabber gepostet. Wer StatusNet nutzt wird das eh alles schon wissen. Man sollte vielleicht noch auf das TextLimit achten, ich hab meins auf 160 erhoeht, wodurch messages ueber 140 nicht auf anderen Seiten dargestellt werden (so war es jedenfalls bei Twitter).

Laconica und ich

Ich habe mich ja neulich ein wenig mit Minimicrolikedeadcatblogging beschaeftigt.
Hier mal ein paar Hinweise zum Einrichten von Laconica (Version 0.73 einige Probleme wird es in 0.74 nicht mehr geben) :

Wer Nachrichten via Jabber direkt posten will, sollte optimalerweise einen eigenen Jabberserver laufen haben, dass vereinfacht einiges.
Ich nutze seit langer Zeit ejabberd, bin zwar nicht 100%  zufrieden aber auch nicht enttaeuscht. Es empfiehlt sich dafuer einen extra user anzulegen z.B. habe ich  mexdc@jabber.exdc.net angelegt. Im Webinterface (Laconica) muss natuerlich eingetragen werden auf welchen Jabberaccount der Bot hoeren soll. Mit „help“ offenbart der bot einige Kommandos. Dort gibt es noch sehr viel Platz fuer Erweiterungen. Die Laconica „Daemons“ sollte man jede Nacht neu starten, da gibt es zur Zeit noch Probleme.

Wer direkt Nachrichten per mail posten will sollte…:

aptitude install php-mail-mime
aptitude install  php5-dev
pecl install mailparse
/etc/php5/cli/php.ini
extension=mailparse.so

postfix/master.cf
laconica   unix  –       n       n       –       –       pipe
flags=R user=satanas argv=/var/www/mexdc/scripts/maildaemon.php
(welchen user man dafuer am besten nimmt muss jeder fuer sich selbst entscheiden)

postfix/main.cf
transport_maps = hash:/etc/postfix/transports
local_recipient_maps =

postmap hash:/etc/postfix/transports

mexdc/lib/mail.php   (wichtig z.B. bei sitename mit „.“, mexdc ist mein docroot )
$notifyfrom = ‚“‚.common_config(’site‘, ’name‘) .'“ <noreply@‘.$domain.‘>‘;

Nicht nach syslog loggen sondern so was in der Art

$config[’site‘][‚logfile‘] = ‚/var/log/mexdc/laconica.log‘;

in die config.php eintragen

Es gibt noch einige Dinge die bei mir nicht funktionieren, bzw. die ich nicht hinbekommen habe z.B shorten Urls, braucht man da eine spezielle Syntax? Find ich aber eigentlich auch nicht so wichtig, da mir gekuerzte Urls eh unheimlich sind und falls 140 Zeichen nicht fuer eine Notiz reichen, macht man halt zwei. Dieses Badge Teil macht auch nicht was es soll, tatsaechlich sieht das Skript aber gar nicht so komplex aus, sollte man also mal einen Blick drauf werfen. User accounts koennen nicht ueber das Webinterface geloescht werden, dazu muss man alle Spuren des Users direkt in der DB loeschen. Denke aber, dass dies in einer der naechsten Versionen verbessert wird. Sowas wie bei lastfm  „[deleted-user] schrieb“ waere gut. Wer nicht will das Hinz&Kunz sich gleich anmelden, sollte vielleicht auf „invite only“ stellen, wem es egal ist, der kann auch die Einstellungen lassen wie sie sind. Das ssl Zeug ist suboptimal, daher erst mal deaktiviert. Die Hinweise beziehen sich auf Debian/Lenny und auf mein System. Ein paar Fragen zu der config.php kann ich noch beantworten…falls wer fragt.
Mein Fazit bisher ist relativ simpel. Laconica macht Spass, egal ob man es nur fuer Notizen, als Twitterersatz oder um Toilettengaenge festzuhalten nutzt . Die Entwickler scheinen sehr motiviert zu sein und  gehen auf  Fehlermeldungen zeitnah ein. Mexdc werde ich also vorerst weiter laufen lassen.
Ob mit „Wave“ alles anders wird? Wurde jemals alles anders?

update:

Das mit shortening urls klappt natuerlich, ich hab da bloss etwas anderes erwartet ;-).

Howto fuck Twitter

Unter mexdc.exdc.net habe ich laconica eingerichtet. Ich bin kein Twitter Fan, das ist fuer mich sowas wie Sprechdurchfall². Natuerlich habe ich das mal ausprobiert und vielleicht erkenne ich  auch eines Tages den Sinn davon, aber momentan ist es einfach nur ein Zeitvernichter mehr. Die „Twittertechnik“ (das klingt mal klever) als Opensource zu nutzen und vielleicht sogar tatsaechlich die ein oder andere nuetzliche Anwendung zu finden ist fuer mich etwas anderes, weil ich dabei alles unter Kontrolle habe und meine Daten nicht auf einen weiteren Server verteilen muss. Auf jeden Fall gibt es eine Moeglichkeit Jabber einzubinden und das allein reicht fuer mich schon mir das mal genauer anzuschauen…

screenshot136

update:

Jabber funktioniert, sowohl Nachrichten drueber bekommen als auch direkt zu mexdc.exdc.net schreiben.

pidgin crashes

Hi, I don’t know what has changed in my setup by pidgin started crashing when logging in to a jabber

http://developer.pidgin.im/ticket/8830

Unter Debian/sid hatte ich das gleiche Problem. Da ich pidgin eigentlich primaer fuer icq nutze und psi fuer jabber, brauchte ich nur die Jabber Accounts bei pidgin zu dekativieren und icq ging wieder.
Also einfach mal pidgin -n, die Jabber Accounts deaktivieren und schon laeuft pidgin wieder.

Update me Baby

Fan 1.1 ist vor ein paar Tagen erschienen, man war ganz gut damit bedient das Update erst jetzt einzuspielen, da sich immer noch Fehler gefunden haben, tatsaechlich habe ich auch 2 entdeckt, die aber sehr schnell gefixed wurden. Nun laeuft auch das Reporting bei centreon vernuenftig. Verbesserungsmoeglichkeiten gibt es natuerlich noch einige.

Openfire 3.6.3 ist auch raus, wegen dieser Sache.

Ausserdem kam ich auf die glorreiche Idee xbmc unter Ubuntu ueber die SVN Quellen zu installieren…jaja der Updatewahn. Verbesserungen habe ich keine feststellen koennen, ok, angeblich soll pulseaudio damit laufen, das lief aber nur teilweise bei mir. Der Ton war irgendwie zu langsam und das Bild hat haeufiger mal gestoppt. Mit pulseaudio -k lief es deutlich besser. Leider lief meine Fernbedienung nicht mit der neuen xbmc Version, daher musste ich wieder auf die standard builds zurueckgreifen und downgraden, was aber auch kein Problem war und ruck zuck ging.

jabber

Mal ganz ehrlich, ich hab keinen Plan von jabber. Habe mich noch nie damit beschaeftigt. Aber nun laeuft seit ein paar Tagen unter jabber.exdc.net ein jabber Server. Mit Jabber-Transport habe ich mich noch nicht beschaeftigt…habe ich auch momentan nicht die Zeit und Lust zu. Auf jeden Fall laeuft auf exdc ein reiner jabber Server der fuer jeden nutzbar ist. Als Software habe ich ejabberd im Einsatz, erst hatte ich jabber als Daemon, mochte ich aber nicht. Mein Account ist kero@jabber.exdc.net, was auch sonst ;-).
Zur Zeit kann sich jeder anmelden und ich denk mal das wird auch so bleiben, da der Andrang sich sicherlich in Grenzen halten wird (schaut euch mal die beiden Links unten an loslos) . Unter Pidgin einfach so tun (wichtig dabei natuerlich dass man ganz unten den Haken setzt):

jabber

Links:
Ein paar Gedanken zu jabber hat Herr Helmschrott niedergeschrieben.
Warum Jabber statt ICQ/MSN/AIM/Y interessant dabei sind die AGB auszuege der herrschenden IM Dienste