เมนู

ใช้ API ในการผสานรวมเพื่อทำให้กระบวนการทางธุรกิจภายในเป็นไปโดยอัตโนมัติ

สารบัญ

การผสานรวม API

ด้วยการใช้ API ของ Chat&Messenger คุณสามารถผสานรวมกับระบบและโปรแกรมภายนอกได้อย่างง่ายดาย
การผสานรวม API ช่วยให้สามารถดำเนินการต่างๆ ดังต่อไปนี้:

  • ระบบนี้เชื่อมต่อกับระบบภายในและแจ้งข้อมูลทางธุรกิจให้ห้องแชททราบ
  • ตรวจจับข้อผิดพลาดของระบบและแจ้งให้ผู้เกี่ยวข้องทราบ
  • การผสานรวมการประชุมทางเว็บจากซอฟต์แวร์กลุ่มงานภายในองค์กร
  • ดึงข้อมูลตารางเวลาและการจองห้องประชุม และเชื่อมโยงกับระบบอื่นๆ
การผสานรวม API จำเป็นต้องใช้แผน Cloud Enterprise / On-Premise Ultimate หรือสูงกว่า

โทเค็น API และอินเทอร์เฟซ API

รับโทเค็น API จากแผงควบคุมผู้ดูแลระบบ

เมื่อต้องการเชื่อมต่อกับ API คุณต้องขอรับ API Token ก่อน

โปรดส่งค่า apiToken / serverURL ที่ได้รับไปยัง JavaScript / curl ตามที่อธิบายไว้ในหัวข้อ "ส่วนติดต่อ API" ด้านล่าง

โปรดดูแลรักษา API Token ของคุณอย่างระมัดระวัง เช่นเดียวกับรหัสผ่านของคุณ

อินเทอร์เฟซ API

JavaScript, คำสั่ง curl ในบรรทัดคำสั่ง หรือโปรแกรมเข้าถึง HTTP ใดๆ ก็สามารถใช้เป็นอินเทอร์เฟซ API ได้ ตัวอย่างทั้งสองต่อไปนี้สามารถดึงข้อมูลการลงทะเบียนห้องประชุมในรูปแบบ 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-ฟอร์ม-urlencoded กรุณาส่งทางไปรษณีย์

ตัวอย่างหน้าจอ API

มี URL ตัวอย่างให้ใช้งานได้ ซึ่งช่วยให้คุณทดลองใช้ API ได้อย่างง่ายดาย หากคุณต้องการใช้เพื่อทดสอบ โปรดติดต่อเราผ่านแบบฟอร์มสอบถาม

API ข้อความ

ส่งข้อความ

กำลังส่งข้อความ

ตัวอย่าง

ส่งโดยระบุรหัสผู้ใช้ในแอปพลิเคชันส่งข้อความ
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" สำหรับแอปพลิเคชันแชท ให้ระบุชื่อห้อง
ผู้ใช้
  • ถ้าส่งเป็นข้อความในแอปพลิเคชันส่งข้อความ ข้อความนั้นจะถูกส่งไปยังผู้รับ แต่ถ้าเป็นข้อความในห้องแชท ข้อความนั้นจะถูกแชร์ไปยังทุกคน จากนั้นจะมีการส่งข้อความแจ้งเตือน (mention) ไปให้ผู้รับด้วย
  • ค้นหาผู้ใช้โดยใช้ที่อยู่อีเมล
  • เมื่อส่งอีเมลหลายฉบับ ให้ระบุเครื่องหมายจุลภาค (,) เป็นตัวคั่น
ข้อความ
  • ระบุข้อความที่จะส่ง
  • หากต้องการแทรกการขึ้นบรรทัดใหม่ในข้อความ ให้แทรกโค้ดการขึ้นบรรทัดใหม่ \n
ผนึก
  • ระบุค่าจริง/เท็จ ส่งพร้อมการแจ้งเตือนการอ่าน

ส่งข้อความ

ส่งข้อความจำนวนมากจากไฟล์ JSON

โปรดบันทึกไฟล์ JSON โดยใช้การเข้ารหัสอักขระ UTF-8

ตัวอย่าง

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!",  	// クイック会議のパスワードを指定
	);

การโต้แย้ง

วันหมดอายุระบุวันหมดเขตสำหรับการประชุมด่วน (ในหน่วยมิลลิวินาทีของระบบ Unix)
ชื่อตั้งชื่อเรื่องที่จะแสดงบนหน้าจอการประชุม
* หากเว้นว่างไว้ จะไม่แสดงผล
รหัสผ่านระบุรหัสผ่านสำหรับการประชุมด่วน
* หากเว้นว่างไว้ ระบบจะสร้าง URL สำหรับการประชุมโดยไม่มีรหัสผ่าน

การตอบสนอง

ซิดรหัสการประชุมทางเว็บ
URLURL การประชุมทางเว็บ
ผู้นำเสนอผ่านเมื่อสร้างการประชุมในโหมดผู้ชมอย่างเดียว ผู้บรรยายจะต้องใส่รหัสผ่าน

การเข้าสู่ระบบอัตโนมัติ

หากต้องการเข้าสู่ระบบการประชุมโดยอัตโนมัติผ่าน URL ที่สร้างโดย createQuickCall ให้เข้าถึงโดยการนำชื่อผู้ใช้และรหัสผ่านมาต่อกันเป็นพารามิเตอร์ใน URL ดังแสดงด้านล่าง

https://app.chat-messenger.com/share/{Web会議ID}?userName=Taro&password=000

รับสถิติการโทร

ฟังก์ชันนี้จะส่งคืนสถานะของการประชุมทางเว็บ รวมถึงจำนวนผู้เข้าร่วมในปัจจุบัน

ตัวอย่าง

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

การโต้แย้ง

ชื่อห้องระบุ ID สำหรับการประชุมผ่านเว็บ หรือ SID สำหรับการประชุมด่วน

การตอบสนอง

ชื่อห้องรหัสการประชุมทางเว็บ
ชื่อหัวข้อการประชุมทางเว็บ
รายการวันที่วันที่สร้าง
วันหมดอายุวันหมดอายุ
.จำนวนผู้เข้าร่วมในปัจจุบัน
กำลังดำเนินการเป็นจริงหากการประชุมกำลังดำเนินอยู่ เป็นเท็จหากไม่ใช่

API ผู้ใช้

API สำหรับผู้ใช้มีเพียงคำสั่ง curl เท่านั้น และจำเป็นต้องมีสิทธิ์ผู้ดูแลระบบในการเรียกใช้คำสั่งนี้

ส่งออกผู้ใช้

ข้อมูลผู้ใช้จะถูกดาวน์โหลดในรูปแบบ CSV ไปยังตำแหน่งที่ระบุโดย `path`

ตัวอย่าง

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

อัปเดตข้อมูลผู้ใช้

อัปเดตข้อมูลผู้ใช้จำนวนมากจากไฟล์ CSV *ดูรายละเอียดเพิ่มเติมในเอกสารอ้างอิง* รูปแบบ CSV

ตัวอย่าง

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

API ห้องแชท

อัปเดตห้องแชท

สร้างและอัปเดตห้องแชท

ตัวอย่าง

let chatRoom = { 
   "id":"1564831284702237059",
   "name":"秘密会議"
   "createUserId":"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
  • ไม่จำเป็นต้องใช้บัตรประจำตัวในการเปิดบัญชีใหม่

API กำหนดเวลา

getConferenceMaster

เรียกดูรายชื่อห้องประชุมทั้งหมด

ตัวอย่าง

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
  • หากไม่มีการระบุอาร์กิวเมนต์ใดๆ ระบบจะดึงรายการห้องประชุมทั้งหมดมาแสดง
  • โดยการระบุเดือนหรือวันที่ในอาร์กิวเมนต์ yyyyMMdd คุณสามารถเรียกดูสถานะการจองห้องประชุมที่เกี่ยวข้องได้ ตัวอย่างเช่น 201908 หรือ 20190801
  • สถานะการจองจะถูกบันทึกไว้ใน conferenceRooms.reservedSchedules

การตรวจจับข้อผิดพลาด API

ควรตรวจสอบข้อผิดพลาดของ API ดังนี้:

สถานะ HTTP อื่นๆ นอกเหนือจาก 200

หากสถานะ HTTP ไม่ใช่ 200 จะถือว่าเป็นข้อผิดพลาดโดยไม่มีข้อยกเว้น

สถานะ HTTP คือ 200 แต่มีข้อผิดพลาดเกิดขึ้นที่เซิร์ฟเวอร์

หากโทเค็น API ไม่ถูกต้องหรือข้อมูลเป้าหมายไม่มีอยู่จริง สถานะ HTTP จะถูกส่งกลับเป็น 200 และสถานะในการตอบกลับจะระบุเป็น 520 นอกจากนี้ ฟิลด์ errors จะมีอาร์เรย์ที่ประกอบด้วยรหัสข้อผิดพลาดและข้อความ

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

ความหมายของรหัสและรายละเอียดของข้อความที่ส่งกลับมาพร้อมกันมีดังต่อไปนี้:

รหัสความหมายข้อความ
400คำขอที่ไม่ถูกต้องฝั่งไคลเอ็นต์คำขอไม่ถูกต้อง
405กลุ่มที่ไม่มีอยู่จริง
406ไม่สามารถเปลี่ยนกลุ่มได้
451ผู้ใช้ยังไม่ได้ลงทะเบียนยังไม่มีผู้ใช้งานลงทะเบียน โปรดลงทะเบียนก่อน
*เมื่อผู้ใช้สามารถลงทะเบียนได้
452ผู้ใช้ยังไม่ได้ลงทะเบียนยังไม่มีการลงทะเบียนผู้ใช้
490จำนวนครั้งในการเข้าสู่ระบบเกินขีดจำกัดแล้วคุณไม่สามารถเข้าสู่ระบบได้เนื่องจากคุณป้อนรหัสผ่านครบจำนวนครั้งสูงสุดแล้ว โปรดลองอีกครั้งในภายหลัง
491คำขอมากเกินไป
500เกิดข้อผิดพลาดที่ไม่คาดคิดเกี่ยวกับเซิร์ฟเวอร์
503ไม่สามารถให้บริการได้
800ฟังก์ชันนี้มีไว้สำหรับผู้ดูแลระบบเท่านั้นและไม่สามารถใช้งานได้ในขณะนี้ฟังก์ชันนี้ใช้งานได้เฉพาะผู้ดูแลระบบเท่านั้น
802ฟีเจอร์นี้ใช้งานได้เฉพาะผ่าน API เท่านั้น จึงไม่สามารถใช้งานได้ในขณะนี้การดำเนินการนี้สามารถทำได้ผ่าน API เท่านั้น
805การฉ้อโกงโทเค็น APIโทเค็น API ไม่ถูกต้อง
  • URL をkoピーしました!
สารบัญ