菜单

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

目录

应用程序接口连接

通过使用Chat&Messenger API,您可以轻松地与外部系统和程序链接。
应用程序接口连接可实现以下流程

  • 与内部系统连接,并将业务数据通知聊天室。
  • 发现系统错误并通知相关方。
  • 从内部群件连接网络会议
  • 获取日程安排和会议室预订信息,并与其他系统链接。
API 集成需要 Cloud Enterprise/On-Premises Ultimate 或更高级别的计划。

应用程序接口令牌和应用程序接口

从管理屏幕获取 API 标记

执行 API 链接时,首先要获取一个 API 令牌。

如下文 "API 接口 "所述,将获取的 apiToken / serverURL 传递给 JavaScript / curl。

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 命令行

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

任何 HTTP 访问程序

任何 HTTP 访问程序均可使用。API 执行方式如下: 内容类型 表示渴望、喜欢、憎恨等的对象。 应用程序/x-www-form-urlencoded 然后通过POST发送。

应用程序接口示例屏幕

为方便测试 API 的执行情况,我们提供了一个 URL 样本。如果您想使用它进行测试,请通过 "联系我们 "与我们联系。

消息 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

参数

发送
  • 指定传输目标
  • 对于信使,请指定信使;对于聊天,请指定聊天室名称。
用户
  • 如果发送的是信使,则发送给目的地用户。如果是聊天室,Mention 会共享和通知整个聊天室。
  • 通过电子邮件地址搜索相关用户
  • 对于多路传输,请指定 ,作为电子邮件分隔符。
信息
  • 指定要发送的信息
  • 要换行,请插入换行代码 (\n)。
封条
  • 真/假。与开箱确认一起发送。

发送信息。

从 json 文件批量发送信息。

json 文件应以 UTF8 编码保存。

样品

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

快速网络会议 创建 URL。

创建快速呼叫

样品

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

updateChatRoom.

创建和更新聊天室

样品

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

getConferenceMaster.

检索会议室总清单。

样品

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

参数

不带

getConferenceRoomStatus.

获取会议室预订清单

样品

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

参数

yyyyMMdd
  • 如果没有指定参数,则会获得会议室的主列表。
  • 如果参数 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 令牌无效。
  • URLをコピーしました!
目录