/// <summary> /// Establishes the conversation. /// </summary> /// <param name="request">The request.</param> /// <returns></returns> public ApiResponse <EstablishedConversationModel> Establish(IHubsterAuthorizer authorizer, EstablishConversationRequestModel request) { var apiResponse = _engineAccess.Establish(authorizer, request); return(apiResponse); }
/// <summary> /// Establishes the conversation. /// </summary> /// <param name="authorizer">The authorizer.</param> /// <param name="request">The request.</param> /// <returns></returns> public ApiResponse <EstablishedConversationModel> Get(IHubsterAuthorizer authorizer, EstablishConversationRequestModel request) { var apiResponse = new ApiResponse <EstablishedConversationModel>(); if (authorizer.EnsureLifespan(apiResponse) == false) { return(apiResponse); } var client = new RestClient(_hostUrl); var restRequest = new RestRequest("/api/v1/conversations/establish", Method.POST) { Timeout = 20000 }; restRequest.AddHeader("Content-Type", "application/json"); restRequest.AddHeader("Authorization", $"{authorizer.Token.TokenType} {authorizer.Token.AccessToken}"); restRequest.AddHeader("Origin", _origin); var body = JsonConvert.SerializeObject(request); restRequest.AddParameter("application/json", body, ParameterType.RequestBody); var restResponse = client.Execute(restRequest); apiResponse = ExtractResponse <EstablishedConversationModel>(restResponse); return(apiResponse); }