1. 程式人生 > >上屏系統-接口規範-ALL In One

上屏系統-接口規範-ALL In One

api

1.概述

1.1.用途及閱讀方法

上屏API是上屏系統的後臺接口,管理平臺界面實現需要遵循本接口規範。

1.2.通信協議

客戶端和服務器通過HTTP協議通信,客戶端使用HTTP GET方法或POST方法向服務器發送請求,服務器返回json格式的業務數據或操作結果給客戶端。
盡管接口同時支持GET和POST方法,建議查詢數據時使用GET方法,修改和添加數據時使用POST方法。

1.4.接口請求

接口的請求地址是個URL地址,每個接口URL地址都包括接口位置和請求參數,例如:

http://ip/res/?action=get&token=123456  

其中:
http://ip/res/ 是接口請求的URL位置,“ip”在實際請求中要替換成服務器的ip地址或域名。

符號?後面是參數列表,以name=value的形式體現。
其中:
action參數是在所有接口中都要有的,該參數表明了請求業務的類型。
token參數提供一個安全認證符號給服務器,服務器用token來驗證客戶端的合法性,除了登錄驗證接口之外,其他接口都需要token參數。
所有參數都可以采用GETPOST方法提交。
在使用ajax做POST提交時,應當在接口位置結尾加上反斜杠"/",以免參數提交失敗。如:http://ip/res/
有關URL地址的編碼規範,請參考HTTP 1.1規範。

1.5.接口響應

服務器在收到接口請求後,首先判斷token的正確性,如果token錯誤,則返回認證錯誤的消息給客戶端。如果token

正確,服務器返回json格式的文本內容給客戶端。返回給客戶端的json文本描述了服務器對請求的處理結果和響應數據。

1.6.接口安全

客戶端必須首先通過身份認證才能繼續調用接口,在一個“挑戰—>應答”模式的身份認證過程中完成身份認證,認證通過後,服務器為客戶端分配一個臨時令牌token,在後續的請求中,token作為一項必選參數提供,服務器通過token識別用戶身份和驗證請求的合法性。
在沒有接口調用時,token的有效期為30分鐘,之後客戶端再調用接口時必須重新進行身份認證,獲取新的token
為了確保一定的安全性,客戶端應妥善保存token值。

1.7.URL編碼

當URL請求參數值中包含URL地址保留字符時,應對參數值進行URL編碼。

具體參見“RFC2396: Uniform Resource Identifiers (URI): Generic Syntax”。
當請求參數包含中文字符時,應對中文字符采用UTF-8編碼。

1.8.描述約定

本文檔在描述接口的URL地址時,如果沒有特殊說明,會省略掉URL前面的相同部分。
例如,
http://ip/res/?action=get&token=123456 簡化為 res/?action=get&token=123456,或者按如下方式描述:
接口: res
參數: action=get&token=123456
在描述參數時,省略token參數的描述,在示例中也會省略。在實際調用中必須把token參數加上。
在對參數進行描述時,用【必選】表示該參數必須提供,【保留】表示該參數可以接受但尚未被使用。

1.9.返回消息結構

返回的json消息數據結構具有嚴格的一致性,客戶端可以采用一致的接收和解析方式處理返回消息。
簡單消息
簡單的返回消息包含對請求的處理結果,結構如下:

{
    "code":0,
    "err_desc":""
}

其中:
code 為 0 表示處理成功,其它值表示處理失敗。
err_desc是對錯誤的描述,在code為0時err_desc會被省略。
特殊情況,在用戶認證的login1和login2接口中,err_desc具有特殊用途用法,具體參見接口描述。除這兩個接口之外,err_desc都表示錯誤描述。

帶業務數據的消息
有的返回消息除了包含處理結果信息,還包含業務數據記錄集,結構如下:

 {
        "code":0,
        "data":{
            "count":1,
            "items":[{
            "_id": "abcdef",
                        "server":"g3",
            "ip":"127.0.0.1",
            }]
        }            
    }

其中:
data 業務數據的根節點:
count 業務數據的條數,可能的值為0 ~ n
items 業務數據,是一個數組,數據條數由count屬性定義。當count為0時,items屬性可能為null或者不存在。
本文檔後續章節中,在描述items元素的屬性時,會省略一些屬性的描述,即實際調用接口返回的屬性在本文檔中可能會沒有描述,這種情況下請直接忽略被忽略描述的屬性值。本文檔中描述的屬性是實際返回內容的一個子集,沒有描述到的內容對集成本系統沒有影響。

帶分頁數據的消息
如果返回數據較多,服務器會對返回的數據進行分頁,客戶端可以按照頁碼請求指定範圍的數據。帶分頁信息的返回數據結構如下:

    {
    "code":0,
    "data":{
        "page":1,
        "page_size":"20",
        "pages":"1",
        "total":"2",
        "count":2,
        "items":[...]
                }
}

分頁數據信息在data元素下,意義如下:
page 當前頁碼
page_size 每頁數據記錄條數
pages 總共的頁數
total 總數據條數
count 當前返回頁的數據條數
如果返回的數據帶有分頁信息,則可以在調用接口時使用page參數來請求指定頁碼的數據。

1.10.主鍵和公共屬性

接口返回的業務對象(資源、用戶、設備等)數據,都包含一個_id屬性,具有全局唯一性,是數據表的主鍵。在請求更新、刪除接口時,需要傳入對象的_id屬性。接口要求在傳入主鍵時使用id作為傳入屬性名。具體見接口定義部分。
所有業務對象都具備如下公共屬性:
_id 主鍵,一個32位的字符串
ctime 創建時間,UNIX時間戳
mtime 修改時間,UNIX時間戳
state 狀態
狀態值:整數 1=正常,2=禁用

1.11.參考

[1] RFC 2616, Hypertext Transfer Protocol -- HTTP/1.1[S].
[2] RFC 3986, Uniform Resource Identifier (URI): Generic Syntax[S].
[3] http://www.json.org/ Introducing JSON


2.註冊用戶

註冊一個新用戶。
註冊完成的用戶是否可以登錄和管理系統,由後臺邏輯約定。

2.1.註冊新用戶

  • 用途
    註冊新用戶。
  • 接口
    user/?action=regedit

    參數:

    name=姓名&pwd=123&[email protected]&phone=13888888888&addr=北京

    name 姓名
    email 郵件地址,系統要求使用註冊的郵件地址作為登錄服務器的用戶名。
    pwd 用戶密碼,用於登錄系統
    phone 聯系電話
    addr 聯系地址

  • 響應
    {
    "code":0,
    "err_desc":""
    }

3.登錄認證

客戶端調用流媒體服務器接口,首先要做的是身份認證,認證通過後才可以調用流媒體服務器的接口。
服務器和客戶端通過“挑戰->應答”方式(challenge-response)進行身份認證交互,在這個過程中,客戶端需要調用兩次接口向服務器證明身份。認證過程中不需要傳遞密碼,密碼用於簽名驗證。
身份認證的過如下:
1)客戶端使用“用戶名”作為參數調用“login1”接口,向服務器發出身份認證請求
1.1)服務器確認用戶是否是有效的用戶:
1.2)若不是,則不做進一步處理,返回錯誤信息
1.3)若是,服務器產生一個“隨機數(挑戰字符串)”發送給客戶端
2)客戶端使用“用戶密碼”和“隨機數(挑戰字符串)”作為輸入,按約定的算法生成一個hash值,用該hash值作為 調用“login2”接口的參數,請求login2接口。
2.1)服務器用收到的hash值與自己的計算結果比較,若二者相同,則通過認證;否則,認證失敗
2.2)若認證通過,服務器返回“token”給客戶端,否者返回錯誤信息。

3.1.login1接口

  • 用途
    客戶端向服務器申請進行身份認證,服務器返回“挑戰字符串”給客戶端。
  • 請求
    user/?action=login1&[email protected]

    email 使用註冊的郵件地址作為登錄服務器的用戶名。

  • 響應
    {
    "code": 0,
    "data": {
        "count": 1,
        "items": [
                                    {
                                        "id": "5ad55392e1382313ff021c3b",
                                        "chcode": "pum0odo40qu1tts5"
                                    }
                        ]
    }
    }

    code 等於0,表示用戶有效,items段返回挑戰數據:
    ?id 挑戰識別編號,原樣帶入login2接口;
    ?chcode 挑戰字符串。
    code 不等於0,其他值表示錯誤,此時 err_desc 的內容是錯誤描述。

3.2.login2接口

  • 用途
    對login1接口返回“挑戰字符串”進行hash運算,將運算結果提交給服務器,進行身份合法性認證。
  • 請求
    user/?action=login2&id=id&hash=8c96202be3da1b23a96c4c838eb34d93

    id 由接口login1返回,原樣帶入。
    hash是使用用戶密碼和挑戰字符串作為輸入計算出的md5摘要值(hash),算法如下:

    hash=md5(md5(password)+challenge_code)

    算法描述:首先計算出密碼的hash值,然後在生成的密碼hash值尾部拼接上挑戰字符串形成新的字符串,最後計算這個新字符串的hash值。
    hash算法采用md5算法,生成的摘要采用16進制編碼,編碼生成的字符采用小寫字母。
    例如,字符串111111的hash值是 96e79218965eb72c92a549dd5a330112

  • 響應
    code >0 其他值表示錯誤,此時 err_desc 的內容是錯誤描述。
    code 0 表示登錄成功,在data數據段返回token和用戶信息。
{
    "code": 0,
    "data": {
        "count": 1,
        "items": [
            {
                "_id": "5ad4594fe1382314030eabb2",
                "name": "王見",
                "email": "[email protected]",
                "root": "5ad4594fe1382314030eabb2",
                "phone": "13888888888",
                "addr": "北京",
                "token": "6df901hvwqj4rqsj"
            }
        ]
    }
}

_id 用戶編號
name 用戶名
email 郵件地址
phone 聯系電話
addr 地址
token 認證令牌,用於請求後續接口
root 文檔根目錄的id,用於請求用戶資源

3.3.logout接口

  • 用途
    退出登錄,服務器銷毀用戶登錄信息,作廢“token”。
    建議客戶端在退出系統時總是調用該接口。
  • 請求
    user/?action=logout&token=vvkphp5ca79c538n
  • 響應
    {
    "code":0,
    }

4.添加和更新資源

4.1.添加圖片資源

  • 用途
    向目錄中添加一個資源。

  • 請求
    res/?action=addImage
    參數:

    parent=5accb333e1382314030eaba2&name=我的圖片&img_url=&img_small=

    parent 目錄編號,必選,指明向哪個目錄添加資源。
    name 資源名稱。
    img_url 圖片資源的URL地址。
    img_small 圖片縮略圖URL地址。

  • 響應
    {
    "code": 0,
    "err_desc":"5acd8c7be1382313ff021c2b"
    }

    如果添加成功,則err_desc屬性值為添加資源的編號。
    如果添加失敗,則err_desc屬性值為錯誤描述。

4.2.添加視頻資源

  • 用途
    向某個目錄中添加一個視頻資源。

  • 請求
    res/?action=addVideo
    參數:

    parent=5accb333e1382314030eaba2&name=我的視頻&img_url=&img_small=

    parent 目錄編號,必選,指明向哪個目錄添加資源。
    name 資源名稱。
    img_url 封面圖片URL地址。
    img_small 封面圖片縮略圖URL地址。

  • 響應
    {
    "code": 0,
    "err_desc":"5acd8c7be1382313ff021c2b"
    }

    如果添加成功,則err_desc屬性值為添加資源的編號。
    如果添加失敗,則err_desc屬性值為錯誤描述。

4.3.添加音頻資源

  • 用途
    向某個目錄中添加一個音頻資源。

  • 請求
    res/?action=addAudio
    參數:
    與添加視頻相同。

  • 響應
    與添加視頻相同。

4.3.添加直播資源

  • 用途
    向某個目錄中添加一個直播資源。

  • 請求
    res/?action=addLive
    參數:
    與添加視頻相同。

  • 響應
    與添加視頻相同。

4.4.添加串流資源

  • 用途
    向某個目錄中添加一個串流資源。

  • 請求
    res/?action=addStreaming
    參數:

    parent=5accb333e1382314030eaba2&name=我的攝像頭&server_id=222&img_url=&img_small=&url=&prot=&demand=yes&video_bitrate=200&audio_bitrate=56&width=600&height=400

    parent 【必選】目錄編號,指明向哪個目錄添加資源。
    name 【必選】資源名稱。
    img_url 封面圖片URL地址。
    img_small 封面圖片縮略圖URL地址。
    server_id 【必選】流媒體服務器編號,可以通過查詢流媒體服務器接口查閱。
    url 【必選】串流的輸入地址。
    prot 串流的輸入協議,參見概述部分支持的協議。省略該參數服務器會自動判斷,結果有可能是錯誤的。
    demand yes|no 是否是按需取流,yes是,no否。
    video_bitrate 如果要對視頻流重新編碼,需要設置編碼碼率,單位kbps,否者省略該參數。
    width 重新編碼的畫面寬度
    height 重新編碼的畫面高度
    audio_bitrate 如果要對音頻流重新編碼,需要設置編碼碼率,單位kbps,否者省略該參數。
    video_only 如果只有視頻,將該值設為 on
    audio_only 如果只有音頻,將該值設為 on

  • 響應
    與添加視頻相同。

4.5.刪除資源

  • 用途
    刪除一個資源。
    使用本接口可以刪除資源,也可以刪除目錄。
    如果目錄下有資源,則不允許刪除。刪除目錄時,如果目錄下有資源會返回錯誤。

  • 請求
    res/?action=delete&id=5accb333e1382314030eaba2
    id 要刪除資源的編號。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

4.6.刪除多個資源

  • 用途
    通過一次提交多個資源編號來刪除多個資源。
    使用本接口可以刪除資源,也可以刪除目錄。
    如果目錄下有資源,則不允許刪除。刪除目錄時,如果目錄下有資源會返回錯誤。

  • 請求
    res/?action=deleteMany&id=5accb333e1382314030eaba2,5accb333e1382314030eaba0
    id 要刪除資源的編號列表,多個資源的編號使用半角逗號隔開。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

4.7.添加資源播出地址

  • 用途
    視頻資源、音頻資源、直播資源和串流資源,這些類型的資源都有一個或多個播出地址,使用該接口向資源中追加播出地址。
    可以通過多次調用本接口為一個資源添加多個播出地址。

  • 請求
    res/?action=addOutput
    參數:

    id=5accb333e1382314030eaba2&name=&url=&prot=&bitrate=

    id 資源編號。
    name 播出地址的名稱。
    url 播出地址。
    prot 播出協議,如果省略,系統會自動探測播出協議。
    bitrate 播出碼率,可選。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

4.8.刪除資源播出地址

  • 用途
    刪除某個資源的播出地址。

  • 請求
    res/?action=removeOutput
    參數:

    id=5accb333e1382314030eaba2&output_id=5accb333e1382314030eaba0

    id 資源編號。
    output_id 播出地址的編號,該編號在查詢資源接口中返回。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

4.9.修改資源

  • 用途
    修改資源的信息。
    使用本接口可以修改資源信息,也可以修改目錄的信息。
    可以傳入上述添加資源接口中的一個或多個參數值,但是要根據修改的資源類型不同傳入相應的參數,例如修改目錄時只能傳入name參數,修改串流資源時可以傳入ur參數等。

  • 請求
    res/?action=update
    參數:

    id=5accb333e1382314030eaba0&name=我的子目錄

    id 資源編號。
    可接受的修改的參數列表:
    name 資源名稱。
    img_url 封面圖片URL地址。
    img_small 封面圖片縮略圖URL地址。
    url 串流的輸入地址,僅在修改串流資源時有效。
    prot 串流的輸入協議,僅在修改串流資源時有效。
    user 用戶名,可選,僅在修改串流資源時有效。
    pwd 密碼,可選,僅在修改串流資源時有效。
    demand yes|no 是否是按需取流,yes是,no否,僅在修改串流資源時有效。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

4.10.添加子目錄

  • 用途
    向一個目錄中添加一個子目錄。

  • 請求
    res/?action=addFolder
    參數:

    parent=5accb333e1382314030eaba0&name=我的子目錄

    parent 上級目錄編號。
    name 新增目錄的名稱。

  • 響應
    {
    "code": 0,
    "err_desc":""
    }

5.資源查詢接口

5.1 資源概述

  • 資源類型
    系統支持的資源類型包括5類: 圖片文件、音頻文件、視頻文件、直播流、監控流。
    目錄也是資源,是一類特殊的資源,其基本屬性與資源相同。
    目錄和資源由 ftype 屬性區分。

  • 目錄
    資源都存放在目錄中,一個目錄中只能存放固定類型的資源
    目錄中允許存放的資源類型由目錄的 rtype 屬性約定。在業務實現上,只能往圖片目錄中添加圖片資源,往視頻目錄中添加視頻資源,以此類推。
    目錄中可以創建子目錄,子目錄的級別沒有限制。

  • 根目錄
    根目錄是系統中最頂級的一個目錄,一個系統只有一個根目錄。
    根目錄有_id屬性,通過該屬性可以查詢根目錄下的子目錄,根目錄不可以編輯和刪除。
    根目錄的_id屬性在用戶登錄後從用戶信息中獲取。(測試階段也可以預先拿到這個_id進行測試)。
    根目錄下的一級子目錄由系統初始化完成,不可以通過接口增加和刪除。
    一級子目錄下的子目錄和資源是我們要管理的對象,可以通過接口進行增刪改查操作。

  • 資源屬性
    資源屬性包括通用屬性和差異屬性。
    通用屬性對所有類型資源適用,差異屬性只能用於某種類型的資源。
    通用屬性:

    {
                "_id": "5accb3a1e1382313ff021c28",
                "parent": "5accb333e1382314030eaba2",
                "ftype": 1,
                "rtype": 5,
                "name": "我的視頻1",
                "ctime": 1523364769,
                "mtime": 1523410016,
                "state": 1,
                "img": {
                              "url": "http://img.ruiboyun.net/5accb3a1e1382313ff021c28.jpg",
                              "small": "http://img.ruiboyun.net/5accb3a1e1382313ff021c28_s.jpg"
                          }
    }

    _id 資源的唯一編號
    parent 資源所在目錄的編號
    ftype 資源的文件類型,參見下文定義
    rtype 資源的類型,參見下文定義
    name 資源名稱
    ctime 創建時間
    mtime 修訂時間
    state 狀態,參見下文定義
    img 定義圖片資源的URL地址,或其它類型資源的封面圖片地址。
    ?url 圖片URL地址
    ?small 圖片縮略圖地址

  • ftype定義
    ?使用整數來定義:
    ?1 = 資源
    ?2 = 目錄
    ?3 = 鏈接【保留】

  • rtype定義
    ?使用整數來定義:
    ?1 = 純文本文件【保留】;
    ?2 = HTML文件【保留】;
    ?3 = 圖片文件;
    ?4 = 音頻文件;
    ?5 = 視頻文件;
    ?10= 直播流;
    ?20= 監控流;

5.2 資源管理流程

資源管理從查詢根目錄下的子目錄開始。一個根目錄下會包含多個子目錄,用於存放不同類型的資源。
每個註冊用戶都有一個根目錄,這個根目錄的_id在用戶成功登錄後包含在返回信息中,具體參見登錄接口。
獲得根目錄的_id屬性後,先查詢到一級子目錄。然後根據業務需要管理一級子目錄下的目錄和資源。
例如:
根目錄_id為“myroot”,則可以通過查詢目錄接口查詢一級子目錄:

res/?action=folder&parent=myroot

通常會查詢到5個子目錄,名稱為:圖片、音頻、視頻、直播、監控。(也可能會有變化)
然後根據以下接口進行子目錄內的資源管理。

5.3 查詢目錄

  • 用途
    查詢指定目錄下的子目錄。

  • 請求
    res/?action=folder&parent=myroot
    parent 上級目錄編號,必選,指定要查詢哪個目錄下的資源。
  • 響應
    {
    "code": 0,
    "data": {
        "count":2,
        "items": [
            {
                "_id": "5accb333e1382314030eaba0",
                "parent": "myroot",
                "ftype": 2,
                "rtype": 3,
                "name": "圖片資源",
                "ctime": 1523364659,
                "state": 1
            },
            {
                "_id": "5accb333e1382314030eaba2",
                "parent": "myroot",
                "ftype": 2,
                "rtype": 5,
                "name": "視頻資源",
                "ctime": 1523364659,
                "state": 1
            }
        ]
    }
    }

    返回一個或多個子目錄的信息。

5.4 查詢資源

  • 用途
    查詢指定目錄下的資源。

  • 請求
    res/?action=resource&parent=5accb333e1382314030eaba2
    parent 上級目錄編號,必選,指定要查詢哪個目錄下的資源。

  • 響應
    {
    "code": 0,
    "data": {
        "count": 1,
        "items": [
            {
                "_id": "5accb3a1e1382313ff021c28",
                "parent": "5accb333e1382314030eaba2",
                "ftype": 1,
                "rtype": 5,
                "name": "我的視頻1",
                "ctime": 1523364769,
                "mtime": 1523410016,
                "state": 1,
                "img": {
                              "url": "http://img.ruiboyun.net/5accb3a1e1382313ff021c28.jpg",
                              "small": "http://img.ruiboyun.net/5accb3a1e1382313ff021c28_s.jpg"
                          },
                "output": [
                                {
                                        "_id": "5acd64b7e1382313ff021c2a",
                                        "name": "rtmp直播",
                                        "prot": "rtmp",
                                        "url": "rtmp://video.ruiboyun.net/live/live1",
                                        "bitrate": null
                                }
                ]
            }
        ]
    }
    }

返回一個或多個資源的信息。基本屬性信息參見上文定義。
音頻資源、視頻資源、直播資源、監控資源都有output屬性,定義資源的播出地址。
一個資源可以由多個播出地址,使用播出地址的_id屬性進行區分。
output 資源的播出地址,一個資源可以包含多個播出地址。
?_id 播出地址的編號,用於唯一識別一個資源的一個播出地址。
?name 播出地址名稱
?prot 播出協議,系統支持的協議類型可以通過查詢可用協議接口獲得。。
?url 播出url地址
?bitrate 播出url多媒體流的比特率

5.5 查詢資源和目錄

  • 用途
    查詢指定目錄下的子目錄和資源。
    使用該接口可以一次查詢到某個目錄下的子目錄和資源信息。
  • 請求
    res/?action=all&parent=myroot
    parent 上級目錄編號,必選,指定要查詢哪個目錄下的資源。
  • 響應
    響應數據與以上兩個接口相同。

5.6 查詢支持的視頻流協議

  • 用途
    查詢系統中支持的輸入輸出協議。用於在添加串流和添加播出地址時使用。
  • 請求
    res/?action=protocols

  • 響應
    {
    "code": 0,
    "data": {
        "count": 1,
        "items": [
            {
                "rtmp": "rtmp",
                "rtsp": "rtsp",
                "rtspt": "rtsp tcp",
                "rtp": "rtp",
                "udp": "udp",
                "onvif": "onvif",
                "hls": "hls",
                "http-mp4": "mp4 over http",
                "http-flv": "FLV over http",
                "mms": "mms",
                "mmsh": "mms-http"
            }
        ]
    }
    }

    items段中包含協議屬性值和顯示名稱。
    如: http-flv是屬性的值,FLV over http是在網頁上顯示的內容。


6.管理服務器

6.1.查詢服務器

  • 用途
    查詢服務器。

  • 請求
    server/?action=list
  • 響應
{
    "code": 0,
    "data": {
        "count": 1,
        "items": [
            {
                "_id": "5ad48b99e1382314006902f6",
                "name": "我的服務器",
                "ip": "cloud.ruiboyun.net",
                "user": "admin",
                "live": "live",
                "vod": "vod",
                "ctime": 1523878809,
                "mtime": 1523951519,
            }
        ]
    }
}

_id 服務器編號
name 服務器名稱
ip 服務器ip地址
user 登錄g3的用戶名
live 使用的直播應用
vod 使用的點播應用
ctime 創建時間
mtime 修改時間

6.2.添加服務器

  • 用途
    添加服務器。

  • 請求
    server/?action=add
    參數:
    action=add&name=我的服務器&ip=cloud.ruiboyun.net&user=admin&pwd=noveltv&live=live&vod=vod

    name 名稱
    ip 服務器ip地址
    user 登錄g3的用戶名
    pwd 登錄G3的密碼
    live 使用的直播應用
    vod 使用的點播應用
    ctime 創建時間
    mtime 修改時間

  • 響應
    {
    "code": 0,
    }

6.2.修改服務器

  • 用途
    添加服務器。

  • 請求
    server/?action=update
    參數:

    action=update&id=123&name=我的服務器&ip=cloud.ruiboyun.net&user=admin&pwd=noveltv&live=live&vod=vod

    id 服務器編號
    name 名稱
    ip 服務器ip地址
    user 登錄g3的用戶名
    pwd 登錄G3的密碼
    live 使用的直播應用
    vod 使用的點播應用

  • 響應
    {
    "code": 0,
    }

7.設備管理接口

這裏的設備是指展示視頻的大屏幕和屏幕控制主機。

7.1.查詢設備

  • 用途
    查詢設備。

  • 請求
    device/?action=list
  • 響應
{
    "code": 0,
    "data": {
        "count": 1,
        "items": [
            {
                "_id": "5add8b12e1382314011fe73d",
                "name": "我的設備2",
                "seq": "x1",
                "pwd": "111",
                "resolution": "1280x720",
                "os": "Windows",
                "ip": "192.168.1.23",
                "ctime": 1524468498,
                "mtime": 1524468554,
                "state": 1,
            }
        ]
    }
}

_id 編號
name 名稱
ip p地址
seq 設備編號,登錄設備時需要配合密碼一起使用
pwd 登錄設備的密碼
resolution 屏幕分辨率
os 操作系統
ctime 創建時間
mtime 修改時間
state 設備狀態

7.2.添加設備

  • 用途
    添加設備。

  • 請求
    device/?action=add
    參數:

    name=我的設備&ip=192.168.1.23&pwd=111&resolution=1280x720&os=Windows

    _id 編號
    name 名稱
    ip p地址
    pwd 登錄設備的密碼
    resolution 屏幕分辨率
    os 操作系統

  • 響應
    {
    "code": 0,
    }

7.3.修改設備

  • 用途
    修改設備。

  • 請求
    device/?action=update
    參數:

    name=我的設備&ip=192.168.1.23&pwd=111&resolution=1280x720&os=Windows&state=1

    _id 編號
    name 名稱
    ip p地址
    pwd 登錄設備的密碼
    resolution 屏幕分辨率
    os 操作系統
    state 設備狀態,可以使用該狀態控制啟用或禁用

  • 響應
    {
    "code": 0,
    }

上屏系統-接口規範-ALL In One