0

J'écris un Bot pour Telegram en utilisant Python (Using this as a Base) et Google App Engine.Comment mettre à jour Google Cloud Datastore à une heure ou à un intervalle donné?

J'ai créé un Datastore où je stocke combien de fois un utilisateur a envoyé quelque chose dans un chat et je mets à jour un compteur pour prévenir le spam en disant If Counter > x don't answer.

class SpamFilterDB(ndb.Model): 
    UserID = ndb.IntegerProperty() 
    ChatID = ndb.IntegerProperty() 
    Counter = ndb.IntegerProperty() 

Quelques exemples de données:

Some Example Data

Maintenant, je veux diminuer le compteur pour tous les utilisateurs en x à nouveau pour permettre aux utilisateurs d'utiliser à nouveau le Bot quelque temps défini (par exemple jamais jour) .

Comment faire?

Note: Je dirais que mes compétences en Python sont encore au niveau débutant.

+0

Pouvez-vous ajouter votre code? Qu'avez-vous essayé? – jezrael

+0

@jezrael J'ai ajouté un peu d'espoir de code qui aide et je n'ai pas vraiment essayé quelque chose parce que je ne savais pas par où commencer. –

+0

Pouvez-vous essayer de le lire? http://www.reddit.com/r/Telegram/comments/3b1pwl/create_your_own_telegram_bot_stepbystep/ – jezrael

Répondre

1

Vous pouvez configurer un scheduled task qui interrogera une URL spéciale dans votre application selon une planification donnée. Dans votre gestionnaire pour l'URL, vous pouvez diminuer le compteur.

+0

Cela ressemble à ce que je cherchais et j'ai essayé cela maintenant j'ai la question comment écrire le gestionnaire qui traverse toutes les entités et diminue le compteur –

+0

Quelle partie de cette tâche présente une difficulté pour vous? – yole

+0

Je pensais à une boucle qui traverse chaque entité et change le nombre mais je ne sais pas comment mettre cette boucle en place –