Permalink

11

WordPress Kommentare mit Prowl auf iPhone pushen

Treue Leser erinnern sich an mein Plugin das neue Kommentare direkt auf mein Feedboard in meinem Heimbüro gesendet hat. Dieses Plugin war jetzt die Basis für ein kleines Experiment. Mittels dem leider kostenpflichtigen Programm Prowl (iTunes App-Store Link), einem iPhone Client für die Mac OS X Erweiterung Growl und dem vorhandenen API wollte ich ich ein Plugin schreiben das neue Kommentare direkt als Push Benachrichtigung auf dem iPhone darstellt.

Hier mal das Demovideo wie ein Kommentar kurz nach dem Absenden als Push Nachricht auf dem iPhone erscheint.


Das ganze veröffentliche ich nicht als Plugin sondern als Beispiel, da man aus der Kombination mit Prowl und dem API sehr viele eigene Push Dienste implementieren kann. Zum Beispiel die Benachrichtigung über neue Verkäufe in einem e-Shop, Serverstatus aus einem Rechenzentrum oder beliebige andere Meldungen pushen kann. Da machen die 3.30 CHF die Prowl im App Store kostet nicht sehr viel aus.

Basis für das Plugin ist die ProwlPHP Library mit der man das Prowl API sehr einfach ansprechen kann. In dem nachfolgenden Beispiel wird natürlich alles Quick&Dirty als Prototyp ausgetestet. Es werden keine Fehlermeldungen abgehandelt, es gibt keine Gewähr für den Code und es ist auch nicht geplant daraus ein Plugin zu veröffentlichen.

Weiters muss man sich einen Account einrichten der den Hub zwischen dem eigenen WordPress Blog und dem iPhone spielt. Mehr dazu im Artikel über das Pushweb.

Hier nun der komplette PHP Code des WordPress Plugins:

[php]<?
/*
Plugin Name: Push Not
Plugin URI: http://leumund.ch/#
Description: Sends new comments to iPhone.
Author: Christian Leu
Version: 1.0
Author URI: http://leumund.ch/
*/
$apikey= "c3cff9a31515f07ba78faff8ad1036dee1ssdds16";
include(‚ProwlPHP.php‘);

add_action ( ‚comment_post‘, ‚leumund_pushnot‘);

function leumund_pushnot($cid) {

global $wpdb;
$blog = get_settings(‚blogname‘);
$cid = (int) $cid;
$comment = $wpdb->get_row("SELECT * FROM $wpdb->comments WHERE comment_ID=’$cid‘ LIMIT 1");
$post = $wpdb->get_row("SELECT * FROM $wpdb->posts WHERE ID=’$comment->comment_post_ID‘ LIMIT 1");

$prowl = new Prowl($apikey);
$prowl->push(array(
‚application’=>$blog,
‚event’=>stripslashes($post->post_title),
‚description’=> $comment->comment_author.‘ schreibt: \n‘.stripslashes($comment->comment_content). ‚\n Gesendet: ‚ . date(‚H:i:s‘),
‚priority’=>0,
//’apikey’=>’APIKEY‘ // Not required if already set during object construction.
//’providerkey’=>"PROVIDERKEY‘
),true);
return;
}
?><[/php]

Zum installieren muss man diesen PHP Code in die Datei /wp-content/plugins/pushnot/pushnot.php kopieren. Dann sollte die Library ProwlPHP.php ins selbe Verzeichnis kopiert werden.

Die Dateien im Plugin Verzeichnis

Die Dateien im Plugin Verzeichnis

Unter dem eigenen Account auf prowl.weks.net in Settings kann man einen API Key generieren der in der Datei pushnot.php unter $apikey=“dein API Key“ eingesetzt werden muss. Danach wird das Plugin wie ein ganz normales Plugin in WordPress aktiviert.

11 Kommentare

  1. @habi
    hätte vorhin grad spontan nochmals 100m Gaffa Tape bei Aldi gekauft. Konnte mich aber zurückhalten.

    @Juan
    Cool, dann hat mein Beitrag sein Ziel erfüllt und jemanden zum basteln angeregt.

    @puyol5
    Wie du im Video sehen kannst hab ich das Plugin nur schnell im Testblog eingebaut. Ich weiss nicht mal ob es zusammen mit Disqus überhaupt funktionieren würde.

  2. Geniale Sache, danke :-)

    theoretisch sollte es mit Disqus harmonieren, da die Kommentare ja ebenfalls in der DB abgelegt werden.

    Ob ich das mal teste? hmmmm… :-D

  3. Pingback: Latitude Position in Blog einbinden

  4. Schöne Demo, hätte es auch gerne mal getestet, aber funktioniert leider bei mir nicht :/
    Ich hoffe das jemand daraus doch noch mal ein PlugIn macht :)

    LG

    __________________________________
    MyBlog | MyTweets | MyRSS

  5. Pingback: Wordpress Kommentare “pushen”

  6. Pingback: Christian Leu

Jetzt kommentieren: