Skip to content

VoiceChatService

Not yet Class Services NotCreatable Service

VoiceChatService is responsible for voice chat's high-level functionality.

Not implemented yet

No voice backend.

0 Nova members · 26 modern Roblox members not implemented yet

Description

VoiceChatService is responsible for voice chat's high-level functionality. This mostly consists of configuration options, and functions that are not specifically-controlled by more-specific instances.

Inheritance

Object → Instance → VoiceChatService

Properties

Member Signature Summary
DefaultDistanceAttenuation DefaultDistanceAttenuation: VoiceChatDistanceAttenuationType Determines which distance attenuation curve the default voice chat setup uses when AudioDeviceInput and AudioEmitter objects ar…
EnableDefaultVoice EnableDefaultVoice: bool Controls whether each voice-eligible player can be heard as though they were speaking through their character.
EnableVoiceVolumeControls EnableVoiceVolumeControls: RolloutState Controls whether Roblox's built-in voice chat volume controls are available to players.
UseAudioApi UseAudioApi: AudioApiRollout Controls whether voice chat is represented and controlled by AudioDeviceInput objects.
UseNewAudioApi UseNewAudioApi: bool —
UseNewControlPaths UseNewControlPaths: bool —
UseNewJoinFlow UseNewJoinFlow: bool —
UseStreamSwitching UseStreamSwitching: bool —
VoiceChatEnabledForPlaceOnRcc VoiceChatEnabledForPlaceOnRcc: bool —
VoiceChatEnabledForUniverseOnRcc VoiceChatEnabledForUniverseOnRcc: bool —

Methods

Member Signature Summary
GetChatGroupsAsync VoiceChatService:GetChatGroupsAsync(players: Instances): Array Returns chat group IDs that indicate which players can voice chat together.
getInternalChannelId VoiceChatService:getInternalChannelId(): string —
getInternalGroupId VoiceChatService:getInternalGroupId(): string —
getInternalPublishPause VoiceChatService:getInternalPublishPause(): bool —
getInternalSessionId VoiceChatService:getInternalSessionId(): string —
getInternalSubscribePause VoiceChatService:getInternalSubscribePause(userId: int64): bool —
getInternalSubscribePauseAll VoiceChatService:getInternalSubscribePauseAll(): bool —
getInternalVoiceChatApiVersion VoiceChatService:getInternalVoiceChatApiVersion(): int —
isInternalPublishPaused VoiceChatService:isInternalPublishPaused(): bool —
IsVoiceEnabledForUserIdAsync VoiceChatService:IsVoiceEnabledForUserIdAsync(userId: User): bool Returns whether or not the given user has voice enabled.
joinVoice VoiceChatService:joinVoice(): null —
lastVoiceChatStats VoiceChatService:lastVoiceChatStats(): Dictionary —
leaveVoice VoiceChatService:leaveVoice(leaveReason: VoiceClientLeaveReasons = LuaInitiated): null —
notifyServerACSCleanup VoiceChatService:notifyServerACSCleanup(): null —
rejoinVoice VoiceChatService:rejoinVoice(): null —

Events

Member Signature Summary
ACSCleanup ACSCleanup() —
ClientRetryJoin ClientRetryJoin() —
ClientRetryJoinWithConfig ClientRetryJoinWithConfig(sessionConfigFlags: int64) —
ClientStreamSwitchAck ClientStreamSwitchAck(eventTag: int64, sessionId: string) —
FetchUserTurnAuthOperationFailed FetchUserTurnAuthOperationFailed(sessionId: string) —
JoinedVoice JoinedVoice(channelName: string, participantId: int64, sessionId: string, channelId: string) —
JoinedVoiceV2 JoinedVoiceV2(channelName: string, participantId: int64, sessionId: string, channelId: string, sfuImage: string, sfuTag: string, sfuDataCenterId: int) —
PublishingHandshakeAcked PublishingHandshakeAcked(handshakeAnswer: string, sessionId: string) —
PublishingHandshakeAckedWithBothSdp PublishingHandshakeAckedWithBothSdp(fullHandshakeAnswer: string, compressedHandshakeAnswer: string, sessionId: string, compressMode: int) —
PublishingHandshakeAckedWithCompressedSdp PublishingHandshakeAckedWithCompressedSdp(compressedHandshakeAnswer: string, sessionId: string, compressMode: int) —
PublishingHandshakeCompleted PublishingHandshakeCompleted(sessionId: string) —
PublishingHandshakeInitiated PublishingHandshakeInitiated(handshakeOffer: string, muteState: MuteState, sessionId: string) —
PublishingHandshakeInitiatedWithBothSdp PublishingHandshakeInitiatedWithBothSdp(fullHandshakeOffer: string, compressedHandshakeOffer: string, muteState: MuteState, sessionId: string, compressMode: int) —
PublishingHandshakeInitiatedWithCompressedSdp PublishingHandshakeInitiatedWithCompressedSdp(compressedHandshakeOffer: string, muteState: MuteState, sessionId: string, compressMode: int) —
PublishStateChange PublishStateChange(muteState: MuteState, sessionId: string) —
ReJoinedVoice ReJoinedVoice(channelName: string, participantId: int64, sessionId: string, channelId: string) —
ReJoinedVoiceV2 ReJoinedVoiceV2(channelName: string, participantId: int64, sessionId: string, channelId: string, sfuImage: string, sfuTag: string, sfuDataCenterId: int) —
RelayCandidatesGathered RelayCandidatesGathered(voiceControlPath: VoiceControlPath, serializedIceCandidates: string, isLast: bool, sessionId: string, clientIp: string, clientPort: int) —
SsrcUserIdMappingUpdate SsrcUserIdMappingUpdate(ssrcs: Array, userIds: Array, feedIds: Array, sessionId: string, eventTag: int64) —
SubscriberAudioQualitySample SubscriberAudioQualitySample(sampleJson: string) —
SubscribeStateChange SubscribeStateChange(muteState: MuteState, userIds: string, sessionId: string) —
SubscriptionFeedStarted SubscriptionFeedStarted(eventTag: int64, sessionId: string) —
SubscriptionHandshakeAcked SubscriptionHandshakeAcked(eventTag: int64, handshakeAnswer: string, usersToMute: string, sessionId: string) —
SubscriptionHandshakeAckedWithBothSdp SubscriptionHandshakeAckedWithBothSdp(eventTag: int64, fullHandshakeAnswer: string, compressedSdpAnswer: string, usersToMute: string, sessionId: string, compressMode: int) —
SubscriptionHandshakeAckedWithCompressedSdp SubscriptionHandshakeAckedWithCompressedSdp(eventTag: int64, compressedSdpAnswer: string, usersToMute: string, sessionId: string, compressMode: int) —
SubscriptionHandshakeCompleted SubscriptionHandshakeCompleted(sessionId: string, eventTag: int64) —
SubscriptionHandshakeInitiated SubscriptionHandshakeInitiated(handshakeOffer: string, newSubscriptionStates: string, isNewConnection: bool, sessionId: string, eventTag: int64) —
SubscriptionHandshakeInitiatedWithBothSdp SubscriptionHandshakeInitiatedWithBothSdp(fullHandshakeOffer: string, compressedHandshakeOffer: string, newSubscriptionStates: string, isNewConnection: bool, sessionId: string, eventTag: int64, compressMode: int) —
SubscriptionHandshakeInitiatedWithCompressedSdp SubscriptionHandshakeInitiatedWithCompressedSdp(compressedHandshakeOffer: string, newSubscriptionStates: string, isNewConnection: bool, sessionId: string, eventTag: int64, compressMode: int) —
SubscriptionReset SubscriptionReset(sessionId: string) —
UpdateTurnAuthInfoRequest UpdateTurnAuthInfoRequest() —
UserTurnAuth UserTurnAuth(sessionId: string, userName: string, password: string, ttl: int, uris: Array) —
UserTurnAuthV2 UserTurnAuthV2(sessionId: string, userName: string, password: string, ttl: int, uris: Array, dataCenterId: int, dataCenterPop: string) —
VoiceChatClientVoiceCapability VoiceChatClientVoiceCapability() —
VoiceChatClientVoiceCapabilityWithConfig VoiceChatClientVoiceCapabilityWithConfig(sessionConfigFlags: int64) —
VoiceChatPlayerMuteStateChangedClientToServer VoiceChatPlayerMuteStateChangedClientToServer(muteState: MuteState) —
VoiceChatPlayerMuteStateChangedServerToClient VoiceChatPlayerMuteStateChangedServerToClient(muteState: MuteState) —
VoiceChatplayerMuteStatusChangedEvent VoiceChatplayerMuteStatusChangedEvent(userId: int64, muted: bool, sessionId: string) —
VoiceChatSampleTaggedEventClientToServer VoiceChatSampleTaggedEventClientToServer(tag: int64, value: string) —
VoiceChatSampleTaggedEventServerToClient VoiceChatSampleTaggedEventServerToClient(tag: int64, value: string) —
VoiceChatStatsCollected VoiceChatStatsCollected() —
VoiceChatSubscriptionInitialBatchEmpty VoiceChatSubscriptionInitialBatchEmpty(sessionId: string) —
VoiceMigration VoiceMigration(reason: VoiceRccReconnectReason) —
VoiceSetupFailed VoiceSetupFailed(voiceControlPath: VoiceControlPath, serializedFailure: string, sessionId: string) —

Roblox reference: VoiceChatService

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.