def main(gctx=None): params = Params() dongle_id = params.get("DongleId") access_token = params.get("AccessToken") ws_uri = ATHENA_HOST + "/ws/" + dongle_id crash.bind_user(id=dongle_id) crash.bind_extra(version=version, dirty=dirty, is_eon=True) crash.install() conn_retries = 0 while 1: try: print("connecting to %s" % ws_uri) ws = create_connection(ws_uri, cookie="jwt=" + access_token, enable_multithread=True) ws.settimeout(1) conn_retries = 0 handle_long_poll(ws) except (KeyboardInterrupt, SystemExit): break except Exception: conn_retries += 1 traceback.print_exc() time.sleep(backoff(conn_retries)) params.delete("AthenadPid")
def main(): params = Params() dongle_id = params.get("DongleId").decode('utf-8') cloudlog.bind_global(dongle_id=dongle_id, version=version, dirty=dirty, is_eon=True) crash.bind_user(id=dongle_id) crash.bind_extra(version=version, dirty=dirty, is_eon=True) crash.install() try: while 1: cloudlog.info("starting athena daemon") proc = Process(name='athenad', target=launcher, args=('selfdrive.athena.athenad', )) proc.start() proc.join() cloudlog.event("athenad exited", exitcode=proc.exitcode) time.sleep(5) except: cloudlog.exception("manage_athenad.exception") finally: params.delete(ATHENA_MGR_PID_PARAM)
def main(): params = Params() dongle_id = params.get("DongleId") crash.bind_user(id=dongle_id) crash.bind_extra(version=version, dirty=dirty, is_eon=True) crash.install() # setup shared parameters last_gps = None query_lock = threading.Lock() last_query_result = None last_query_pos = None cache_valid = False osm_way_id = 0 sharedParams = {'last_gps' : last_gps, 'query_lock' : query_lock, 'last_query_result' : last_query_result, \ 'last_query_pos' : last_query_pos, 'cache_valid' : cache_valid, \ 'osm_way_id' : osm_way_id} qt = QueryThread(1, "QueryThread", sharedParams=sharedParams) mt = MapsdThread(2, "MapsdThread", sharedParams=sharedParams) mggps = MessagedGPSThread(3, "MessagedGPSThread", sharedParams=sharedParams) qt.start() mt.start() mggps.start()
def main(gctx=None): params = Params() dongle_id = params.get("DongleId") crash.bind_user(id=dongle_id) crash.bind_extra(version=version, dirty=dirty, is_eon=True) crash.install() main_thread = threading.Thread(target=mapsd_thread) main_thread.daemon = True main_thread.start() q_thread = threading.Thread(target=query_thread) q_thread.daemon = True q_thread.start() while True: time.sleep(0.1)
def main(): params = Params() dongle_id = params.get("DongleId") crash.bind_user(id=dongle_id) crash.bind_extra(version=version, dirty=dirty, is_eon=True) crash.install() # setup shared parameters last_gps = None query_lock = threading.Lock() last_query_result = None last_query_pos = None cache_valid = False traffic_status = 'None' traffic_confidence = 100 last_not_none_signal = 'None' speedLimittraffic = 0 speedLimittrafficvalid = False speedLimittrafficAdvisory = 0 speedLimittrafficAdvisoryvalid = False sharedParams = {'last_gps' : last_gps, 'query_lock' : query_lock, 'last_query_result' : last_query_result, \ 'last_query_pos' : last_query_pos, 'cache_valid' : cache_valid, 'traffic_status' : traffic_status, \ 'traffic_confidence' : traffic_confidence, 'last_not_none_signal' : last_not_none_signal, \ 'speedLimittraffic' : speedLimittraffic, 'speedLimittrafficvalid' : speedLimittrafficvalid, \ 'speedLimittrafficAdvisory' : speedLimittrafficAdvisory, 'speedLimittrafficAdvisoryvalid' : speedLimittrafficAdvisoryvalid} qt = QueryThread(1, "QueryThread", sharedParams=sharedParams) mt = MapsdThread(2, "MapsdThread", sharedParams=sharedParams) mggps = MessagedGPSThread(3, "MessagedGPSThread", sharedParams=sharedParams) mgarne = MessagedArneThread(4, "MessagedArneThread", sharedParams=sharedParams) qt.start() mt.start() mggps.start() mgarne.start()