|
@@ -19,36 +19,22 @@ namespace Hotline.Ai.XingTang
|
|
|
}
|
|
|
|
|
|
public async Task CreateAiOrderQualityTask(
|
|
|
- string id,
|
|
|
- string audioFile,
|
|
|
- string fromNo,
|
|
|
- DateTime? callStartTime,
|
|
|
- string viteRecordPrefix,
|
|
|
- string ywlxString,
|
|
|
- CancellationToken cancellationToken)
|
|
|
+ string id,
|
|
|
+ string audioFile,
|
|
|
+ string fromNo,
|
|
|
+ DateTime? callStartTime,
|
|
|
+ string viteRecordPrefix,
|
|
|
+ string ywlxString,
|
|
|
+ CancellationToken cancellationToken)
|
|
|
+ {
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public async Task CreateAiOrderQualityTask(string filename, CancellationToken cancellationToken)
|
|
|
{
|
|
|
- if (string.IsNullOrEmpty(audioFile)) return;
|
|
|
- var fileExtension = Path.GetExtension(audioFile);
|
|
|
- if (!string.IsNullOrEmpty(fileExtension) && fileExtension.StartsWith('.'))
|
|
|
- fileExtension = fileExtension.Substring(1);
|
|
|
- //var ywlx = !string.IsNullOrEmpty(ywlxString) ? ywlxString : model.Source.ToString();
|
|
|
- var agentChannel = "AiAnswered".Equals(ywlxString) ? "2" : "3";
|
|
|
- List <AiQualityDto> datalist = new List<AiQualityDto>();
|
|
|
- AiQualityDto aiQuality = new AiQualityDto
|
|
|
- {
|
|
|
- RecordID = id,
|
|
|
- RecordPath = viteRecordPrefix + audioFile,
|
|
|
- AgentID = "1001",
|
|
|
- CallNumber = fromNo,
|
|
|
- CallTime = callStartTime?.ToString("yyyy-MM-dd HH:mm:ss") ?? string.Empty,
|
|
|
- RecordForm = fileExtension,//recordForm,
|
|
|
- ywlx = ywlxString,
|
|
|
- AgentChannel = agentChannel
|
|
|
- };
|
|
|
- datalist.Add(aiQuality);
|
|
|
- var data = Newtonsoft.Json.JsonConvert.SerializeObject(datalist);
|
|
|
- var baseUrl = new Uri(_baseUrl);
|
|
|
- await ExecuteAsync(baseUrl.ToString() + "routeinfo/api", Method.Post, data, cancellationToken);
|
|
|
+ var url = _baseUrl + "/offlinerecog?filename=" + filename;
|
|
|
+ var baseUrl = new Uri(url);
|
|
|
+ await ExecuteAsync(baseUrl.ToString(), Method.Get, "", cancellationToken);
|
|
|
}
|
|
|
|
|
|
public async Task<ApiResponse<TResponse>> ExecuteAsync<TRequest, TResponse>(string path, Method httpMethod,
|
|
@@ -81,21 +67,15 @@ namespace Hotline.Ai.XingTang
|
|
|
where TRequest : class
|
|
|
{
|
|
|
var req = new RestRequest(path, httpMethod);
|
|
|
- req.AddHeader("content-type", "application/json");
|
|
|
- req.AddHeader("token", "");
|
|
|
- req.AddHeader("version", "V1.0");
|
|
|
- var sign = MD5Encrypt(request.ToString());
|
|
|
- req.AddHeader("sign", sign);
|
|
|
- req.AddHeader("signType", "md5");
|
|
|
- req.AddHeader("appkey", "MTAwMDAx");
|
|
|
- if (httpMethod is Method.Get)
|
|
|
- {
|
|
|
- req.AddObject(request);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- req.AddJsonBody(request);
|
|
|
- }
|
|
|
+ req.Timeout = new TimeSpan(0,30,0);
|
|
|
+ //if (httpMethod is Method.Get)
|
|
|
+ //{
|
|
|
+ // req.AddObject(request);
|
|
|
+ //}
|
|
|
+ //else
|
|
|
+ //{
|
|
|
+ // req.AddJsonBody(request);
|
|
|
+ //}
|
|
|
|
|
|
try
|
|
|
{
|