livekit / protocol Goto Github PK
View Code? Open in Web Editor NEWLiveKit protocol. Protobuf definitions for LiveKit's signaling protocol
Home Page: https://docs.livekit.io
License: Apache License 2.0
LiveKit protocol. Protobuf definitions for LiveKit's signaling protocol
Home Page: https://docs.livekit.io
License: Apache License 2.0
We should switch VideoGrant permissions to be using *bool, so that they can be set to nil.
livekit only support file base auth provider so I want to develop new kind of auth provider.
If it is okay for the function to be officially supported, we will work on the function directly through a pull request.
The new authentication provider I'm trying to create is to be able to dynamically add api key & secret dynamically while server is running. I am thinking of using redis or mysql for storage to store the data.
We'll be working on this soon, so I'm curious if there's a chance it'll be officially included.
When using the channel, it is not judged whether the channel has been closed, causing the subsequent process to panic(nil). When the machine load is high, redis may return some errors that cause nil to be read here
utils/messaging.go
go func() {
for {
select {
case <-ps.done:
return
case msg := <-sub.Channel():
sha := sha256.Sum256([]byte(msg.Payload))
hash := base64.StdEncoding.EncodeToString(sha[:])
acquired, _ := r.Lock(ctx, hash, lockExpiration)
if acquired {
PromMessageBusCounter.WithLabelValues("in", "success").Add(1)
c <- msg
}
}
}
}()
go func() {
for {
select {
case <-ps.done:
return
case msg, ok := <-sub.Channel():
if !ok {
return
}
sha := sha256.Sum256([]byte(msg.Payload))
hash := base64.StdEncoding.EncodeToString(sha[:])
acquired, _ := r.Lock(ctx, hash, lockExpiration)
if acquired {
PromMessageBusCounter.WithLabelValues("in", "success").Add(1)
c <- msg
}
}
}
}()
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
github.com/go-jose/go-jose/v3
, github.com/puzpuzpuz/xsync
).github/workflows/buildtest.yaml
actions/checkout v4@3df4ab11eba7bda6032a0b82a6bb43b11571feac
actions/cache v4
actions/setup-go v5
.github/workflows/generate.yaml
actions/checkout v4@3df4ab11eba7bda6032a0b82a6bb43b11571feac
arduino/setup-protoc v2
actions/setup-go v5
magefile/mage-action v3
magefile/mage-action v3
EndBug/add-and-commit v9
.github/workflows/release-js.yaml
actions/checkout v4
pnpm/action-setup v2
actions/setup-node v4
arduino/setup-protoc v3
EndBug/add-and-commit v9
go.mod
go 1.21
github.com/eapache/channels v1.1.0
github.com/frostbyte73/core v0.0.10
github.com/gammazero/deque v0.2.1
github.com/go-jose/go-jose/v3 v3.0.2
github.com/go-logr/logr v1.4.1
github.com/hashicorp/go-retryablehttp v0.7.5
github.com/jxskiss/base62 v1.1.0
github.com/lithammer/shortuuid/v4 v4.0.0
github.com/livekit/mageutil v0.0.0-20230125210925-54e8a70427c1@54e8a70427c1
github.com/livekit/psrpc v0.5.3-0.20240227154351-b7f99eaaf7b3@b7f99eaaf7b3
github.com/mackerelio/go-osstat v0.2.4
github.com/maxbrunsfeld/counterfeiter/v6 v6.8.1
github.com/pion/logging v0.2.2
github.com/pion/sdp/v3 v3.0.6
github.com/pion/webrtc/v3 v3.2.28
github.com/pkg/errors v0.9.1
github.com/prometheus/client_golang v1.19.0
github.com/prometheus/procfs v0.12.0
github.com/puzpuzpuz/xsync v1.5.2
github.com/redis/go-redis/v9 v9.5.1
github.com/stretchr/testify v1.8.4
github.com/twitchtv/twirp v8.1.3+incompatible
github.com/zeebo/xxh3 v1.0.2
go.uber.org/atomic v1.11.0
go.uber.org/multierr v1.11.0
go.uber.org/zap v1.27.0
golang.org/x/exp v0.0.0-20240222234643-814bf88cf225@814bf88cf225
golang.org/x/mod v0.15.0
google.golang.org/grpc v1.62.0
google.golang.org/protobuf v1.32.0
gopkg.in/yaml.v3 v3.0.1
packages/js/package.json
@bufbuild/protobuf ^1.7.2
@bufbuild/buf ^1.29.0
@bufbuild/protoc-gen-es ^1.7.2
genversion ^3.2.0
I'm using the library on Macbook M1 and get error
# github.com/livekit/protocol/utils
../../../go/pkg/mod/github.com/livekit/[email protected]/utils/cpu_all.go:10:12: undefined: cpu.Stats
../../../go/pkg/mod/github.com/livekit/[email protected]/utils/cpu_all.go:14:20: undefined: cpu.Get
../../../go/pkg/mod/github.com/livekit/[email protected]/utils/cpu_all.go:25:19: undefined: cpu.Get
It looks like the library github.com/mackerelio/go-osstat/cpu
is not support for Macbook M1
os: MacOS 12.6.2
golang: v1.19.4
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.