Difference between revisions of "Category:LSL Chat"

From Second Life Wiki
Jump to navigation Jump to search
m
(recast some of my sentences, corrrected a few typos.)
Line 3: Line 3:
Chat communication is as it sounds. It is text "said" so that anyone (or anything) listening within range can hear it. It can be two-way communication.
Chat communication is as it sounds. It is text "said" so that anyone (or anything) listening within range can hear it. It can be two-way communication.


Users can only see chat sent on the two public channels, 0 (PUBLIC_CHANNEL) and 2147483647 ([[DEBUG_CHANNEL]]); scripts on the other hand can [[listen]] to any chat on any channel. Agents can only directly chat on positive channels{{Footnote|This is likely just a limitation of the client and not an actual restriction; it should not be depended upon.}}, but scripts can chat and listen on any channel. The complete range of channels is -2147483648 to 2147483647.
When a user in SL begins a chat message (in the client) in the chat text-entry field as /1 , the 1 is the channel the user is speaking on{{Footnote|This is a Linden Lab SL client feature and not part of the protocol; other clients may implement this differently or not at all.}}.


In the client when you begin a chat message in the chat text-entry field as /1 , the 1 is the channel you are speaking on{{Footnote|This is a client feature and not part of the protocol, other clients may implement this differently or not at all.}}.
{{Tip|// (two forward-slashes) is shortcut for the last special channel you entered in chat.}}


{{Tip|// (two forward-slashes) is shortcut for the last special channel you entered in chat.}}
Users in SL can directly chat only on positive channels{{Footnote|This is likely just a limitation of the Linden Lab SL client and not an actual restriction; it should not be depended upon.}}, and can only see chat sent on the two public channels, 0 (aka [[PUBLIC_CHANNEL]] in more technical language) and 2147483647 (aka [[DEBUG_CHANNEL]]).
 
Scripts, on the other hand can [[listen]] to and "talk" on any chat channel, be it a positive one, or a negative one, within the complete range of channels from -2147483648 to 2147483647.


Chat messages can be a maximum of 1023 bytes; they are truncated past that.
Chat messages can be a maximum of 1023 bytes; they are truncated past that.
Line 13: Line 15:
A scripted prim cannot hear itself speak. Scripts listening in a linked prim, though, will hear the chat. Generally, though, communication between scripts in the same object is handled via [[llMessageLinked]].
A scripted prim cannot hear itself speak. Scripts listening in a linked prim, though, will hear the chat. Generally, though, communication between scripts in the same object is handled via [[llMessageLinked]].


To "hear" chat, a script has to specifically initiate a "listen." A single script has a limit of 64 listens at any one time; beyond that it will emit a "Too Many Listens" squawk, and crash. The script can manage it's listens, creating, releasing and disabling them.  
To "hear" chat, a script has to specifically initiate a "listen." A single script has a limit of 64 listens at any one time; beyond that it will emit a "Too Many Listens" squawk, and crash. The script can manage its listens, creating, releasing and disabling them.  


{| {{Prettytable|style=float:left;margin-top:0;}}
{| {{Prettytable|style=float:left;margin-top:0;}}
Line 33: Line 35:
There is no way to lengthen or shorten the distance or direct it in any special direction.
There is no way to lengthen or shorten the distance or direct it in any special direction.


[[llRegionSay]] is an exception; as it can be heard anywhere in the sim but with the limitation that it cannot broadcast on {{LSL Const|PUBLIC_CHANNEL|integer|0}}{{Footnote|llRegionSay was introduced to elliminate the need for repeaters for scripted systems spread out over a large area.}}.
[[llRegionSay]] is an exception. It can be heard anywhere in the sim but with the limitation that it cannot broadcast on channel 0 (aka {{LSL Const|PUBLIC_CHANNEL|integer|0}} ){{Footnote|llRegionSay was introduced to eliminate the need for repeaters for scripted systems spread out over a large area.}}.
<div style="clear:left;"></div>
<div style="clear:left;"></div>



Revision as of 08:22, 15 July 2008

Chat communication is as it sounds. It is text "said" so that anyone (or anything) listening within range can hear it. It can be two-way communication.

When a user in SL begins a chat message (in the client) in the chat text-entry field as /1 , the 1 is the channel the user is speaking on[1].

KBtip2.png Tip: // (two forward-slashes) is shortcut for the last special channel you entered in chat.

Users in SL can directly chat only on positive channels[2], and can only see chat sent on the two public channels, 0 (aka PUBLIC_CHANNEL in more technical language) and 2147483647 (aka DEBUG_CHANNEL).

Scripts, on the other hand can listen to and "talk" on any chat channel, be it a positive one, or a negative one, within the complete range of channels from -2147483648 to 2147483647.

Chat messages can be a maximum of 1023 bytes; they are truncated past that.

A scripted prim cannot hear itself speak. Scripts listening in a linked prim, though, will hear the chat. Generally, though, communication between scripts in the same object is handled via llMessageLinked.

To "hear" chat, a script has to specifically initiate a "listen." A single script has a limit of 64 listens at any one time; beyond that it will emit a "Too Many Listens" squawk, and crash. The script can manage its listens, creating, releasing and disabling them.

Function Distance
llWhisper 10 metres
llSay 20 metres
llShout 100 metres
llRegionSay sim-wide

The distance that chat can be heard depends on the type of chat used, and where the speaker is. The sphere in which the chat can be heard is centered on the position of speaker, be that an avatar or a prim.

There is no way to lengthen or shorten the distance or direct it in any special direction.

llRegionSay is an exception. It can be heard anywhere in the sim but with the limitation that it cannot broadcast on channel 0 (aka PUBLIC_CHANNEL )[3].

User-created utility functions

•  mySay Cleaner chat messages on a user's screen
•  mySayOwner Cleaner chat messages on a user's screen (speaks to owner only)

Footnotes

  1. ^ This is a Linden Lab SL client feature and not part of the protocol; other clients may implement this differently or not at all.
  2. ^ This is likely just a limitation of the Linden Lab SL client and not an actual restriction; it should not be depended upon.
  3. ^ llRegionSay was introduced to eliminate the need for repeaters for scripted systems spread out over a large area.