# livekit-server **Repository Path**: edison2018_admin/livekit-server ## Basic Information - **Project Name**: livekit-server - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-04-05 - **Last Updated**: 2022-04-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LiveKit - Open source, high performance WebRTC infrastructure LiveKit is an open source project that provides scalable, multi-user conferencing over WebRTC. It's designed to give you everything you need to build real time video/audio/data capabilities in your applications. LiveKit is written in Go, using the awesome [Pion WebRTC](https://github.com/pion/webrtc) implementation. ## Features - Scalable, distributed WebRTC SFU (Selective Forwarding Unit) - Modern, full-featured [client SDKs](https://docs.livekit.io/references/client-sdks/) for JS, React, iOS, Android, Flutter, and Mac - Built for production - JWT authentication and [server APIs](https://docs.livekit.io/guides/server-api) - Robust networking & connectivity. UDP/TCP/TURN - Easy to deploy - single binary, docker & kubernetes - Advanced features - speaker detection, simulcast, selective subscription, moderation APIs, and webhooks. ## Documentation & Guides Docs & Guides at: https://docs.livekit.io ## Try it live Head to [our playground](https://livekit.io/playground) and give it a spin. Build a Zoom-like conferencing app in under 100 lines of code! ## SDKs & Tools Client SDKs: - [Javascript](https://github.com/livekit/client-sdk-js) ([docs](https://docs.livekit.io/client-sdk-js/)) - [React](https://github.com/livekit/livekit-react) - [iOS & MacOS - Swift](https://github.com/livekit/client-sdk-swift) ([docs](https://docs.livekit.io/client-sdk-swift/)) - [Android - Kotlin](https://github.com/livekit/client-sdk-android) ([docs](https://docs.livekit.io/client-sdk-android/)) - [Flutter](https://github.com/livekit/client-sdk-flutter) ([docs](https://docs.livekit.io/client-sdk-flutter/)) Server SDKs: - [Javascript](https://github.com/livekit/server-sdk-js) ([docs](https://docs.livekit.io/server-sdk-js/)) - [Go](https://github.com/livekit/server-sdk-go) ([docs](https://pkg.go.dev/github.com/livekit/server-sdk-go)) - [Ruby](https://github.com/livekit/server-sdk-ruby) Tools: - [livekit-cli](https://github.com/livekit/livekit-cli): command line admin & tools - [chrometester](https://github.com/livekit/chrometester): load testing with headless-Chrome bots - [docker image](https://hub.docker.com/r/livekit/livekit-server) ## Quickstart ### Generate config file and keys ```shell docker run --rm -v$PWD:/output livekit/generate --local ``` The above command generates a `livekit.yaml` you can use to start LiveKit. It'll contain an API key/secret pair you can use with your LiveKit install. ### Starting with docker ```shell docker run --rm -p 7880:7880 \ -p 7881:7881 \ -p 7882:7882/udp \ -v $PWD/livekit.yaml:/livekit.yaml \ livekit/livekit-server \ --config /livekit.yaml \ --node-ip ``` When running with docker, `--node-ip` needs to be set to your machine's IP address. If the service will be exposed to the public Internet, this should the machine's public IP. ### Test with example app Head over to the [example app](https://example.livekit.io) and enter the generated token to connect to your LiveKit server. This app is built with our [React SDK](https://github.com/livekit/livekit-react). Once connected, your video and audio are now published to your new LiveKit instance! ### Generating access tokens (JWT) To add more users to a room, you'll have to create a token for each participant. [Learn more about access tokens](https://docs.livekit.io/guides/access-tokens/). `livekit-server` provides a convenient sub-command to create a development token. This token has an expiration of a month, which is useful for development and testing, but not appropriate for production use. ```shell docker run --rm -e LIVEKIT_KEYS=": " \ livekit/livekit-server create-join-token \ --room "" \ --identity "" ``` ## Deploying to server Deployment Docs: https://docs.livekit.io/guides/deploy ### Single node server Use our deploy config generator to set up a single node deployment with automatic TLS termination and built-in TURN. It includes a cloud-init/setup script that's supported by most cloud environments. ```shell docker run --rm -it -v$PWD:/output livekit/generate ``` ### Kubernetes We publish a [helm chart](https://github.com/livekit/livekit-helm) that helps you to set up a cluster with high availability. For detailed instructions, see [Kubernetes guide](https://docs.livekit.io/deploy/kubernetes) ### Testing your deployment Use the [connection tester](https://livekit.io/connection-test) to ensure your installation is set up properly for user traffic. ## Building from source Pre-requisites: * Go 1.15+ is installed * GOPATH/bin is in your PATH Then run ```shell git clone https://github.com/livekit/livekit-server cd livekit-server ./bootstrap.sh mage ``` ## Contributing We welcome your contributions to make LiveKit better! Please join us [on Slack](https://join.slack.com/t/livekit-users/shared_invite/zt-rrdy5abr-5pZ1wW8pXEkiQxBzFiXPUg) to discuss your ideas and/or submit PRs. ## License LiveKit server is licensed under Apache License v2.0.