dss 2 년 전
부모
커밋
ac52c3d256

+ 1 - 2
src/CallCenter.Application/Handlers/FlowControl/ByeExtAndOuterOneNotificationHandler.cs

@@ -53,8 +53,7 @@ namespace CallCenter.Application.Handlers
                 {
                     await _realtimeService.ByeAsync(workModel.UserId, new ByeDto() { Id = model.Id }, cancellationToken);
                 }
-                //TODO 推送呼出记录
-
+                
             }
         }
     }

+ 0 - 2
src/CallCenter.Application/Handlers/FlowControl/ByeExtAndOuterTwoNotificationHandler.cs

@@ -51,8 +51,6 @@ namespace CallCenter.Application.Handlers
                 {
                     await _realtimeService.ByeAsync(workModel.UserId, new ByeDto() { Id = model.Id }, cancellationToken);
                 }
-                //TODO 推送呼出记录
-
             }
         }
     }

+ 11 - 6
src/CallCenter.Application/Handlers/FlowControl/CdrNotificationHandler.cs

@@ -5,8 +5,9 @@ using CallCenter.Share.Enums;
 using MediatR;
 using Microsoft.Extensions.Options;
 using NewRock.Sdk.Extensions;
-using Newtonsoft.Json;
 using System.Text;
+using System.Text.Json;
+using XF.Domain.Exceptions;
 
 namespace CallCenter.Application.Handlers
 {
@@ -100,25 +101,29 @@ namespace CallCenter.Application.Handlers
                     callDto.InSeaTime = call.InSeaTime;
                     callDto.ConnSeaTime = call.ConnSeaTime;
 
-
+                    var list = new List<OutCallDto>();
+                    list.Add(callDto);
                     try
                     {
                         var client = _httpClientFactory.CreateClient();
                         client.DefaultRequestHeaders.ConnectionClose = true;
-                        var requestContent = JsonConvert.ToString(callDto);
-                        var content = new StringContent(requestContent, Encoding.UTF8, "application/json");
+                        var requestContent = JsonSerializer.Serialize(list);
+                        
+                        var content = new StringContent(requestContent,Encoding.UTF8, "application/json");
 
                         var responseMessage = await client.PostAsync(_sendCallRecordOptions.Value.FwUrl, content, cancellationToken);
                         var respContent = responseMessage.Content;
                         var respContentString = await respContent.ReadAsStringAsync(cancellationToken);
-                        var result = respContentString.Deserialize<FwResult>();
+                        var result = JsonSerializer.Deserialize<FwResult>(respContentString);
                         //成功
                         if (result.code == 1)
                         {
 
                         }
                     }
-                    catch {}
+                    catch (Exception ex){
+                        throw new UserFriendlyException(ex.Message);
+                    }
                     //HttpContent content = new 
                 }