예제 #1
0
def loop():
    global activeScreen
    global oldActiveScreen
    global screensaverNeedsUpdate

    if activeScreen:
        if oldActiveScreen != activeScreen:
            coffeeBot.state.needs_render = True
            coffeeBot.apps[coffeeBot.get_active_app()].state.needs_render = True
            oldActiveScreen = activeScreen
        coffeeBot.update('fg')
    else:
        coffeeBot.update('bg')
        if screensaverNeedsUpdate:
            screen.fill('black')
            screen.image('icon.png', xy=screensaverCoordinates, max_width=90, max_height=90, scale='fit', align="center")
            screen.text(
                datetime.datetime.now(settings['timezone']).strftime('%H:%M'),
                xy=(screensaverCoordinates[0], screensaverCoordinates[1] + 55),
                color=(255, 255, 255),
                font_size=16, font=Utils.get_font_resource('akkuratstd-bold.ttf')
            )
            screensaverNeedsUpdate = False
예제 #2
0
import datetime
from random import randint
import subprocess
from classes.utils import Utils
import json
from dateutil import parser as date_parser
from dateutil.tz import gettz

screen.fill((0, 0, 0))
screen.image('icon.png', xy=(160, 120), max_width=150, max_height=150, scale='fit', align="center")
screen.text(
    'loading...',
    xy=(160, 210),
    align='center',
    color=(255, 255, 255),
    font_size=16, font=Utils.get_font_resource('akkuratstd-bold.ttf')
)
screen.update()

settings = {
    'ticksPerSecond': 20,
    'countdownSeconds': 300,
    'sleepAfterSeconds': 300,
    'timezone': gettz(tingbot.app.settings['coffeeBot']['timezone']),
    'musicFolder': tingbot.app.settings['coffeeBot']['musicFolder']
}
startup = True
activeScreen = True
oldActiveScreen = activeScreen
lastActionAt = datetime.datetime.now(settings['timezone'])
coffeeBot = CoffeeBot(screen, settings['countdownSeconds'], settings['ticksPerSecond'], settings['timezone'], settings['musicFolder'])