zoom / meetingsdk-headless-linux-sample Goto Github PK
View Code? Open in Web Editor NEWA demo on creating a headless meeting bot using the Zoom Meeting SDK for Linux and Docker
License: MIT License
A demo on creating a headless meeting bot using the Zoom Meeting SDK for Linux and Docker
License: MIT License
qlu@qlu-ThinkPad-E15:/Final_zoom_repo/meetingsdk-headless-linux-sample$ docker compose up/Final_zoom_repo/meetingsdk-headless-linux-sample$ sudo docker compose up
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/json?all=1&filters=%7B%22label%22%3A%7B%22com.docker.compose.config-hash%22%3Atrue%2C%22com.docker.compose.project%3Dmeetingsdk-headless-linux-sample%22%3Atrue%7D%7D": dial unix /var/run/docker.sock: connect: permission denied
qlu@qlu-ThinkPad-E15:
[sudo] password for qlu:
Sorry, try again.
[sudo] password for qlu:
Sorry, try again.
[sudo] password for qlu:
WARN[0000] Found orphan containers ([meetingsdk-headless-linux-sample-services-1]) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
[+] Running 1/0
✔ Container meetingsdk-headless-linux-sample-zoomsdk-1 Recreated 0.1s
Attaching to zoomsdk-1
zoomsdk-1 | Preset CMake variables:
zoomsdk-1 |
zoomsdk-1 | CMAKE_TOOLCHAIN_FILE:FILEPATH="/opt/vcpkg/scripts/buildsystems/vcpkg.cmake"
zoomsdk-1 |
zoomsdk-1 | -- Running vcpkg install
zoomsdk-1 | Detecting compiler hash for triplet x64-linux...
zoomsdk-1 | Compiler found: /usr/bin/c++
zoomsdk-1 | The following packages will be built and installed:
zoomsdk-1 | ada-url:[email protected]
zoomsdk-1 | cli11:[email protected]
zoomsdk-1 | jwt-cpp:[email protected]
zoomsdk-1 | * picojson:[email protected]#3
zoomsdk-1 | * vcpkg-cmake:x64-linux@2023-05-04
zoomsdk-1 | * vcpkg-cmake-config:x64-linux@2022-02-06#1
zoomsdk-1 | Additional packages (*) will be modified to complete this operation.
zoomsdk-1 | Restored 1 package(s) from /root/.cache/vcpkg/archives in 4.07 ms. Use --debug to see more details.
zoomsdk-1 | Installing 1/6 vcpkg-cmake-config:x64-linux@2022-02-06#1...
zoomsdk-1 | Building vcpkg-cmake-config:x64-linux@2022-02-06#1...
zoomsdk-1 | -- Installing: /opt/vcpkg/packages/vcpkg-cmake-config_x64-linux/share/vcpkg-cmake-config/vcpkg_cmake_config_fixup.cmake
zoomsdk-1 | -- Installing: /opt/vcpkg/packages/vcpkg-cmake-config_x64-linux/share/vcpkg-cmake-config/vcpkg-port-config.cmake
zoomsdk-1 | -- Installing: /opt/vcpkg/packages/vcpkg-cmake-config_x64-linux/share/vcpkg-cmake-config/copyright
zoomsdk-1 | -- Performing post-build validation
zoomsdk-1 | Stored binaries in 1 destinations in 3.26 ms.
zoomsdk-1 | Elapsed time to handle vcpkg-cmake-config:x64-linux: 19.7 ms
zoomsdk-1 | vcpkg-cmake-config:x64-linux package ABI: a20346158aac4cdb803cb683ecdefc3faafd752e65e52e3748e294773ecd0494
zoomsdk-1 | Installing 2/6 vcpkg-cmake:x64-linux@2023-05-04...
zoomsdk-1 | Elapsed time to handle vcpkg-cmake:x64-linux: 839 us
zoomsdk-1 | vcpkg-cmake:x64-linux package ABI: eb4e3852eb046ce518073208e881943afe67fa3bb15224a3021109d6732f3e23
zoomsdk-1 | Installing 3/6 ada-url:[email protected]...
zoomsdk-1 | Building ada-url:[email protected]...
zoomsdk-1 | -- Downloading https://github.com/ada-url/ada/archive/v2.7.6.tar.gz -> ada-url-ada-v2.7.6.tar.gz...
zoomsdk-1 | [DEBUG] To include the environment variables in debug output, pass --debug-env
zoomsdk-1 | [DEBUG] Disabling metrics because vcpkg.disable-metrics exists
zoomsdk-1 | [DEBUG] Trying to load bundleconfig from /opt/vcpkg/vcpkg-bundle.json
zoomsdk-1 | [DEBUG] Failed to open: /opt/vcpkg/vcpkg-bundle.json
zoomsdk-1 | [DEBUG] Bundle config: readonly=false, usegitregistry=false, embeddedsha=nullopt, deployment=Git, vsversion=nullopt
zoomsdk-1 | [DEBUG] Feature flag 'binarycaching' unset
zoomsdk-1 | [DEBUG] Feature flag 'compilertracking' unset
zoomsdk-1 | [DEBUG] Feature flag 'registries' unset
zoomsdk-1 | [DEBUG] Feature flag 'versions' unset
zoomsdk-1 | [DEBUG] Feature flag 'dependencygraph' unset
zoomsdk-1 | [DEBUG] Detected /.dockerenv file
zoomsdk-1 | [DEBUG] 1000: execute_process(curl --fail -L https://github.com/ada-url/ada/archive/v2.7.6.tar.gz --create-dirs --output /opt/vcpkg/downloads/ada-url-ada-v2.7.6.tar.gz.107.part)
zoomsdk-1 | [DEBUG] 1000: cmd_execute_and_stream_data() returned 28 after 130802862 us
zoomsdk-1 | error: Failed to download from mirror set
zoomsdk-1 | error: https://github.com/ada-url/ada/archive/v2.7.6.tar.gz: curl failed to download with exit code 28
zoomsdk-1 | % Total % Received % Xferd Average Speed Time Time Time Current
zoomsdk-1 | Dload Upload Total Spent Left Speed
zoomsdk-1 |
zoomsdk-1 | curl: (28) Failed to connect to github.com port 443 after 130784 ms: Connection timed out
zoomsdk-1 |
zoomsdk-1 | [DEBUG] /mnt/vss/_work/1/s/src/vcpkg/base/downloads.cpp(1031):
zoomsdk-1 | [DEBUG] Time in subprocesses: 130802862us
zoomsdk-1 | [DEBUG] Time in parsing JSON: 5us
zoomsdk-1 | [DEBUG] Time in JSON reader: 0us
zoomsdk-1 | [DEBUG] Time in filesystem: 5us
zoomsdk-1 | [DEBUG] Time in loading ports: 0us
zoomsdk-1 | [DEBUG] Exiting after 2.2 min (130803372us)
zoomsdk-1 |
zoomsdk-1 | CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:32 (message):
zoomsdk-1 |
zoomsdk-1 | Failed to download file with error: 1
zoomsdk-1 | If you are using a proxy, please check your proxy setting. Possible causes are:
zoomsdk-1 |
zoomsdk-1 | 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable
zoomsdk-1 | to https://address:port
. This is not correct, because https://
prefix
zoomsdk-1 | claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr
zoomsdk-1 | , etc..) is an HTTP proxy. Try setting http://address:port
to both
zoomsdk-1 | HTTP_PROXY and HTTPS_PROXY instead.
zoomsdk-1 |
zoomsdk-1 | 2. If you are using Windows, vcpkg will automatically use your Windows IE Proxy Settings
zoomsdk-1 | set by your proxy software. See microsoft/vcpkg-tool#77
zoomsdk-1 | The value set by your proxy might be wrong, or have same https://
prefix issue.
zoomsdk-1 |
zoomsdk-1 | 3. Your proxy's remote server is out of service.
zoomsdk-1 |
zoomsdk-1 | If you've tried directly download the link, and believe this is not a temporary
zoomsdk-1 | download server failure, please submit an issue at https://github.com/Microsoft/vcpkg/issues
zoomsdk-1 | to report this upstream download server failure.
zoomsdk-1 |
zoomsdk-1 |
zoomsdk-1 | Call Stack (most recent call first):
zoomsdk-1 | scripts/cmake/vcpkg_download_distfile.cmake:270 (z_vcpkg_download_distfile_show_proxy_and_fail)
zoomsdk-1 | scripts/cmake/vcpkg_from_github.cmake:106 (vcpkg_download_distfile)
zoomsdk-1 | ports/ada-url/portfile.cmake:1 (vcpkg_from_github)
zoomsdk-1 | scripts/ports.cmake:175 (include)
zoomsdk-1 |
zoomsdk-1 |
zoomsdk-1 | error: building ada-url:x64-linux failed with: BUILD_FAILED
zoomsdk-1 | Elapsed time to handle ada-url:x64-linux: 2.2 min
zoomsdk-1 | Please ensure you're using the latest port files with git pull
and vcpkg update
.
zoomsdk-1 | Then check for known issues at:
zoomsdk-1 | https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+ada-url
zoomsdk-1 | You can submit a new issue at:
zoomsdk-1 | https://github.com/microsoft/vcpkg/issues/new?title=[ada-url]+Build+error+on+x64-linux&body=Copy+issue+body+from+%2Ftmp%2Fmeeting-sdk-linux-sample%2Fbuild%2Fvcpkg_installed%2Fvcpkg%2Fissue_body.md
zoomsdk-1 |
zoomsdk-1 | -- Running vcpkg install - failed
zoomsdk-1 | CMake Error at /opt/vcpkg/scripts/buildsystems/vcpkg.cmake:899 (message):
zoomsdk-1 | vcpkg install failed. See logs for more information:
zoomsdk-1 | /tmp/meeting-sdk-linux-sample/build/vcpkg-manifest-install.log
zoomsdk-1 | Call Stack (most recent call first):
zoomsdk-1 | /usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake:124 (include)
zoomsdk-1 | CMakeLists.txt:2 (project)
zoomsdk-1 |
zoomsdk-1 |
zoomsdk-1 | CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
zoomsdk-1 | CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
zoomsdk-1 | CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
zoomsdk-1 | -- Configuring incomplete, errors occurred!
Is this a known issue? Previous versions of the SDK seem to work though
Attaching to zoomsdk-build
zoomsdk-build | [ 10%] Building CXX object CMakeFiles/zoomsdk.dir/src/main.cpp.o
zoomsdk-build | [ 20%] Building CXX object CMakeFiles/zoomsdk.dir/src/Zoom.cpp.o
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp: In lambda function:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:45:63: error: invalid new-expression of abstract class type 'MeetingReminderEvent'
zoomsdk-build | 45 | reminderController->SetEvent(new MeetingReminderEvent());
zoomsdk-build | | ^
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/Zoom.h:25,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/events/MeetingReminderEvent.h:12:7: note: because the following virtual functions are pure within 'MeetingReminderEvent':
zoomsdk-build | 12 | class MeetingReminderEvent : public IMeetingReminderEvent
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/events/MeetingReminderEvent.h:7,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.h:25,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_reminder_ctrl_interface.h:130:22: note: 'virtual void ZOOMSDK::IMeetingReminderEvent::onEnableReminderNotify(ZOOMSDK::IMeetingReminderContent*, ZOOMSDK::IMeetingEnableReminderHandler*)'
zoomsdk-build | 130 | virtual void onEnableReminderNotify(IMeetingReminderContent* content, IMeetingEnableReminderHandler* handle) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:58:92: error: invalid new-expression of abstract class type 'MeetingRecordingCtrlEvent'
zoomsdk-build | 58 | auto recordingEvent = new MeetingRecordingCtrlEvent(onRecordingPrivilegeChanged);
zoomsdk-build | | ^
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/Zoom.h:26,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/events/MeetingRecordingCtrlEvent.h:12:7: note: because the following virtual functions are pure within 'MeetingRecordingCtrlEvent':
zoomsdk-build | 12 | class MeetingRecordingCtrlEvent : public IMeetingRecordingCtrlEvent {
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_participants_ctrl_interface.h:9,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.h:20,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_recording_interface.h:129:22: note: 'virtual void ZOOMSDK::IMeetingRecordingCtrlEvent::onRequestCloudRecordingResponse(ZOOMSDK::RequestStartCloudRecordingStatus)'
zoomsdk-build | 129 | virtual void onRequestCloudRecordingResponse(RequestStartCloudRecordingStatus status) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_recording_interface.h:137:22: note: 'virtual void ZOOMSDK::IMeetingRecordingCtrlEvent::onStartCloudRecordingRequested(ZOOMSDK::IRequestStartCloudRecordingHandler*)'
zoomsdk-build | 137 | virtual void onStartCloudRecordingRequested(IRequestStartCloudRecordingHandler* handler) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | gmake[2]: *** [CMakeFiles/zoomsdk.dir/build.make:90: CMakeFiles/zoomsdk.dir/src/Zoom.cpp.o] Error 1
zoomsdk-build | gmake[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/zoomsdk.dir/all] Error 2
zoomsdk-build | gmake: *** [Makefile:91: all] Error 2
zoomsdk-build exited with code 2
client-id required error even i have config.ini configured
zoomsdk-build | Consolidate compiler generated dependencies of target zoomsdk
zoomsdk-build | [ 10%] Building CXX object CMakeFiles/zoomsdk.dir/src/Zoom.cpp.o
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp: In lambda function:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:45:63: error: invalid new-expression of abstract class type 'MeetingReminderEvent'
zoomsdk-build | 45 | reminderController->SetEvent(new MeetingReminderEvent());
zoomsdk-build | | ^
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/Zoom.h:25,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/events/MeetingReminderEvent.h:12:7: note: because the following virtual functions are pure within 'MeetingReminderEvent':
zoomsdk-build | 12 | class MeetingReminderEvent : public IMeetingReminderEvent
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/events/MeetingReminderEvent.h:7,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.h:25,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_reminder_ctrl_interface.h:130:22: note: 'virtual void ZOOMSDK::IMeetingReminderEvent::onEnableReminderNotify(ZOOMSDK::IMeetingReminderContent*, ZOOMSDK::IMeetingEnableReminderHandler*)'
zoomsdk-build | 130 | virtual void onEnableReminderNotify(IMeetingReminderContent* content, IMeetingEnableReminderHandler* handle) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:58:92: error: invalid new-expression of abstract class type 'MeetingRecordingCtrlEvent'
zoomsdk-build | 58 | auto recordingEvent = new MeetingRecordingCtrlEvent(onRecordingPrivilegeChanged);
zoomsdk-build | | ^
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/src/Zoom.h:26,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/src/events/MeetingRecordingCtrlEvent.h:12:7: note: because the following virtual functions are pure within 'MeetingRecordingCtrlEvent':
zoomsdk-build | 12 | class MeetingRecordingCtrlEvent : public IMeetingRecordingCtrlEvent {
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | In file included from /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_participants_ctrl_interface.h:9,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.h:20,
zoomsdk-build | from /tmp/meeting-sdk-linux-sample/src/Zoom.cpp:1:
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_recording_interface.h:129:22: note: 'virtual void ZOOMSDK::IMeetingRecordingCtrlEvent::onRequestCloudRecordingResponse(ZOOMSDK::RequestStartCloudRecordingStatus)'
zoomsdk-build | 129 | virtual void onRequestCloudRecordingResponse(RequestStartCloudRecordingStatus status) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | /tmp/meeting-sdk-linux-sample/lib/zoomsdk/h/meeting_service_components/meeting_recording_interface.h:137:22: note: 'virtual void ZOOMSDK::IMeetingRecordingCtrlEvent::onStartCloudRecordingRequested(ZOOMSDK::IRequestStartCloudRecordingHandler*)'
zoomsdk-build | 137 | virtual void onStartCloudRecordingRequested(IRequestStartCloudRecordingHandler* handler) = 0;
zoomsdk-build | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
zoomsdk-build | gmake[2]: *** [CMakeFiles/zoomsdk.dir/build.make:90: CMakeFiles/zoomsdk.dir/src/Zoom.cpp.o] Error 1
zoomsdk-build | gmake[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/zoomsdk.dir/all] Error 2
zoomsdk-build | gmake: *** [Makefile:91: all] Error 2
zoomsdk-build exited with code 2
I was wondering what was the use of running the container eternally, so I thought if there was a way to stop container when the meeting ends
I'm curious - Could have you (or I) implemented this in Java \ .NET for example?
Is there a Zoom Meeting SDK that can be used with other languages?
I could not join the meeting created by another account.
I tried running the docker and works fine with Audio sample , but cannot yet get the Raw video out.
This is the error I receive when I start docker
✔ Container zoomsdk-build Created 0.0s
Attaching to zoomsdk-build
zoomsdk-build | Consolidate compiler generated dependencies of target zoomsdk
zoomsdk-build | [100%] Built target zoomsdk
zoomsdk-build | ✅ configure
zoomsdk-build | ✅ initialize
zoomsdk-build | ✅ authorize
zoomsdk-build | ✅ join a meeting
zoomsdk-build | ⏳ connecting to the meeting
zoomsdk-build | ✅ connected
zoomsdk-build | ⏳ requesting local recording privilege
zoomsdk-build | ✅ start raw recording
zoomsdk-build | ✅ create raw video renderer
zoomsdk-build | qemu: uncaught target signal 11 (Segmentation fault) - core dumped
zoomsdk-build exited with code 139
I made following changes
##config.ini
#[RawAudio]
#file="meeting-audio.pcm"
[RawVideo]
file="meeting-video.yuv"
## Zoom.cpp -> startRawRecording()
m_videoSource->setDir(m_config.videoDir());
m_videoSource->setFilename(m_config.videoFile());
OS - Mac OS 14.11
let me know what I am missing
Hi folkes, hope you can point me in the right direction;
When I try to run docker compose up
the script ends up crashing with the following:
❯ docker compose up
[+] Running 1/0
✔ Container meetingsdk-headless-linux-sample-zoomsdk-1 Created 0.0s
Attaching to zoomsdk-1
zoomsdk-1 | cp: cannot stat 'lib/zoomsdk/libmeetingsdk.so': No such file or directory
zoomsdk-1 | [ 10%] Building CXX object CMakeFiles/zoomsdk.dir/src/main.cpp.o
zoomsdk-1 | In file included from /tmp/meeting-sdk-linux-sample/src/main.cpp:4:
zoomsdk-1 | /tmp/meeting-sdk-linux-sample/src/Zoom.h:15:10: fatal error: zoom_sdk.h: No such file or directory
zoomsdk-1 | 15 | #include "zoom_sdk.h"
zoomsdk-1 | | ^~~~~~~~~~~~
zoomsdk-1 | compilation terminated.
zoomsdk-1 | gmake[2]: *** [CMakeFiles/zoomsdk.dir/build.make:76: CMakeFiles/zoomsdk.dir/src/main.cpp.o] Error 1
zoomsdk-1 | gmake[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/zoomsdk.dir/all] Error 2
zoomsdk-1 | gmake: *** [Makefile:91: all] Error 2
zoomsdk-1 exited with code 2
Looking at this it seems to be looking for a libmeetingsdk.so
file but this wasn't included in the tar file. Any ideas on where to go next?
Embed Meeting SDK: Linux v5.17.11.3885, v5.17.10.3562
Bot joined the meeting successfully, but the subscribe to audio is failed.
zoomsdk-1 | [100%] Built target zoomsdk
zoomsdk-1 | ✅ configure
zoomsdk-1 | ✅ initialize
zoomsdk-1 | ✅ authorize
zoomsdk-1 | ✅ join a meeting
zoomsdk-1 | ⏳ connecting to the meeting
zoomsdk-1 | ✅ connected
zoomsdk-1 | ⏳ requesting local recording privilege
zoomsdk-1 | ✅ start raw recording
zoomsdk-1 | ❌ failed to subscribe to raw audio with status 32
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.