def testPositions(request, trackId=None): activePositions = getActivePositions(trackId) if activePositions: json_data = modelsToJson(activePositions, DatetimeJsonEncoder) channel = 'live/positions' if trackId: channel = channel + '/' + str(trackId) json_data = ['{"now":' + datetime.datetime.now(pytz.utc).isoformat() + '}'] + json_data send_event('positions', json_data, channel) return HttpResponse(content=json_data, content_type="application/json") return HttpResponse('No data')
def sendActivePositions(trackId=None): while True: activePositions = getActivePositions(trackId) if activePositions: json_data = modelsToJson(activePositions, DatetimeJsonEncoder) channel = 'live/positions' theNow = datetime.datetime.now(pytz.utc).isoformat() if trackId: json_data = ['{"now":' + theNow + '}'] + json_data send_event('positions', json_data, channel + '/' + str(trackId)) else: for position in activePositions: json_data = '{"now":' + theNow + '}' + modelToJson(position, DatetimeJsonEncoder) send_event('positions', json_data, channel + '/' + str(position.track.pk)) time.sleep(1)
def getActivePositionsJson(request, trackId=None): json_data = modelsToJson(getActivePositions(trackId), DatetimeJsonEncoder) return HttpResponse(content=json_data, content_type="application/json")