feat(call): integrate LiveKit for voice and video calling
Replace the manual WebRTC signaling implementation with LiveKit SFU. This includes: - Adding LiveKit service, handler, and configuration. - Updating Docker Compose to include LiveKit server, Redis, and PostgreSQL. - Refactoring `CallService` and `WSHandler` to support LiveKit room readiness instead of raw SDP/ICE relaying. - Adding new API endpoints for LiveKit token generation and webhooks. - Removing deprecated WebRTC configuration and manual signaling DTOs.
This commit is contained in:
@@ -62,6 +62,7 @@ var ServiceSet = wire.NewSet(
|
||||
ProvideHotRankWorker,
|
||||
ProvideMaterialService,
|
||||
ProvideCallService,
|
||||
ProvideLiveKitService,
|
||||
ProvideReportService,
|
||||
ProvideAdminReportService,
|
||||
ProvideVerificationService,
|
||||
@@ -463,6 +464,14 @@ func ProvideCallService(
|
||||
return service.NewCallService(callRepo, publisher, cfg, db, redisClient)
|
||||
}
|
||||
|
||||
// ProvideLiveKitService 提供 LiveKit 服务
|
||||
func ProvideLiveKitService(
|
||||
cfg *config.Config,
|
||||
logger *zap.Logger,
|
||||
) service.LiveKitService {
|
||||
return service.NewLiveKitService(cfg, logger)
|
||||
}
|
||||
|
||||
// ProvideReportService 提供举报服务
|
||||
func ProvideReportService(
|
||||
reportRepo repository.ReportRepository,
|
||||
|
||||
Reference in New Issue
Block a user