Skip to main content

SChat

Index

Functions Index

Function Name

void OnChat (Closure callback)
void OnChat (Action< SChatMessage > trackInfoCallback)

void JoinChat (string name)
string GetXMPPName (string name)
void LeaveChat (string name)
SVoiceZone GetVoiceZone (string channel)
void JoinVoice (string channel, int priority=5, int spatial=0)
void JoinGridVoice (string channel, int priority=5, int spatial=0)
void LeaveVoice (string channel)

Functions

OnChat

void OnChat (Closure callback)
void OnChat (Action< SChatMessage > trackInfoCallback)

Bind a function to the OnChat event. This function will be called every time a new chat message is received on the local channel.

ParameterTypeDescription
callbackClosure or Action<SChatMessage>Invoked when a chat message is received
Space.Network.Chat.OnChat(OnChatFunction)
--this script takes every new chat message and displays it in a UIText
uiText = Space.Host.GetReference("text").UIText --Add this Text object as reference in Scripting Runtime

OnChatFunction = function(SChatMessage)
uiText.Text = SChatMessage.Sender ..": " .. SChatMessage.Message
end

Space.Network.Chat.OnChat(OnChatFunction)

JoinChat

void JoinChat (string name)

Join a chat channel.

ParameterTypeDescription
namestringChat channel to join
Space.Network.Chat.JoinChat("Test room")
--this script will make the player join a chat when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.JoinChat("PrivateChatZone")

end

end

OTE = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.LeaveChat("PrivateChatZone")

end

end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

GetXMPPName

string GetXMPPName (string name)

Get XMPP name.

ParameterTypeDescription
namestringHuman-readable chat name
Space.Network.Chat.GetXMPPName("Test room")

LeaveChat

void LeaveChat (string name)

Leave a chat channel.

ParameterTypeDescription
namestringChat channel to leave
Space.Network.Chat.LeaveChat("Test room")
--this script will make the player join a chat when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.JoinChat("PrivateChatZone")

end

end

OTE = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.LeaveChat("PrivateChatZone")

end

end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

GetVoiceZone

SVoiceZone GetVoiceZone (string channel)

Get a reference to a voice zone component for the given channel.

ParameterTypeDescription
channelstringVoice channel name/handle
voiceZone = Space.Network.Chat.GetVoiceZone("AChannel")

JoinVoice

void JoinVoice (string channel, int priority=5, int spatial=0)

Join a voice chat channel.

ParameterTypeDescription
channelstringVoice channel name/handle
priorityintOptional. Priority, default 5
spatialintOptional. Spatialization flag (0/1), default 0
Space.Network.Chat.JoinVoice("PrivateVoiceZone")
--this script will make the player join a voice channel when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.JoinVoice("PrivateVoiceZone")

end

end

OTE = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.LeaveVoice("PrivateVoiceZone")

end

end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

JoinGridVoice

void JoinGridVoice (string channel, int priority=5, int spatial=0)

JoinGridVoice is the same as JoinVoice except with a grid wide parameter. (white-label only)

ParameterTypeDescription
channelstringVoice channel name/handle (grid-wide)
priorityintOptional. Priority, default 5
spatialintOptional. Spatialization flag (0/1), default 0
Space.Network.Chat.JoinGridVoice("PrivateGridVoiceZone")
--this script will make the player join a Grid voice channel when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.JoinGridVoice("PrivateGridVoiceZone")

end

end

OTE = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.LeaveVoice("PrivateGridVoiceZone")

end

end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

LeaveVoice

void LeaveVoice (string channel)

Leave a voice chat channel

ParameterTypeDescription
channelstringVoice channel to leave
Space.Network.Chat.LeaveVoice("PrivateVoiceZone")
--this script will make the player join a voice channel when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.JoinVoice("PrivateVoiceZone")

end

end

OTE = function(gameObject)
if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

Space.Network.Chat.LeaveVoice("PrivateVoiceZone")

end

end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)