''' API to configure new Radar controller @author: Juan C. Espinoza ''' import os import json import requests from struct import pack from base64 import b64encode class RCApi(object): def __init__(self, ip, port=80): self.url = 'http://{}:{}/'.format(ip, port) self.params = None def load(self, filename): self.params = json.load(open(filename)) print 'RC Configuration: {}'.format(self.params['name']) def status(self): url = os.path.join(self.url, 'status') req = requests.get(url) return req.json() def read(self): url = os.path.join(self.url, 'read') req = requests.get(url) return req.json() def stop(self): url = os.path.join(self.url, 'stop') req = requests.post(url) return req.json() def reset(self): url = os.path.join(self.url, 'reset') req = requests.post(url) return req.json() def start(self): url = os.path.join(self.url, 'start') req = requests.post(url) return req.json() def write(self): url_write = os.path.join(self.url, 'write') url_divider = os.path.join(self.url, 'divisor') values = zip(self.params['pulses'], [x-1 for x in self.params['delays']]) payload = '' for tup in values: vals = pack('