MCPcopy Create free account
hub / github.com/Keeper-Security/Commander / communicate

Function communicate

keepercommander/api.py:911–933  ·  view source on GitHub ↗
(params, request, retry_on_throttle=True)

Source from the content-addressed store, hash-verified

909
910
911def communicate(params, request, retry_on_throttle=True):
912 # type: (KeeperParams, dict, Optional[bool]) -> dict
913
914 request['client_time'] = current_milli_time()
915 request['locale'] = LOCALE
916 request['device_id'] = 'Commander'
917 request['session_token'] = params.session_token
918 request['username'] = params.user.lower()
919 try:
920 response_json = run_command(params, request)
921 if response_json['result'] != 'success':
922 if retry_on_throttle and response_json.get('result_code') == 'throttled':
923 logging.debug('Throttled, retrying in 10 seconds')
924 time.sleep(10)
925 # Allow maximum 1 retry per call
926 return communicate(params, request, retry_on_throttle=False)
927 raise KeeperApiError(response_json['result_code'], response_json['message'])
928 TTK.update_time_of_last_activity()
929 return response_json
930 except KeeperApiError as kae:
931 if kae.result_code == 'session_token_expired':
932 params.session_token = None
933 raise kae
934
935
936def execute_batch(params, requests):

Callers 6

load_team_keysFunction · 0.85
load_available_teamsFunction · 0.85
execute_batchFunction · 0.85
update_recordFunction · 0.85
add_recordFunction · 0.85
delete_recordFunction · 0.85

Calls 6

current_milli_timeFunction · 0.85
run_commandFunction · 0.85
KeeperApiErrorClass · 0.85
getMethod · 0.45
debugMethod · 0.45

Tested by

no test coverage detected