lh 2 dienas atpakaļ
vecāks
revīzija
1a937621e4
1 mainītis faili ar 18 papildinājumiem un 24 dzēšanām
  1. 18 24
      app/Services/DeepSeek/DeepSeekService.php

+ 18 - 24
app/Services/DeepSeek/DeepSeekService.php

@@ -9,6 +9,7 @@ use GuzzleHttp\Client;
 use DateTime;
 use DateTimeZone;
 use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Log;
 use Illuminate\Support\Facades\Redis;
 use OSS\Core\OssException;
 use OSS\OssClient;
@@ -139,18 +140,18 @@ class DeepSeekService
 
         if ($boolen) {
             $boolen = false;
-            $client = new Client(['timeout' => 30, 'verify' => false]);
+            $client = new Client(['timeout' => 120, 'verify' => false]);
             // 根据ID通过API通知合成音频
-            for ($i=0;$i<3;$i++) {
-                $result = $client->get("http://47.240.171.155:5000/api/previewTask?taskId={$id}");
-                $response = $result->getBody()->getContents();
-                $response_arr = json_decode($response, true);
-                if (isset($response_arr['code']) && (int)$response_arr['code'] === 0) {
-                    $boolen = true;
-                    break;
-                }
-                sleep(1);
+            $result = $client->get("http://47.240.171.155:5000/api/previewTask?taskId={$id}");
+            $response = $result->getBody()->getContents();
+            $response_arr = json_decode($response, true);
+            if (!isset($response_arr['code']) || (int)$response_arr['code'] !== 0) {
+                DB::rollBack();
+                $error_msg = isset($response_arr['msg']) ? $response_arr['msg'] : '未知错误';
+                Log::info('通知火山生成音频失败: '.$error_msg);
+                Utils::throwError('20003:通知火山生成音频失败');
             }
+            $boolen = true;
         }
         
         if ($boolen) {
@@ -301,22 +302,15 @@ class DeepSeekService
             }
 
             // 通知火山生成音频
-            $boolen4 = false;
-            $client = new Client(['timeout' => 30, 'verify' => false]);
+            $client = new Client(['timeout' => 120, 'verify' => false]);
             // 根据ID通过API通知合成音频
-            for ($i=0;$i<3;$i++) {
-                $result = $client->get("http://47.240.171.155:5000/api/chapterTask?taskId={$id}");
-                $response = $result->getBody()->getContents();
-                $response_arr = json_decode($response, true);
-                if (isset($response_arr['code']) && (int)$response_arr['code'] === 0) {
-                    $boolen4 = true;
-                    break;
-                }
-                sleep(1);
-            }
-
-            if (!$boolen4) {
+            $result = $client->get("http://47.240.171.155:5000/api/chapterTask?taskId={$id}");
+            $response = $result->getBody()->getContents();
+            $response_arr = json_decode($response, true);
+            if (!isset($response_arr['code']) || (int)$response_arr['code'] !== 0) {
                 DB::rollBack();
+                $error_msg = isset($response_arr['msg']) ? $response_arr['msg'] : '未知错误';
+                Log::info('通知火山生成音频失败: '.$error_msg);
                 Utils::throwError('20003:通知火山生成音频失败');
             }