qiuzijian 4 rokov pred
rodič
commit
c1ccfe15ed

+ 89 - 53
.idea/workspace.xml

@@ -2,11 +2,7 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="b5beace6-e4f4-419b-8299-c67e17af5998" name="Default Changelist" comment="">
-      <change afterPath="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/web.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
@@ -29,6 +25,18 @@
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="411">
+              <caret line="276" column="50" lean-forward="true" selection-start-line="276" selection-start-column="8" selection-end-line="276" selection-end-column="50" />
+              <folding>
+                <element signature="e#51#107#0#PHP" expanded="true" />
+              </folding>
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php">
           <provider selected="true" editor-type-id="text-editor">
             <state relative-caret-position="435">
@@ -55,8 +63,8 @@
       <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/app/Http/Controllers/TestsController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="420">
-              <caret line="25" column="44" selection-start-line="25" selection-start-column="44" selection-end-line="25" selection-end-column="44" />
+            <state relative-caret-position="508">
+              <caret line="38" column="48" selection-start-line="38" selection-start-column="48" selection-end-line="38" selection-end-column="48" />
               <folding>
                 <element signature="e#126#164#0#PHP" expanded="true" />
               </folding>
@@ -65,10 +73,31 @@
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraDownload.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="592">
+              <caret line="35" column="25" selection-start-line="35" selection-start-column="25" selection-end-line="35" selection-end-column="25" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="294">
+              <caret line="14" column="15" lean-forward="true" selection-start-line="14" selection-start-column="15" selection-end-line="14" selection-end-column="15" />
+              <folding>
+                <element signature="e#39#68#0#PHP" expanded="true" />
+              </folding>
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="214">
-              <caret line="141" column="40" selection-start-line="141" selection-start-column="32" selection-end-line="141" selection-end-column="40" />
+            <state relative-caret-position="463">
+              <caret line="148" column="40" lean-forward="true" selection-start-line="148" selection-start-column="40" selection-end-line="148" selection-end-column="40" />
               <folding>
                 <element signature="e#141#185#0#PHP" expanded="true" />
               </folding>
@@ -89,8 +118,6 @@
   </component>
   <component name="FindInProjectRecents">
     <findStrings>
-      <find>-&gt;uploadFiles</find>
-      <find>$uploadURLPath</find>
       <find>menu</find>
       <find>菜单标识</find>
       <find>layui.extend</find>
@@ -119,6 +146,8 @@
       <find>strtolow</find>
       <find>MeiKuang</find>
       <find>/api/resource/v1/encodeDevice/search</find>
+      <find>mkdir</find>
+      <find>redis</find>
     </findStrings>
   </component>
   <component name="Git.Settings">
@@ -127,7 +156,6 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/Modules/Admin/Enum/UserEnum.php" />
         <option value="$PROJECT_DIR$/Modules/Admin/Services/UsersService.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Database/Migrations/2021_04_20_071702_create_camera_field_list.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Entities/CameraList.php" />
@@ -177,6 +205,7 @@
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" />
         <option value="$PROJECT_DIR$/routes/web.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Jobs/CameraDownload.php" />
         <option value="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" />
       </list>
     </option>
@@ -390,6 +419,13 @@
               <item name="video_system" type="462c0819:PsiDirectoryNode" />
               <item name="Modules" type="462c0819:PsiDirectoryNode" />
               <item name="Camera" type="462c0819:PsiDirectoryNode" />
+              <item name="Jobs" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="video_system" type="b2602c69:ProjectViewProjectNode" />
+              <item name="video_system" type="462c0819:PsiDirectoryNode" />
+              <item name="Modules" type="462c0819:PsiDirectoryNode" />
+              <item name="Camera" type="462c0819:PsiDirectoryNode" />
               <item name="Routes" type="462c0819:PsiDirectoryNode" />
             </path>
             <path>
@@ -479,12 +515,12 @@
       <updated>1618368322468</updated>
       <workItem from="1618368323697" duration="143000" />
       <workItem from="1618368497550" duration="219162000" />
-      <workItem from="1621301484015" duration="6554000" />
+      <workItem from="1621301484015" duration="9174000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="225859000" />
+    <option name="totallyTimeSpent" value="228479000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="0" y="0" width="1440" height="900" extended-state="0" />
@@ -515,13 +551,6 @@
     <option name="version" value="1" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="260">
-          <caret line="20" column="28" selection-start-line="20" selection-start-column="28" selection-end-line="20" selection-end-column="28" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/vendor/laravel/framework/src/Illuminate/Queue/Listener.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="269">
@@ -743,16 +772,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="422">
-          <caret line="134" column="48" selection-start-line="134" selection-start-column="48" selection-end-line="134" selection-end-column="48" />
-          <folding>
-            <element signature="e#39#68#0#PHP" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/storage/logs/laravel-2021-05-11.log">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
@@ -790,16 +809,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="492">
-          <caret line="67" column="116" lean-forward="true" selection-start-line="67" selection-start-column="47" selection-end-line="67" selection-end-column="116" />
-          <folding>
-            <element signature="e#51#107#0#PHP" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Mine/Http/Controllers/Api/MineApiController.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="109">
@@ -824,6 +833,36 @@
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="435">
+          <caret line="34" column="23" lean-forward="true" selection-start-line="34" selection-start-column="23" selection-end-line="34" selection-end-column="23" />
+          <folding>
+            <element signature="e#141#162#0#PHP" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="463">
+          <caret line="148" column="40" lean-forward="true" selection-start-line="148" selection-start-column="40" selection-end-line="148" selection-end-column="40" />
+          <folding>
+            <element signature="e#141#185#0#PHP" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="294">
+          <caret line="14" column="15" lean-forward="true" selection-start-line="14" selection-start-column="15" selection-end-line="14" selection-end-column="15" />
+          <folding>
+            <element signature="e#39#68#0#PHP" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="553">
@@ -834,30 +873,27 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="435">
-          <caret line="34" column="23" lean-forward="true" selection-start-line="34" selection-start-column="23" selection-end-line="34" selection-end-column="23" />
+        <state relative-caret-position="411">
+          <caret line="276" column="50" lean-forward="true" selection-start-line="276" selection-start-column="8" selection-end-line="276" selection-end-column="50" />
           <folding>
-            <element signature="e#141#162#0#PHP" expanded="true" />
+            <element signature="e#51#107#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraDownload.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="214">
-          <caret line="141" column="40" selection-start-line="141" selection-start-column="32" selection-end-line="141" selection-end-column="40" />
-          <folding>
-            <element signature="e#141#185#0#PHP" expanded="true" />
-          </folding>
+        <state relative-caret-position="592">
+          <caret line="35" column="25" selection-start-line="35" selection-start-column="25" selection-end-line="35" selection-end-column="25" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/app/Http/Controllers/TestsController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="420">
-          <caret line="25" column="44" selection-start-line="25" selection-start-column="44" selection-end-line="25" selection-end-column="44" />
+        <state relative-caret-position="508">
+          <caret line="38" column="48" selection-start-line="38" selection-start-column="48" selection-end-line="38" selection-end-column="48" />
           <folding>
             <element signature="e#126#164#0#PHP" expanded="true" />
           </folding>

+ 38 - 0
Modules/Camera/Jobs/CameraDownload.php

@@ -0,0 +1,38 @@
+<?php
+
+namespace Modules\Camera\Jobs;
+
+use Illuminate\Bus\Queueable;
+use Illuminate\Queue\SerializesModels;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Contracts\Queue\ShouldQueue;
+use Illuminate\Foundation\Bus\Dispatchable;
+use Illuminate\Support\Facades\Log;
+
+class CameraDownload implements ShouldQueue
+{
+    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
+
+    protected $exceData;
+
+    /**
+     * Create a new job instance.
+     *
+     * @return void
+     */
+    public function __construct(string $exec)
+    {
+        $this->exceData = $exec;
+    }
+
+    /**
+     * Execute the job.
+     *
+     * @return void
+     */
+    public function handle()
+    {
+        $result = exec($this->exceData);
+        Log::info($result);
+    }
+}

+ 14 - 2
app/Http/Controllers/TestsController.php

@@ -12,6 +12,7 @@ use Illuminate\Support\Facades\Config;
 use Illuminate\Support\Facades\Input;
 use Illuminate\Support\Facades\Redis;
 use Modules\Camera\Http\Controllers\Api\HaiKangController;
+use Modules\Camera\Jobs\CameraDownload;
 
 class TestsController {
 
@@ -22,12 +23,23 @@ class TestsController {
                 'url'             => 'https://10.71.252.64:4433',
                 'key'             => '25720460',
                 'secret'          => 'qqP7NLcIDwO9MgtYmp8L',
-                'cameraIndexCode' => 'b581a1f0a7dd47be9e4fb7a8983fa77d',
+                'cameraIndexCode' => 'a73931afd8bd4d1aba883699d65793d2',
                 'protocol'        => 'rtmp',
             ]
         );
         $haikang   = new HaiKangController();
         $result_hk = $haikang->getCamerasUrl();
-        dd($result_hk);
+        $arr = explode('/', $result_hk['data']['url']);
+        $path = end($arr);
+//        echo $result_hk['data']['url'];
+        mkdir('/home/video_system/public/files/video/m3u8/' . $path, 0777, true);
+        $exec = '/usr/bin/ffmpeg -i ' . $result_hk['data']['url'] . ' -vcodec copy -acodec copy -vbsf h264_mp4toannexb -f hls -hls_flags delete_segments -segment_list_size 10 -hls_list_size 2 /home/video_system/public/files/video/m3u8/' . $path . '/out.m3u8';
+        echo $exec;
+        echo '<br/>';
+        $result = CameraDownload::dispatch($exec);
+        echo '<br/>';
+        echo '--------';
+        echo $result;
+        dd(111);
     }
 }