EasyDarwin服務部署與整合(HLS/CMS/RMS/Android客戶端)---(2)
部署EasyRMS
EasyRMS伺服器是用來完成在伺服器端的錄影保存於查詢。部署EasyRMS伺服器與部署EasyDarwin伺服器比較類似。
1 下載並上傳EasyRMS原始碼
2 編譯、部署
3 配置和執行
4 如何使用
1 下載並上傳EasyRMS原始碼
最新的EasyRMS伺服器程式碼可在https://github.com/EasyDarwin/EasyRMS上面下載,下載之後得到EasyRMS-master.zip,將檔案通過ftp工具上傳到伺服器上面。這裡我們上傳到/home資料夾下面。
2編譯、部署
用SSH工具,登陸遠端伺服器,執行以下命令
Cd /home
Unzip –o EasyRMS-master.zip
Cd EasyRMS-master/EasyRMS/
Chmod +x ./Buildit
./Buildit x64
經過之前安裝EasyDarwin伺服器,這些命令應該可以順利執行。
3配置和執行EasyRMS伺服器。
在安裝成功之後,我們需要先配置EasyRMS伺服器,配置檔案在WinNtSupport目錄下。主要的配置項為:
monitor_lan_port:EasyRMS內網服務埠
monitor_wan_port:EasyRMS公網服務埠
HTTP_ROOT_DIR 錄影訪問網址根目錄
record_duration:單個m3u8的錄影時長(單位分鐘),也就是單個錄影段落的時間,體現在儲存中的形式就是單個錄影資料夾最大錄影時長;
local_record_path:本地儲存的目錄(record_to_where配置為本地儲存時有效)
record_to_where:儲存方式,0-阿里雲OSS雲端儲存,1-本地儲存
oss_endpoint:阿里雲OSS服務地址(record_to_where配置為OSS儲存時有效)
oss_port:阿里雲OSS服務埠,預設為80(record_to_where配置為OSS儲存時有效)
oss_bucket_name:阿里雲OSS Bucket名稱(record_to_where配置為OSS儲存時有效)
oss_access_key_id:阿里雲提供的OSS登陸id(record_to_where配置為OSS儲存時有效)
oss_access_key_secret:阿里雲提供的OSS登陸金鑰(record_to_where配置為OSS儲存時有效)
以上配置項修改完成之後,可執行啟動命令來啟動伺服器。先進入x64目錄,有兩種啟動方式:
除錯模式:
./easydarwin –c ../ WinNtSupport/easydarwin.xml–d
此模式啟動之後可以看到控制檯列印的資訊。
後臺模式:
./easydarwin –c /home/EasyDarwin-master/EasyDarwin/WinNtSupport/easydarwin.xml &;
注意這種模式下的配置檔案目錄必須用絕對路徑。
4 如何使用
由於我測試的時候使用的是本地儲存的方式,因此只討論在本地儲存的時候如何使用。
首先看我的配置:
伺服器IP假設為:101.202.34.56
RTSP埠:554
monitor_wan_port:10000
HTTP_ROOT_DIR: http:// 101.202.34.56:81
local_record_path:/home/rec
record_to_where:1
根據以上配置,可以完成RMS提供的三個API呼叫。
啟動錄影:
http://101.202.34.56:10000/api/easyrecordmodule?name=123&;url=rtsp://101.202.34.56:554/123.dsp。
啟動錄影:
http://101.202.34.56:10000/api/easyrecordmodule?name=123&;cmd=stop
錄影列表
http://101.202.34.56:10000/api/easyrecordmodule?name=123&;cmd=list&;begin=20160101000000&;end=20160501000000
在列表返回的結果中,會得到錄影的URL為HTTP_ROOT_DIR+ local_record_path +name+時間+name.m3u8,比如:
http://101.202.34.56:81/home/rec/123/201605010000000/123.m3u8。
通過瀏覽器輸入以上地址呼叫可以觸發RMS錄影的保存於查詢。請求之後均有json返回結果,也可以在安卓客戶端封裝成介面呼叫。
有什麼問題,可以加Q討論:375092160,註明:easydarwin
