Difference between revisions of "LlGetUsername"

From Second Life Wiki
Jump to navigation Jump to search
(This one can return "" too.)
m
Line 1: Line 1:
{{LSL_Function
{{LSL_Function
|inject-2={{LSL_Function/avatar|id|sim=known}}
|inject-2={{LSL_Function/avatar|id|sim=known}}
|func_id=NNN|func_sleep=0.0|func_energy=10.0
|func_id=358|func_sleep=0.0|func_energy=10.0
|sort=GetUsername|func=llGetUsername
|sort=GetUsername|func=llGetUsername
|return_type=string|p1_type=key|p1_name=id
|return_type=string|p1_type=key|p1_name=id

Revision as of 00:01, 9 December 2010

Summary

Function: string llGetUsername( key id );
0.0 Forced Delay
10.0 Energy

Returns a string that is the unique username of the avatar specified by id.

• key id avatar UUID that is in the same region or is otherwise known to the region

id must specify a valid avatar key, present in or otherwise known to the sim in which the script is running, otherwise an empty string is returned. This function will still return a valid username if the avatar is a child agent of the sim (i.e., in an adjacent sim, but presently able to see into the one the script is in), or for a short period after the avatar leaves the sim (specifically, when the client completely disconnects from the sim, either as a main or child agent).

Caveats

  • To get around the "avatar must be present" limitation, you can use the llRequestUsername function and the dataserver event to obtain the avatar's username from a key.
  • There is no opposite function (llUsername2Key) available. For Name2Key services see llKey2Name.
  • "" can be returned if the region is unable to resolve the username. This can happen even if the avatar is present and display names are enabled on the region. Do not rely on this function to verify avatar presence.

Examples

<lsl>// Best viewed in Chat History (ctrl-h) default {

   collision_start(integer a)//Announce who collided
   {
       llSay(0, "llGetDisplayName: " + llGetDisplayName(llDetectedKey(0)) +
              "\nllGetUsername: " + llGetUsername(llDetectedKey(0)));
   }
   touch_start(integer a)
   {
       llSay(0,"llGetDisplayName: " + llGetDisplayName(llDetectedKey(0)) +
              "\nllGetUsername: " + llGetUsername(llDetectedKey(0)));
   }
}</lsl>

See Also

Functions

•  llGetDisplayName
•  llRequestUsername Uses the dataserver to request avatar information

Deep Notes

Signature

function string llGetUsername( key id );