Ryo Pasternak (Ryo Pasternak) 4 years ago
Hi!

Where I can found a most complete Light Bus protocol specification?
At current time (May 2019) there is no any information about protocol commands (and lack of examples):
- "ping" (reply format)
- "add" (where is a device list, for example what is a "add booth" from stand)
- "block-holo" (from stand)
- "navigate arrive" (from charger)
- "charge <number>" (from wireless charger)
etc.

What is the best practice in protocol use, for example what is a recommended function to use in the which case: llSay, llWhisper or llRegionSay?

Thank you!
Rhetorica (rhet0rica) 4 years ago
Out of those messages, only 'block-holo' is actually a light bus message. The rest are sent over the public bus.

Send llRegionSayTo() whenever possible. Keep in mind that you can discover the avatar's controller by sending llRegionSayTo() to the avatar. It will reach all of the avatar's attachments as long as the channel isn't 0.

llWhisper(), llSay(), and llShout() should only be used whenever a deliberate range-based effect is relevant (such as a wireless charger with a limited radius of effect.) Calculating distance is very costly. SL checks message reception by filtering on channel before doing the computationally-intense step of distance calculation, so llRegionSay() is ideal when using a private channel with multiple (or unknown) recipients, unless all of the recipients are attachments on the same avatar.

Updated documentation for the public bus is here: http://develop.nanite-systems.com/public
Updated documentation for the light bus is here: http://develop.nanite-systems.com/light_bus