ทำแอปประชุม online ด้วย Zoom SDK และ Ionic mobile framework

เมื่อสองสามวันก่อน มีลูกค้ารายหนึ่ง มาปรึกษาว่า เค้าต้องการจะใช้ Wowza Video streaming server มาทำเป็น Online conference แต่เนื่องจากเค้าทำอย่างไรก็ยัง delay อยู่ประมาณ 5 วินาที แต่ความต้องการของลูกค้าเค้าอยากให้การตอบสนองเหมือน Zoom เลย
ผมก็เลยไปหาดูว่า Zoom มี API อะไรไหม ก็ได้ไปเจอ https://ionicframework.com/docs/native/zoom
เป็น Cordova plugin ที่ติดต่อกับ Zoom Video Conference service
import { Push, PushObject, PushOptions } from '@ionic-native/push/ngx';
constructor(private push: Push) { }
...
// to check if we have permission
this.push.hasPermission()
  .then((res: any) => {
    if (res.isEnabled) {
      console.log('We have permission to send push notifications');
    } else {
      console.log('We do not have permission to send push notifications');
    }
  });
// Create a channel (Android O and above). You'll need to provide the id, description and importance properties.
this.push.createChannel({
 id: "testchannel1",
 description: "My first test channel",
 // The importance property goes from 1 = Lowest, 2 = Low, 3 = Normal, 4 = High and 5 = Highest.
 importance: 3,
 //badge is used to if badge appears on the app icon see https://developer.android.com/reference/android/app/NotificationChannel.html#setShowBadge(boolean).
 //false = no badge on app icon.
 //true = badge on app icon
 badge: false
}).then(() => console.log('Channel created'));
// Delete a channel (Android O and above)
this.push.deleteChannel('testchannel1').then(() => console.log('Channel deleted'));
// Return a list of currently configured channels
this.push.listChannels().then((channels) => console.log('List of channels', channels))
// to initialize push notifications
const options: PushOptions = {
   android: {},
   ios: {
       alert: 'true',
       badge: true,
       sound: 'false'
   },
   windows: {},
   browser: {
       pushServiceURL: 'http://push.api.phonegap.com/v1/push'
   }
}
const pushObject: PushObject = this.push.init(options);
pushObject.on('notification').subscribe((notification: any) => console.log('Received a notification', notification));
pushObject.on('registration').subscribe((registration: any) => console.log('Device registered', registration));
pushObject.on('error').subscribe(error => console.error('Error with Push plugin', error));
สามารถไปดูรายละเอียดได้ตาม link ข้างบน ทำไมถึงต้องทำแบบนี้ให้ดูยุ่งยากด้วย คำตอบคือลูกค้าต้องการที่จะต้องการนำ content อื่นมาใส่ไว้ใน app และใน app จะต้องมี meeting room และต้องการควบคุมการเข้าถึงของผู้เข้าฟัง meeting นั้นๆ
Get in Touch with us
Related Posts
- Building a Multi-Market Breakout Stock Screener in Python
 - How Agentic AI and MCP Servers Work Together: The Next Step in Intelligent Automation
 - DevOps in Django E-Commerce System with DRF and Docker
 - How AI Can Solve Real Challenges in Agile Development
 - Connecting TAK and Wazuh for Real-Time Threat Awareness
 - Scaling Wazuh for Multi-Site Network Security Monitoring
 - Why ERP Projects Fail — and How to Avoid It
 - How to Build Strong Communities with Technology
 - How AI Can Make Open Zoos More Fun, Smart, and Educational
 - How to Choose the Right Recycling Factory for Industrial Scrap
 - Understanding Modern Database Technologies — and How to Choose the Right One
 - The Future Is at the Edge — Understanding Edge & Distributed Computing in 2025
 - NVIDIA and the Two Waves: From Crypto to AI — The Art of Riding a Bubble
 - From Manual Checks to AI-Powered Avionics Maintenance
 - Automated Certificate Generator from XLSX Templates
 - Introducing SimpliPOS (COFF POS) — A Café-Focused POS System
 - Building a Local-First Web App with Alpine.js — Fast, Private, and Serverless
 - Carbon Footprint Calculator (Recycling) — Measuring CO₂ Savings in Recycling Operations
 - Recycle Factory Tools: A Smarter Way to Track Scrap Operations
 - Running Form Coach — Cadence Metronome, Tapper, Drills, Posture Checklist
 

          











