1. 程式人生 > >視訊會議管理介面

視訊會議管理介面

1.概述

1.1.用途

主要用途是對會議進行管理

1.2.適用版本

1.3.通訊協議

本規範中,業務系統是通訊的伺服器端(簡稱“伺服器”),信令伺服器是通訊客戶端(簡稱“客戶端”)。
客戶端和伺服器通過HTTP協議通訊,客戶端使用HTTP Get 或 HTTP Post向伺服器傳送請求,伺服器返回json格式的業務資料或操作結果給客戶端。用GET還是POST方式傳送請求,要根據具體情況,例如簡單的情況可以GET,大量資料的提交可以POST。

1.4.介面請求

HTTP Get 或 POST

1.5.介面響應

伺服器返回json格式的文字內容給客戶端。
返回給客戶端的json文字描述了伺服器對請求的處理結果和響應資料。

1.6.介面安全

1.7.URL編碼

當URL請求引數值中包含URL地址保留字元時,應對引數值進行URL編碼。
具體參見“RFC2396: Uniform Resource Identifiers (URI): Generic Syntax”。
當請求引數包含中文字元時,應對中文字符采用UTF-8編碼。

1.8.描述約定

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":[{
            "server":"g3",
            }]
        }            
    }

其中:
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引數來請求指定頁碼的資料。

2.0 介面引數

本規範中的介面引數以介面描述內為主。

2 介面定義

2.1 建立房間/修改房間

請求

/meetingmanage/room/?id=1&server_id=1&room=1122&name=會議&max_users=4&start_time=2018-11-13 10:23:00&end_time=2018-11-13 11:23:00&open_class=2

引數:
id:1(可選提供ID則為修改資訊,缺失則建立)
server_id:信令伺服器ID
room:房間編號 (對應視訊會議系統中的房間號)
name:房間名稱
max_users:最大參會人數 (允許的最大參會人數.0 表示不限制)
start_time 開始時間
end_time 結束時間
open_class 開放級別(0 = 安全會議 要求參會人必須在參會人列表中1 = 機構會議 要求參會人必須在使用者列表中。2 = 開放會議,參會人可以不使用者列表中,也無需做身份認證。 預設 1)

響應

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

返回0代表建立成功,其他值錯誤資訊將在err_desc內描述。

2.2 查詢房間列表

請求

/meetingmanage/getRoom/?id=1

引數
id:需要查詢單個房間資訊,缺失則查詢出所有房間(可選)
page:第幾頁,預設為1
page_size:每頁數量,預設50
響應

 {
    "code":0,
    "data":{
        "page":1,
        "page_size":"20",
        "pages":"1",
        "total":"2",
        "count":2,
        "items":[{
                        "id":"1",
                        "server_id":"1",
                        "room":"34ewer24",
                        "name":"會議名字",
                        "max_users":"5",
                        "users_num":"4",
                        "add_time":"2018-11-13 11:10:00",
                        "update_time":"2018-11-13 11:10:00",
                        "start_time":"2018-11-13 11:10:00",
                        "end_time":"2018-11-13 11:10:00",
                        "open_class":"2",
                        "status":"1"
            }]
       }
}

2.3修改狀態/刪除房間

請求

/meetingmang/roomStatus/?id=1&status=2

引數:
id:需要修改的房間ID
status:0 = 關閉1 = 開啟 2 禁用 -1 刪除
響應

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

2.4建立使用者/修改使用者

請求

/meetingmanage/user?id=1&name=user1&acct=123456&pwd=123456&status=1&is_master=1

引數:
id:1(可選提供ID則為修改資訊,缺失則建立)
name:使用者姓名
acct:帳號
pwd:密碼
status:狀態(0 註冊 1 正常 2 禁用 -1 刪除 )
is_master : 是否主持人(1 為主持人)

響應

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

返回0代表建立成功,其他值錯誤資訊將在err_desc內描述。

2.5查詢使用者

請求

/meetingmanage/getUser/?id=1

引數(可選)
id:需要查詢單個使用者資訊,缺失則查詢出所有使用者
響應

 {
    "code":0,
    "data":{
        "page":1,
        "page_size":"20",
        "pages":"1",
        "total":"2",
        "count":2,
        "items":[{
                        "id":"1",
                        "name":"user1",
                        "acct":"123456",
                        "name":"會議名字",
                        "status":"1",
                        "add_time":"2018-11-13 11:10:00",
                        "update_time":"2018-11-13 11:10:00",
                        "is_master":"1"
            }]
       }
}

2.6修改狀態/刪除房間

請求

/meetingmang/userStatus/?id=1&status=2

引數:
id:需要修改的房間ID
status:0 = 關閉1 = 開啟 2 禁用 -1 刪除
響應

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

2.7指定房間主持人

請求

/meetingmang/emcee/?roomid=1&userid=1&name=user1

引數:
roomid:房間ID編號
userid:指定的主持人ID
name:主持人名字
響應

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

2.7指定參會人

請求

/meetingmang/emcee/?roomid=1&userid=1&name=user1

引數:
roomid:房間ID編號
userid:指定的參會人ID
name:參會人名字
響應

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