from cgitb import text from unittest import result from otree.api import * import requests from sqlalchemy import Integer import sched, time import datetime class C(BaseConstants): NAME_IN_URL = 'Latency' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): pass # FUNCTIONS def getTimeStamp(): url = "https://api.thingspeak.com/channels/1815870/fields/1/last.json?api_key=TWVU33EJPKIZH9DV" res = requests.get(url) js = res.json() matlabTime = float(js["field1"]) oTreeTime = time.time() diff = oTreeTime - matlabTime return dict(matlabTime=matlabTime, oTreeTime=oTreeTime, diff=diff) class ShowLatency(Page): @staticmethod def live_method(player: Player, data): resp = getTimeStamp() matlabTime = resp["matlabTime"] oTreeTime = resp["oTreeTime"] diff = resp["diff"] result = { "matlabTime" : matlabTime, "oTreeTime" : oTreeTime, "diff": diff } return {0: result} page_sequence = [ShowLatency]