LlRequestUsername

来自人工智能助力教育知识百科
跳转至: 导航搜索

Template:Needs Translation/


函数名
Function: key llRequestUsername( key id );
参数:• key id – avatar UUID
返回值:请求由id标识的代理的用户名。当用户名可用时,将引发dataserver事件。由id标识的代理不需要在请求时处于同一区域或在线。

返回 a handle (a key),用于在引发dataserver事件时标识该事件。如果id不是化身的UUID,则不会引发dataserver事件。

如果名称在过去某段时间被更改,则只提供当前名称。

注意事项
如果您只是希望在查看器窗口中显示代理用户名,那么使用 Viewer URI Name Space 并避免dataserver事件可能会更直接,例如:
 llSay(0, "secondlife:///app/agent/" + (string)id + "/username");

这个函数是节流的。这个节流还没有正式记录,但截至2018年10月,该功能似乎支持最多20个请求的突发,每个所有者、每个地区平均每秒1.9个请求的持续使用。(这意味着该节流应用于该区域中具有相同所有者的所有对象。)一旦被绊倒,该函数就会失败并表示“llRequestUsername请求太多了”在DEBUG_CHANNEL上。

示例
示例1
key owner_name_query;
 
default
{
    state_entry()
    {
        owner_name_query = llRequestUsername(llGetOwner());
    }
 
    dataserver(key queryid, string data)
    {
        if ( owner_name_query == queryid )
        {
            llSay(0, "The username of the owner of this script : " + data);
        }
    }
}
相关函数
llGetUsername - 只对当前的头像有效

llRequestUserKey - 将名称转换为键的一般方法

相关事件
dataserver