โ๏ธ About OpenMeeting
OpenMeeting is an open-source real-time audio and video conferencing system developed using Golang. OpenMeeting provides user management, meeting management, audio and video transmission, instant meetings, scheduled meetings, screen sharing, and more, aiming to offer users a convenient remote meeting experience. It is similar to Zoom and Tencent Meeting, with support for private deployment to ensure the security and privacy of enterprise and individual user data.
๐ Introduction to OpenMeetingServer
- OpenMeetingServer include:
- Instant Meetings: Users can create instant meetings at any time, invite others to join, and engage in efficient remote communication.
- Scheduled Meetings: Supports scheduling future meetings, setting meeting times and participants, and the system will remind users before the meeting starts.
- Screen Sharing: Users can share their screens during meetings for demonstration and collaboration.
- High-Quality Audio and Video: Provides high-quality audio and video transmission to ensure smooth meetings.
- Multi-Platform Support: Supports various operating systems, including Windows, macOS, Linux, and more.
- Microservices Architecture: Supports cluster mode, including a gateway and multiple RPC services.
- Multiple Deployment Methods: Supports source code, Kubernetes, or Docker deployment.
Enhanced Business Features:
- REST API๏ผProvides REST API for business systems, offering client interfaces.
- RPC API๏ผ Provides corresponding services through gRPC, including user and meeting, to extend more business forms.
๐ Quick Start
To facilitate user experience, we provide multiple deployment solutions. You can choose the suitable deployment method from the list below:
OpenMeeting Server Source Code Deployment
1. Downloading the Source Code
git clone https://github.com/openimsdk/openmeeting-server.git && cd openmeeting-server
# install dependencies component
docker compose up -d
# Checking if Related Dependencies components are Running Properly
docker ps
3. Set external IP
Modify the `url` in `config/live.yml` to `ws://external_IP:17880` or a domain name.
Modify the `node_ip` in `components/livekit/config/livekit.yml` rtc tag to `external_IP`.
4. Initialization
Before the first compilation, execute on Linux/Mac platforms:
bash bootstrap.sh
On Windows execute:
bootstrap.bat
5. compile and run
mage && mage start
How to add user in meeting server
- Replace your_ip_or_domain, your_userID, your_password, your_account, and your_nickname with the appropriate values. Then, run the command in your Bash terminal.
curl -X POST "http://your_ip_or_domain:11022/admin/user/register" \
-H "Content-Type: application/json" \
-H "operationID: 123456789" \
-d '{
"password": "your_password",
"account": "your_account",
"nickname": "your_nickname"
}'
- Then you can use this account's account and password to log in to the client.
System Support
Supports Linux, Windows, Mac systems, as well as ARM and AMD CPU architectures.
โ How to Contribute
We welcome contributions of any kind! Before submitting a Pull Request, please ensure you have read our Contributor Documentation.
Thank you for your contributions, let's build a powerful instant audio and video conferencing system together!
๐ License
OpenMeeting is available under the GNU AFFERO GENERAL PUBLIC LICENSE 3.0. See the LICENSE file for more information.
๐ฎ Thanks to our contributors!