示例#1
0
    def post_feed(self, feed_id):
        data = request.get_json(force=True)
        feed = Feed.select().where(Feed.id == data["id"]).get()
        if feed:
            feed.time = data["time"]
            feed.name = data["name"]
            feed.size = data["size"]
            feed.last_feed = data["last_feed"]
            feed.feed_count = data["feed_count"]
            feed.save()

        return json.dumps(feed.dict(), cls=MyEncoder)
示例#2
0
    def run(self):
        logging.getLogger('petfeedd').info("Starting time worker.")

        while True:
            if self.stopped():
                logging.getLogger('petfeedd').info("Stopping time worker.")
                return

            if petfeedd.feeding_semaphore:
                time_query = time.strftime("%H:%M:%S")
                for feed in Feed.select().where(Feed.time == time_query):
                    logging.getLogger('petfeedd').info("Found feed " +
                                                       feed.name + " at " +
                                                       time_query)
                    feed_event = FeedEvent.create(size=feed.size,
                                                  name=feed.name)
                    self.feed_queue.put(feed_event)

                    feed.last_feed = feed_event.date_updated
                    feed.feed_count = feed.feed_count + 1
                    feed.save()

            time.sleep(1)
示例#3
0
    def delete_feed(self, feed_id):
        feed = Feed.select().where(Feed.id == feed_id).get()
        if feed:
            feed.delete_instance()

        return self.get_feeds()
示例#4
0
    def get_feed(self, feed_id):
        feed = Feed.select().where(Feed.id == feed_id).get()
        if feed:
            return json.dumps(feed.dict(), cls=MyEncoder)

        return "{}"
示例#5
0
    def get_feeds(self):
        feeds = []
        for feed in Feed.select().dicts():
            feeds.append(feed)

        return json.dumps(feeds, cls=MyEncoder)