2010-11-23 41 views
0

J'ai un script qui envoie une notification push aux utilisateurs en fonction de ce qui est dans un fichier PHP. Ce est ce fichier ... les pièces qui comptent ...exécuter un script PHP lors des mises à jour de flux RSS (emplois Cron?)

$doc = new DOMDocument(); 
    $doc->load('RandomXML Url location here '); 
    $arrFeeds = array(); 
    foreach ($doc->getElementsByTagName('item') as $node) { 
    $itemRSS = array ( 
     'title' => $node->getElementsByTagName('title')->item(0)->nodeValue, 
     'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue, 
     'link' => $node->getElementsByTagName('link')->item(0)->nodeValue, 
     'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue 
    ); 
    array_push($arrFeeds, $itemRSS); 
    } 
// APPLE APNS EXAMPLE 1 
$apns->newMessage(2); 
$apns->addMessageAlert($itemRSS['title']); 
// $apns->addMessageCustom('acme2', array('bang', 'whiz')); 
$apns->queueMessage(); 
// SEND ALL MESSAGES NOW 
$apns->processQueue(); 

des thats Ainsi, le PHP qui envoie la notification. Il envoie la notification lorsque ce script PHP est chargé.

Il charge le premier post de l'alimentation et l'envoie. Je souhaite envoyer une notification chaque fois que le flux RSS est mis à jour avec un nouveau message. Si elle est mise à jour avec un nouveau flux, alors je veux exécuter le code ci-dessus.

Alors, comment puis-je faire cela et assurez-vous qu'il est souvent exécuté?

Je voudrais vraiment voir ce code, je dois vérifier si sa mise à jour? Je ne sais pas comment vérifier les mises à jour et c'est probablement la partie la plus importante du script.

Répondre

3

Configurez Cron pour exécuter votre script par ex. 1 heure et dans le script ajouter le code à vérifier est RSS modifié.

EDIT:
1. Vous pouvez configurer Cron pour exécuter votre script par ex. 1 heure.
2. Au script, ajoutez le code pour tester si le flux RSS a été modifié.
3. Pour vérifier si la source a été modifiée, utilisez l'étiquette. Vous pouvez enregistrer le contenu du tag dans txt et le comparer.
4. Pour écrire le contenu de l'étiquette, vous pouvez utiliser SimpleXML et fwrite.

+0

N'importe quelle idée quel code je devrais voir si le RSS a changé? – Sum

+0

Enregistrez les GUID pour chaque élément d'une base de données. Lorsque vous en rencontrez un que vous n'avez jamais vu, c'est nouveau. – ceejayoz

+0

Vérifiez la date dans tag. – m4tx