選單

通过应用程序接口连接实现内部操作自动化。

目錄

API合作

透過使用Chat&Messenger API,您可以輕鬆地與外部系統和程式連結。
API 整合支援以下處理。

  • 與內部系統連結,將業務資料通知聊天室
  • 偵測系統錯誤並通知相關方
  • 來自內部組件的網路會議鏈接
  • 獲取日程和會議室預訂資訊並與其他系統鏈接
API 整合需要 Cloud Enterprise/On-Premises Ultimate 或更高等級的方案。

API令牌和API介面

從管理畫面取得 API Token

進行API整合時,請先取得API Token。

請將獲得的 apiToken / serverURL 傳遞給 JavaScript /curl,如下面「API 介面」所述。

請小心處理 API 令牌,因為它與密碼相同。

API介面

API 介面可以與 JavaScript、curl 命令列或任何 HTTP 存取程式一起使用。以下兩個範例均可檢索 JSON 格式的會議室註冊資訊。

在不應用常規 SSL 的環境中,serverURL 將是 HTTP 8080 連接埠。

JavaScript

let config = {
	"apiToken": "QIQVOSvRJHrQElDwj20x******",
	"serverURL": "https://*****************"
}
let client = new CAMAPIClient(config);
let response = await client.getConferenceRooms();

捲曲命令列

curl -H "x-cam-apiToken:token******" ${serverURL}/getConferenceRooms

任何HTTP訪問程序

任何 HTTP 存取程式均可使用。 API 執行方式如下: 內容類型應用程式/x-www-form-urlencoded 然後透過POST發送。

API 範例螢幕

有一個範例 URL,您可以在其中輕鬆嘗試 API 執行。如果您想使用它進行測試,請透過查詢表與我們聯絡。

訊息 API

傳訊息

發送一個訊息。

樣本

透過在 Messenger 中指定使用者 ID 傳送
let response = await getAPIClient().sendMessage(
	"messenger", 	// messenger を指定したダイレクトメッセージを指定
	"Hello!",  	// 送信するメッセージ
	false,   	// 封書は off 
	["user1@xxx.com", "user2@xxx.com"]	// 宛先 Email アドレス 
	);
curl -H "x-cam-apiToken:token******" -d message="{\"panelName\":\"messenger\",\"message\":\"Hello\",\"isOpened\":false,\"generalPurposes\":{\"users\":\"user1@xxx.com,user2@xxx.com\"}}" ${serverURL}/sendMessage
指定聊天室並發送
let response = await getAPIClient().sendMessage(
	"ルーム名", 
	"Hello!", 
	false,
        ["user1@xxx.com", "user2@xxx.com"]	// メンションとして Email アドレス指定 
);
curl -H "x-cam-apiToken:token******" -d message="{\"panelName\":\"ルーム名\",\"message\":\"Hello\",\"isOpened\":false,\"generalPurposes\":{\"users\":\"user1@xxx.com,user2@xxx.com\"}}" ${serverURL}/sendMessage

爭論

傳送
  • 指定發送目標
  • 對於 Messenger,指定 Messenger;對於聊天,指定房間名稱
使用者
  • 如果發送的是信使,則發送至目標用戶。如果是聊天室,您將在分享整個內容後收到提及通知。
  • 透過郵箱地址搜尋對應的用戶
  • 發送多封電子郵件時,指定 , 作為電子郵件分隔符號。
資訊
  • 指定要傳送的訊息
  • 如果您希望文字換行,請插入換行程式碼 \n。
海豹
  • 指定真/假。發送已讀回執

傳送訊息

從 json 檔案批次發送訊息。

請以字元編碼UTF8儲存json檔案。

樣本

curl -H "x-cam-apiToken:token******" -d @messages.json ${serverURL}/sendMessages 
messages=[
 {"message":"こんにちは 1","property":{"users":"user1@test.com,user2@test.com"}},
 {"message":"こんにちは 2","property":{"users":"user1@test.com,user2@test.com"}},
 {"message":"こんにちは 3","property":{"users":"user1@test.com,user2@test.com"}},
 {"message":"こんにちは 4","property":{"users":"user1@test.com,user2@test.com"}},
]
messages=[
  {"send": "test", "message":"テスト 1"}
]

呼叫 API

快速网络会议 建立一個網址。

建立快速呼叫

樣本

let response = await getAPIClient().createQuickCall(
	1624368868714, 	// クイック会議の期限(UnixTimeミリ)
	"password!",  	// クイック会議のパスワードを指定
	);

爭論

過期日期指定快速會議的截止日期(UnixTime 毫米)
標題設定會議畫面上顯示的標題
* 如果為空白,則不會顯示。
密碼指定快速會議密碼
* 如果留空,將建立沒有密碼的會議 URL。

回覆

席德網路會議 ID
網址網路會議網址
PresenterPass如果您建立唯讀會議,演示者必須輸入密碼。

自動登入

若要自動登入 createQuickCall 產生的會議 URL,請透過在 URL 參數中連接使用者名稱和密碼來存取它,如下所示:

https://app.chat-messenger.com/share/{網路會議ID}?使用者名稱=Taro&密碼=000

獲取通話統計信息

返回網路會議的當前狀態,包括參與者的數量。

樣本

let response = await getAPIClient().getCallStats(
	8sQYFO2sPYHb7xSsibpVCKaqrFmTpCureVqKvwKgSZJs, 	// Web会議のID
	);

爭論

房間名稱指定網路會議 ID 或快速會議的 SID

回覆

房間名稱網路會議 ID
標題網路會議主題
建立日期建立日期
過期日期到期日期
參與者目前參與人數
進行中如果會議正在進行,則為 true,否則為 false

使用者 API

用戶 API 僅提供 curl 命令。您還需要管理員權限才能運行它。

匯出用戶

使用者資訊將以CSV格式下載到路徑指定的位置。

樣本

curl -H "x-cam-apiToken:token******" -d "path=exportUsers.csv" ${serverURL}/exportUsers

更新用戶CSV

從 CSV 檔案批次更新使用者資訊。 ※ 參考 CSV 格式

樣本

curl -H "x-cam-apiToken:token******" -F "file=@updateUsers.csv" ${serverURL}/updateUsersCSV

聊天室 API

更新聊天室

建立/更新聊天室

樣本

let chatRoom = { 
   "id":"1564831284702237059",
   "name":"秘密会議"
   "createUserId":"11u1pu9d32p8vuvjoZdd",
   "adminUserId":"11u1pu9d32p8vuvjoZdd",
   "isPublic":false,
   "memberUids":{ 
      "11u1pu9d32p8vuvjoZdd":true,
      "1lmn7hoh3s1ja26fsazw":true,
      "hhx10sfdv1jyou4la1ny":true,
      "3400w9rfvs504c35dt99":true,
      "309d32p8vuvjo5euuuwx":true
   },
}
let response = await getAPIClient().updateChatRoom(chatRoom);
let errors = response['errors'];
if (errors) {
	console.log(errors);
	return;
}
console.log(response["chatRoom"]);

爭論

聊天室
  • 用於建立/更新聊天室的 JSON
  • 如果是新的則不需要 id

規劃 API

獲取會議主持人

取得會議室主列表。

樣本

let response = await getAPIClient().getConferenceMaster();
let errors = response['errors'];
if (errors) {
	console.log(errors);
	return;
}
console.log(response["conferenceRooms"]);

爭論

沒有任何

取得會議室狀態

取得會議室預訂狀態列表

樣本

let response = await getAPIClient().getConferenceRoomStatus("201908");
let errors = response['errors'];
if (errors) {
	console.log(errors);
	return;
}
console.log(response["conferenceRoomStatus"]);

爭論

年月日
  • 如果不指定參數,將取得會議室主列表。
  • 如果在參數yyyyMMdd中輸入月份或日期,則可以取得對應會議室的預訂狀態。例)201908 或 20190801
  • 預訂資訊儲存在conferenceRooms.reservedSchedules 中。

API錯誤偵測

請判斷API錯誤如下:

200 以外的 HTTP 狀態碼

任何除 200 之外的 HTTP 狀態都毫無例外地是錯誤。

HTTP 狀態為 200,但伺服器出現錯誤

如果 API 令牌無效或目標資料不存在,則 HTTP 狀態本身將傳回 200,並且可以透過回應中的狀態 520 來確定錯誤。此外,錯誤將包含錯誤原因的代碼和訊息的陣列。

{"status":520, "errors":[{"code":"805","message":"APIトークンが正しくありません"}]}

程式碼意義及同時回傳的訊息詳情如下:

程式碼意義資訊
400錯誤的客戶端請求此請求無效。
405不存在的群體
406我無法更改群組
451用戶未註冊該用戶尚未註冊,請先註冊。
*如果用戶可以自行註冊
452用戶未註冊該用戶尚未註冊。
490已超出登入嘗試次數您已達到密碼嘗試的最大次數,無法登入。請等待一段時間後重試。
491請求過多
500意外的伺服器相關錯誤
503暫停服務
800此功能僅供管理員使用,無法使用。此功能僅供管理員使用。
802這是一個僅限 API 的功能,無法使用。此操作僅可透過 API 進行。
805API 令牌無效API 令牌無效。
  • 網址をコピーしました!
目錄