[modules/getcrypto] Update to latest API

This commit is contained in:
tobi-wan-kenobi 2020-04-19 10:38:09 +02:00
parent 317f1f60b5
commit 8738ced325

View file

@ -14,12 +14,16 @@ Parameters:
""" """
import requests import requests
import time
import bumblebee.util
import bumblebee.input
import bumblebee.output
import bumblebee.engine
from requests.exceptions import RequestException from requests.exceptions import RequestException
import time
import core.module
import core.widget
import core.input
import core.decorators
import util.format
def getfromkrak(coin, currency): def getfromkrak(coin, currency):
abbrev = { abbrev = {
'Btc': ['xbt', 'XXBTZ'], 'Btc': ['xbt', 'XXBTZ'],
@ -40,36 +44,31 @@ def getfromkrak(coin, currency):
kethusdbid = float(krakenget['result'][tickname]['b'][0]) kethusdbid = float(krakenget['result'][tickname]['b'][0])
return coin+': '+str((kethusdask+kethusdbid)/2)[0:6] return coin+': '+str((kethusdask+kethusdbid)/2)[0:6]
class Module(core.module.Module):
@core.decorators.every(minutes=30)
def __init__(self, config):
super().__init__(config, core.widget.Widget(self.curprice))
class Module(bumblebee.engine.Module): self.__curprice = ''
def __init__(self, engine, config): self.__getbtc = util.format.asbool(self.parameter('getbtc', True))
super(Module, self).__init__(engine, config, self.__geteth = util.format.asbool(self.parameter('geteth', True))
bumblebee.output.Widget(full_text=self.curprice) self.__getltc = util.format.asbool(self.parameter('getltc', True))
) self.__getcur = self.parameter('getcur', 'usd')
self._curprice = '' core.input.register(self, button=core.input.LEFT_MOUSE,
self._nextcheck = 0
self._interval = int(self.parameter('interval', '120'))
self._getbtc = bumblebee.util.asbool(self.parameter('getbtc', True))
self._geteth = bumblebee.util.asbool(self.parameter('geteth', True))
self._getltc = bumblebee.util.asbool(self.parameter('getltc', True))
self._getcur = self.parameter('getcur', 'usd')
engine.input.register_callback(self, button=bumblebee.input.LEFT_MOUSE,
cmd='xdg-open https://cryptowat.ch/') cmd='xdg-open https://cryptowat.ch/')
def curprice(self, widget): def curprice(self, widget):
return self._curprice return self.__curprice
def update(self, widgets): def update(self):
if self._nextcheck < int(time.time()): currency = self.__getcur
self._nextcheck = int(time.time()) + self._interval
currency = self._getcur
btcprice, ethprice, ltcprice = '', '', '' btcprice, ethprice, ltcprice = '', '', ''
if self._getbtc: if self.__getbtc:
btcprice = getfromkrak('Btc', currency) btcprice = getfromkrak('Btc', currency)
if self._geteth: if self.__geteth:
ethprice = getfromkrak('Eth', currency) ethprice = getfromkrak('Eth', currency)
if self._getltc: if self.__getltc:
ltcprice = getfromkrak('Ltc', currency) ltcprice = getfromkrak('Ltc', currency)
self._curprice = btcprice+' '*(self._getbtc*self._geteth)+ethprice+' '*(self._getltc*max(self._getbtc, self._geteth))+ltcprice self.__curprice = btcprice+' '*(self.__getbtc*self.__geteth)+ethprice+' '*(self.__getltc*max(self.__getbtc, self.__geteth))+ltcprice
# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4 # vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4