public async Task PostSendKey([FromBody] EFTSendKeyRequest key) { if (key == null) { return; } var url = appSettings.Server + $"sessions/{key.SessionId}/sendkey"; var request = new ApiRequest <EFTSendKeyRequest>() { Request = new EFTSendKeyRequest() { Data = key.Data, Key = key.Key, PosName = appSettings.PosName, PosVersion = appSettings.PosVersion }, Notification = new Notification { Uri = appSettings.NotificationUri } }; if (string.IsNullOrEmpty(token)) { token = GetToken().Result?.Token; } var apiClient = clients.GetAPIClient(); apiClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); apiClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token); HttpContent content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json"); var response = await apiClient.PostAsync(url, content); if (response.IsSuccessStatusCode) { return; } }
private async void _proxyVM_OnSendKey(object sender, EFTSendKeyRequest e) { await _eftw.SendKey(e.Key, e.Data); }
///// <summary>Initiate a PaymentTerminal duplicate receipt request.</summary> ///// <param name="request">An <see cref="EFTReprintReceiptRequest" /> object.</param> ///// <returns>FALSE if an error occured.</returns> //public bool DoDuplicateReceipt(EFTReprintReceiptRequest request) //{ // return DoRequest(request); //} /// <summary>Send a key to PaymentTerminal.</summary> /// <param name="request">An <see cref="EFTSendKeyRequest" />.</param> /// <returns>FALSE if an error occured.</returns> public bool DoSendKey(EFTSendKeyRequest request) { return(DoRequest(request)); }
public void SendKeyFunc(EFTSendKeyRequest key) { OnSendKey?.Invoke(this, key); }