Promise改寫獲取螢石雲攝像頭直播位址的介面

2021-09-30 01:46:17 字數 1955 閱讀 5923

需求明確之後,有兩種方案可供選擇。

let serial, channelno;

/** * 向伺服器查詢攝像頭直播鏈結

* * @param cameraid 攝像頭id

* @param perspective 是否允許檢視其他使用者的攝像頭

* * 伺服器首先查詢資料庫直播鏈結快取

* ------如果資料庫有快取,則伺服器將直接返回camerabean的資訊

* ------如果沒有快取,則查詢當前使用者的accesstoken

* ------------如果資料庫儲存有accesstoken,則返回accesstoken

*/function step1

(cameraid, perspective)

else},

error: function (e)})

;})}

/** * 接收step1返回的結果,判斷結果型別

* ------如果是camera物件或者是accesstoken,則直接攜帶該資料進入step3

*/function step2

(data)

elseif,

datatype:

"json"

, success: function (data)},

error: function (e)})

;}})

;}/** * 接收step2返回的資料,camera或accesstoken

* ------如果是camera物件,則直接返回

* ------如果是accesstoken,則呼叫開放平台介面,查詢直播鏈結,並上傳至伺服器儲存

*/function step3

(data)

return

newpromise

((resolve, reject)

=>

, datatype:

"json"

, success: function (data)

for(let i =

0; i < addressdata.length; i++);

// console.log("獲取了直播鏈結");

// console.log(argobject);

resolve

(argobject)

;uploadys7cameraaddress

(argobject)

;break;}

}}, error: function (e)})

;});

}/**

* 獲取攝像頭直播鏈結呼叫介面

* @param cameraid 攝像頭id

* @param perspective 是否允許當前使用者檢視其他使用者的攝像頭

*/function getcameraaddress

(cameraid, perspective)

/** * 將accesstoken上傳至伺服器儲存

*/function uploadaccesstoken

(accesstoken, expiretime, cameratype)

, datatype:

"json",}

);}/**

* 將得到的攝像頭鏈結上傳至伺服器儲存

*/function uploadys7cameraaddress

(args));

}

之後前端呼叫攝像頭的介面只需要編寫如下**就可以了

getcameraaddress

(cameraid,0)

.then

(data =

>

//獲得鏈結之後的正常操作流程..

.});

海康攝像頭與螢石雲web整合記錄

公司的專案要整合海康的攝像頭。我相信大多數整合攝像頭的情況也就是在自己的專案頁面中嵌入攝像頭的監控畫面或者基本功能,如果太複雜的業務場景海康也給出了不少的平台方案。現在就說整合最基本,更複雜的業務邏輯還請非同步官網 第一,海康攝像頭拿到手以後需要在電腦上先啟用,通過網線連線電腦,保持攝像頭和電腦在同...

基於雲架構監控攝像頭直播運營簡介

1.為使用者搭建專業雲 監控直播運營服務平台,可選自建和租用 2.實現海康 大華 宇視 雄邁 中維 天地偉業 亞安 安訊士 派爾高 三星等廠商監控攝像頭無控制項實時直播呼叫支援 3.實現安卓 ios蘋果 windows等作業系統無控制項直播支援 4.提供完整例項給使用者,提供完整直播呼叫 提供技術支...

小公尺小方攝像頭雲儲存 小公尺攝像頭離線?

大方攝只能攝像機 1080p雲台版 與小方智慧型攝像機問題分析 下面我將用大方 小方稱呼上述裝置 你們是不是為了不定期離線煩惱?你們是不是斷電重啟後過幾天又不行?你們是不是用disk tf卡經常燒?你們是不是格式化有些時候會失敗?你們是不是有些時候攝像頭會傻掉?版本號大方 5.5.1.287 小方 ...