MantisBT - opensim
View Issue Details
0008369opensim[REGION] Script Functionspublic2018-09-13 03:502019-10-25 15:53
djphil 
 
normalminorhave not tried
patch includedreopened 
PCWindows10
 
 
Grid (Multiple Regions per Sim)
ubODE
.NET / Windows64
None
Firestorm
0008369: [PATCH] llRequestUserKey not implemented
See http://wiki.secondlife.com/wiki/LlRequestUserKey [^]
No tags attached.
diff llRequestUserKey-Reimplemented.diff (6,141) 2019-10-07 07:50
http://opensimulator.org/mantis/file_download.php?file_id=4894&type=bug
Issue History
2018-09-13 03:50djphilNew Issue
2018-09-13 03:50djphilPhysics EngineBulletSim => ubODE
2018-09-22 06:15Mandarinka TastyFile Added: 0001-llRequestUserKey-implementation.patch
2018-09-22 06:22Mandarinka TastyNote Added: 0033049
2018-09-22 06:22Mandarinka TastyStatusnew => patch included
2018-09-22 06:22Mandarinka TastyNote Edited: 0033049bug_revision_view_page.php?bugnote_id=33049#r6717
2018-09-22 06:23Mandarinka TastyNote Edited: 0033049bug_revision_view_page.php?bugnote_id=33049#r6718
2018-09-22 09:51djphilNote Added: 0033050
2018-09-23 05:49Mandarinka TastyNote Added: 0033052
2018-09-24 00:51BillBlightNote Added: 0033055
2018-09-24 13:09Mandarinka TastyNote Added: 0033057
2018-09-26 06:38Fly-Man-Summary[SCRIPT FUNCTION] llRequestUserKey not implemented => [PATCH] llRequestUserKey not implemented
2019-10-07 06:47tampaNote Added: 0035713
2019-10-07 07:33UbitUmarovNote Added: 0035714
2019-10-07 07:50tampaFile Added: llRequestUserKey-Reimplemented.diff
2019-10-07 07:50tampaNote Added: 0035715
2019-10-07 08:53UbitUmarovNote Added: 0035716
2019-10-25 14:49Mandarinka TastyFile Deleted: 0001-llRequestUserKey-implementation.patch
2019-10-25 14:50Mandarinka TastyNote Added: 0035784
2019-10-25 14:50Mandarinka TastyStatuspatch included => resolved
2019-10-25 14:50Mandarinka TastyResolutionopen => won't fix
2019-10-25 14:50Mandarinka TastyAssigned To => Mandarinka Tasty
2019-10-25 15:40tampaNote Added: 0035786
2019-10-25 15:40tampaStatusresolved => patch included
2019-10-25 15:51UbitUmarovAssigned ToMandarinka Tasty =>
2019-10-25 15:53UbitUmarovResolutionwon't fix => reopened

Notes
(0033049)
Mandarinka Tasty   
2018-09-22 06:22   
(edited on: 2018-09-22 06:23)
Hello) I have written the implementation of llRequestUserKey(string username).

Here is an example of a school script to test it in-world:

integer a;
integer chan;
key toucher;
string name;
default
{
    touch_start(integer num)
    {
        if(a == 0)
        {
            a=1;
            chan = (integer)llFrand(DEBUG_CHANNEL) * -1;
            toucher = llDetectedKey(0);
            llTextBox(toucher,"\nTo receive the user's key\nplease type resident's name in a box below:\n",chan);
            llListen(chan,"",toucher,"");
            llSetTimerEvent(30);
        }
        else
        {
            if(llDetectedKey(0) != toucher)
            {
                llRegionSayTo(llDetectedKey(0),0,"\n\nPlease wait a moment.Busy with another resident.\n");
            }
        }
    }
    listen(integer Channel,string Name,key ID,string Text)
    {
        name = Text;
        llRequestUserKey(name);
    }
    dataserver(key RequestID,string Data)
    {
        if(Data != NULL_KEY)
        {
            llRegionSayTo(toucher,0,"\n\n"+name+"'s key is: "+Data+"\n");
        }
        else
        {
            llRegionSayTo(toucher,0,"\n\nResident: "+name+" doesn't exist.\n");
        }
        llResetScript();
    }
    timer()
    {
        llSetTimerEvent(0);
        llRegionSayTo(toucher,0,"\n\nSession has expired. Try again later.\n");
        llResetScript();
    }
}

That new function returns userkey of any avatar, not only located in the scene, script is in, but also located in other scenes and offline as well.

One can also return the key of the foreign user avatar, certainly under condition, that appropriate hypergrid service has been enabled on the foreign grid side.

I'd like you to test this patch and I'd be very grateful for that)

The supported cases are: username = "FirstName LastName"
or username = "FirstName.LastName"

So suggested tests are:

John Smith
John.Smith
John.Smith @john.grid.com
John.Smith.@john.grid.com

The technique I have applied here, varies from the very last patch of llName2Key, since I do not proceed scan of any grid database to compare strings.

(0033050)
djphil   
2018-09-22 09:51   
Thank you man, it's super nice :)
(0033052)
Mandarinka Tasty   
2018-09-23 05:49   
@djphil ) I'm glad, you have liked it :)
(0033055)
BillBlight   
2018-09-24 00:51   
@Mandarinka, I tested your suggested tests and can confirm they work.
(0033057)
Mandarinka Tasty   
2018-09-24 13:09   
@watcher ) Thank you very much for your tests.
(0035713)
tampa   
2019-10-07 06:47   
Recent changes on master broke this patch, it did not apply before that, but that was solvable, the recent change however makes the patch fail to build. Ubit removed the UserAgentConnector method it uses and so on build it fails to connect with that method. The patch thus needs a rewrite against current master to apply and build again.
(0035714)
UbitUmarov   
2019-10-07 07:33   
we still didnt add that function
those using that patch please replace line

UserAgentServiceConnector userConnection = new UserAgentServiceConnector(serverURI, true);

by

UserAgentServiceConnector userConnection = new UserAgentServiceConnector(serverURI);

(ie remove the true parameter no longer in usage)
(0035715)
tampa   
2019-10-07 07:50   
I added a reimplemented patch that builds against master
(0035716)
UbitUmarov   
2019-10-07 08:53   
Thanks
(0035784)
Mandarinka Tasty   
2019-10-25 14:50   
I've removed the original patch of mine.
(0035786)
tampa   
2019-10-25 15:40   
I don't know what happened here, but this is neither resolved nor said to be "won't fix", re-opening

@Mandarinka Tasty I don't know why you did this, but this is not how this should be handled at all, please don't resolve issues that you did not open nor actually have any control over, especially not marking them as "won't fix" just because YOU don't want to fix them.