Zoom – популярная платформа для видеоконференций, которая предоставляет различные API для интеграции своих функций в ваши приложения. В этом уроке мы сосредоточимся на реализации автоматической записи с использованием API Zoom в PHP. Автоматическая запись позволяет автоматически записывать собрания, вебинары и другие сеансы Zoom без необходимости ручного вмешательства. Мы рассмотрим несколько методов достижения этой цели и предоставим примеры кода для каждого подхода.
Предварительные требования:
Перед началом работы убедитесь, что у вас есть следующее:
- Учетная запись Zoom: зарегистрируйте учетную запись Zoom, если у вас ее еще нет.
- Учетные данные Zoom API: создайте учетные данные API, создав приложение в Zoom App Marketplace. Получите ключ и секрет API, которые потребуются для аутентификации ваших запросов API.
- Базовые знания PHP: знание языка программирования PHP и его синтаксиса.
Метод 1. Использование веб-перехватчиков Zoom API
Веб-перехватчики позволяют получать уведомления о различных событиях в Zoom, включая начало и завершение собрания, а также доступность записи. Вот пример настройки вебхука для автоматической записи собраний:
// Define your webhook endpoint URL
$webhookUrl = 'https://your-domain.com/webhook-endpoint';
// Register the webhook with Zoom
$apiUrl = 'https://api.zoom.us/v2/webhooks';
$accessToken = 'YOUR_ZOOM_API_ACCESS_TOKEN';
$data = [
'event' => 'meeting.ended',
'target_url' => $webhookUrl,
];
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Authorization: Bearer ' . $accessToken,
));
$response = curl_exec($ch);
curl_close($ch);
Когда встреча закончится, Zoom отправит POST-запрос на указанный URL-адрес веб-перехватчика. Вы можете обработать запрос веб-перехватчика в своем PHP-коде и начать запись этого собрания.
Метод 2: использование конечной точки конференций Zoom API
Другой подход — использовать конечную точку конференций Zoom API, чтобы начать встречу и включить автоматическую запись. Вот фрагмент кода, демонстрирующий этот метод:
$apiUrl = 'https://api.zoom.us/v2/users/YOUR_USER_ID/meetings';
$accessToken = 'YOUR_ZOOM_API_ACCESS_TOKEN';
$data = [
'topic' => 'Auto-Recording Meeting',
'type' => 2,
'settings' => [
'auto_recording' => 'cloud',
],
];
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Authorization: Bearer ' . $accessToken,
));
$response = curl_exec($ch);
curl_close($ch);
В этом примере мы создаем новую встречу и устанавливаем для параметра auto_recording
значение 'cloud'
, чтобы включить запись в облаке. После начала встречи Zoom автоматически начнет запись встречи и сохранит ее в облаке.
Метод 3. Использование URL-адресов обратного вызова API Zoom
API Zoom позволяет указать URL-адрес обратного вызова, который будет вызываться, когда запись станет доступна. Вы можете использовать эту функцию для автоматической загрузки записи или выполнения любых других желаемых действий. Вот пример настройки URL обратного вызова:
// Define your callback URL
$callbackUrl = 'https://your-domain.com/callback-endpoint';
// Register the callback URL with Zoom
$apiUrl = 'https://api.zoom.us/v2/meetings/YOUR_MEETING_ID/recordings/settings';
$accessToken = 'YOUR_ZOOM_API_ACCESS_TOKEN';
$data = [
'recording': [
'callback': true,
'callback_url': $callbackUrl,
],
];
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Authorization: Bearer ' . $accessToken,
));
$response = curl_exec($ch);
curl_close($ch);
В этом примере мы обновляем настройки записи для конкретной встречи, чтобы включить URL-адрес обратного вызова. Zoom отправит запрос POST на указанный URL-адрес обратного вызова, когда запись станет доступна.
В этом руководстве мы рассмотрели несколько методов реализации автоматической записи с использованием API Zoom в PHP. Мы рассмотрели использование веб-перехватчиков, конечной точки Meetings и URL-адресов обратного вызова для достижения этой функциональности. В зависимости от требований вашего приложения вы можете выбрать наиболее подходящий метод. Надеемся, что это руководство предоставило вам необходимые знания и примеры кода, чтобы начать работу с автоматической записью с использованием API Zoom на PHP. Приятного кодирования!