LlRegionSayTo - Second Life Wiki

LlRegionSayTo

From Second Life Wiki

Jump to: navigation, search

Contents

Summary

Function: llRegionSayTo( key target, integer channel, string msg );

Says the text supplied in string msg on channel supplied in integer channel to the object or avatar specified by target

• key target avatar or prim UUID that is in the same region
• integer channel output channel, any integer value except DEBUG_CHANNEL
• string msg message to be transmitted
Channel Constant Description
PUBLIC_CHANNEL 0x0 Chat channel used to broadcast to a specific user or prim.

Caveats

  • Messages sent on PUBLIC_CHANNEL are throttled to a rate of <200/10sec, per region, per owner/user.
    • Once the rate is exceeded, all following messages on PUBLIC_CHANNEL will be dropped until the send rate is again below 200/2sec for the previous 2 sec. Dropped messages, despite being dropped still count against the limit.
  • Text is spoken directly to the object or avatar within the same region as the script.
  • Scripts in tasks other than target can not listen and receive these text messages, with an exception for attachments described below.
  • Text can be a maximum of 1023 bytes.
  • A prim cannot hear itself, to prevent problems with recursion.
  • Sending text on DEBUG_CHANNEL is not supported
  • Text sent to an avatar's ID on channel zero will be sent to the viewer.
  • Text sent to an avatar's ID on non-zero channels can be heard by any attachment on the avatar
All Issues ~ Search JIRA for related Bugs

Examples

default
{
    touch_start(integer i)
    {
        llRegionSayTo(llDetectedKey(0), 0, "You touched this!");
    }
}

Notes

  • Channel 0 is the PUBLIC_CHANNEL. This should only be used for chat intended to be sent to the viewer.
  • If one object 'says' something to another object (e.g., a button that, when touched, turns on a lamp), it is a good idea to use a very negative channel, e.g.,
    llRegionSayTo("55499a64-45c3-4b81-8880-8ffb5a7c251b",-5243212,"turn on");

Negative channels are popular for script communications because the client is unable to chat directly on those channels ("/-xxxx message" won't chat "message" on channel "-xxxx", it will chat "/-xxxx message" on channel zero). The only way to do so prior to llTextBox was to use llDialog which was limited to 24 bytes.

See Also

Events

•  listen Receives chat

Functions

•  llListen Ask for listen events
•  llInstantMessage Sends chat to the owner only (or to some other user only) to avoid spamming the PUBLIC_CHANNEL
•  llOwnerSay Sends chat to the owner only to avoid spamming the PUBLIC_CHANNEL
•  llRegionSay Sends chat region wide
•  llSay Sends chat limited to 20 meters
•  llShout Sends chat limited to 100 meters
•  llWhisper Sends chat limited to 10 meters

Articles

•  Hello Avatar

Deep Notes

All Issues

~ Search JIRA for related Issues
   llRegionSayTo() Fails to send messages to attachments on sitting avatars
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.