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

Function communicate

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

Source from the content-addressed store, hash-verified

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