นี่คือตัวอย่างหนึ่งต่อหนึ่งแอปพลิเคชันไคลเอนต์การโทรผ่านวิดีโอที่เขียนด้วย JavaScript ที่อนุญาตให้นักพัฒนาสามารถใช้ความสามารถในการโทรวิดีโอที่ได้รับอำนาจด้วย Face AI ในเว็บไซต์ของพวกเขา แอปพลิเคชันทำงานบนเว็บเบราว์เซอร์ (เรียกว่าจุดสิ้นสุดไคลเอนต์) และใช้ Enablex Web SDK เพื่อดำเนินการเซสชัน RTC กับเพื่อนร่วมงานผ่านบริการวิดีโอ ENABLEX แอปพลิเคชันไคลเอนต์ดำเนินการต่อไปนี้เพื่ออำนวยความสะดวกในเซสชัน RTC:
รับโทเค็นจากแอปพลิเคชันเซิร์ฟเวอร์เชื่อมต่อกับห้องโดยใช้โทเค็นเผยแพร่เสียงสตรีมเสียง/วิดีโอในห้องที่สมัครสมาชิกเพื่อสตรีมเสียง/วิดีโอระยะไกลในห้องฟังเหตุการณ์ที่เกี่ยวข้องกับเซสชันใด ๆ แอปพลิเคชันตัวอย่างไคลเอนต์นี้ยังแสดงคุณสมบัติต่อไปนี้:
ปิดเสียงวิดีโอปิดเสียง/การบันทึกเสียงเซสชันการบันทึกการแชทหน้าจอ AI การแชร์การแชร์การเชื่อมต่อหน้าจอ AI
เมื่อพัฒนาแอปพลิเคชันไคลเอนต์ด้วย enxrtc.js (อยู่ในไคลเอนต์/js) ตรวจสอบให้แน่ใจว่าได้แทนที่ enxrtc.js เก่าด้วย enxrtc.js ที่ได้รับการปรับปรุงจาก https://developer.enablex.io/docs/references/sdks/videcide-dk/ มิฉะนั้นแอปพลิเคชันของคุณจะไม่ทำงานในเว็บเบราว์เซอร์
ลงทะเบียนเพื่อทดลองใช้ฟรี https://www.enablex.io/free-trial/ หรือลองวิดีโอแชทหลาย ๆ
git clone https://github.com/EnableX/Video-Conferencing-Open-Source-Web-Application-Sample.git --recursive & ทำตามขั้นตอนต่อไป แอปพลิเคชันจำเป็นต้องทำงานบน HTTPS ดังนั้นคุณต้องใช้ใบรับรอง SSL ที่ถูกต้องสำหรับโดเมนของคุณและชี้แอปพลิเคชันของคุณให้ใช้
อย่างไรก็ตามคุณอาจใช้ใบรับรองที่ลงนามด้วยตนเองเพื่อเรียกใช้แอปพลิเคชันนี้ในเครื่อง มีเว็บไซต์มากมายที่จะได้รับใบรับรองที่ลงนามด้วยตนเองที่สร้างขึ้นสำหรับคุณ Google IT ไม่กี่คนในหมู่พวกเขา:
ด้านล่างสามารถใช้เพื่อสร้างใบรับรองที่ลงนามด้วยตนเอง
Linux/Mac
cd Video - Conferencing - Open - Source - Web - Application - Sample
cd server
mkdir certs
sudo openssl req - x509 - newkey rsa: 4096 - keyout . / certs / example . key - out . / certs / example . crt - days 10000 - nodes
sudo chmod 755 . / certs / example . *
cd . .Windows (ใช้ Git Bash)
cd Video - Conferencing - Open - Source - Web - Application - Sample
cd server
mkdir certs
openssl req - x509 - newkey rsa: 4096 - keyout . / certs / example . key - out . / certs / example . crt - days 10000 - nodes
chmod 755 . / certs / example . *
cd . . ก่อนที่คุณจะเรียกใช้แอปพลิเคชันนี้กำหนดค่าบริการ คัดลอก server/example.env เป็น server/.env และอัปเดตค่า หรือคุณสามารถตั้งค่าตัวแปรสภาพแวดล้อมระบบต่อไปนี้แทน:
SERVICE_PORT - Node port on which your application will run . Default port set is 3000
ENABLEX_APP_ID - Your EnableX `App ID` - It 's your username for EnableX API and can be found at Dashboard > Projects https://portal.enablex.io/dashboard/
ENABLEX_APP_KEY - Your EnableX `App Key` - - It 's your password for EnableX API and can be found at Dashboard > Projects https://portal.enablex.io/dashboard/ สำหรับ Mac และ Linux ให้เปิดหน้าต่างเทอร์มินัลและพิมพ์คำสั่งต่อไปนี้ หมายเหตุ - แทนที่อักขระทั้งหมดหลังจาก = ด้วยค่าจากบัญชี enablex ของคุณ:
export SERVICE_PORT = XXXX
export ENABLEX_APP_ID = XXXXXXXXXX
export ENABLEX_APP_KEY = XXXXXXXXX บน Windows ให้เปิดหน้าต่าง PowerShell / Command และพิมพ์คำสั่งต่อไปนี้ โปรดทราบว่าไม่มี = เพียงคีย์และค่าคั่นด้วยพื้นที่:
setx SERVICE_PORT 'XXXX'
setx ENABLEX_APP_ID 'XXXXXXXXX'
setx ENABLEX_APP_KEY 'XXXXXXXXX' เรียกใช้ npm install --save เพื่อสร้างโครงการและสิ่งประดิษฐ์ Build จะถูกเก็บไว้ในไดเรกทอรี ./node_modules
เรียกใช้ node server.js ภายในโฟลเดอร์ server เพื่อเริ่มต้นเซิร์ฟเวอร์ของคุณ
cd server
node server . js ENABLEX Server API เป็นบริการ REST API ที่ถูกเรียกจากแอปพลิเคชันเซิร์ฟเวอร์ของพันธมิตรเพื่อจัดเตรียมห้องประชุมที่เปิดใช้งานวิดีโอ การเข้าถึง API นั้นมอบให้กับแต่ละแอปพลิเคชันผ่านรหัสแอพที่กำหนดและคีย์แอพที่กำหนด ดังนั้นรหัสแอพและคีย์แอพจะถูกใช้เป็นชื่อผู้ใช้และรหัสผ่านตามลำดับเพื่อส่งผ่านส่วนหัวการตรวจสอบความถูกต้องพื้นฐาน HTTP เพื่อเข้าถึง API เซิร์ฟเวอร์
สำหรับแอปพลิเคชันนี้ใช้การโทร API ของเซิร์ฟเวอร์ต่อไปนี้:
หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับ Server API ให้ไปที่: https://developer.enablex.io/docs/references/apis/video-api/index/
แอปพลิเคชันจุดสิ้นสุดไคลเอนต์ใช้ Web Toolkit ENXRTC.JS เพื่อสื่อสารกับ ENABLEX Servers เพื่อเริ่มต้นและจัดการการสื่อสาร RTC
หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับ Client API ให้ไปที่: https://developer.enablex.io/docs/references/sdks/video-sdk/web-sdk/index/