SChat
Index
Functions Index
| Function Name |
|---|
void OnChat (Closure callback) |
| 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.
| Parameter | Type | Description |
|---|---|---|
| callback | Closure or Action<SChatMessage> | Invoked when a chat message is received |
- Lua
Space.Network.Chat.OnChat(OnChatFunction)
- Lua
--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.
| Parameter | Type | Description |
|---|---|---|
| name | string | Chat channel to join |
- Lua
Space.Network.Chat.JoinChat("Test room")
- Lua
--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.
| Parameter | Type | Description |
|---|---|---|
| name | string | Human-readable chat name |
- Lua
Space.Network.Chat.GetXMPPName("Test room")
LeaveChat
void LeaveChat (string name)
Leave a chat channel.
| Parameter | Type | Description |
|---|---|---|
| name | string | Chat channel to leave |
- Lua
Space.Network.Chat.LeaveChat("Test room")
- Lua
--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.
| Parameter | Type | Description |
|---|---|---|
| channel | string | Voice channel name/handle |
- Lua
voiceZone = Space.Network.Chat.GetVoiceZone("AChannel")
JoinVoice
void JoinVoice (string channel, int priority=5, int spatial=0)
Join a voice chat channel.
| Parameter | Type | Description |
|---|---|---|
| channel | string | Voice channel name/handle |
| priority | int | Optional. Priority, default 5 |
| spatial | int | Optional. Spatialization flag (0/1), default 0 |
- Lua
Space.Network.Chat.JoinVoice("PrivateVoiceZone")
- Lua
--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)
| Parameter | Type | Description |
|---|---|---|
| channel | string | Voice channel name/handle (grid-wide) |
| priority | int | Optional. Priority, default 5 |
| spatial | int | Optional. Spatialization flag (0/1), default 0 |
- Lua
Space.Network.Chat.JoinGridVoice("PrivateGridVoiceZone")
- Lua
--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
| Parameter | Type | Description |
|---|---|---|
| channel | string | Voice channel to leave |
- Lua
Space.Network.Chat.LeaveVoice("PrivateVoiceZone")
- Lua
--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)