public async Task <StartJobResponse> ExecuteJobAsync(StartJobInfo jobInfo) { var jobResponse = await StartJobAsync(jobInfo); await WaitForJobCompletionAsync(jobResponse.Key); return(await GetJobDetailAsync(jobResponse.Id)); }
// Depending on user scenario, if the robot is very busy and start job may fail. So a retry will need to be added here. public async Task <StartJobResponse> StartJobAsync(StartJobInfo jobInfo, HttpClient client = null) { StartJobBody body = new StartJobBody() { startInfo = jobInfo }; var startJobResponseList = await HttpCallAsync <ODataList <StartJobResponse> >(Utils.GetStartjobUrl(_baseUrl), HttpMethod.Post, Utils.GetPostBody(body), client); return(startJobResponseList.Value[0]); }