What is SlUser ?

SlUser is a set of modules to map SecondLife / OpenSim users
to Drupal's site users.

Actually, the modules are :

  • SlUser ( main module to allow user to validate his account
    entering a special key on a "terminal" inworld )
  • SlReguser ( allow the users to register on the website
    within inworld )
  • SlPoints ( use this module with "userpoints" to allow users
    to buy points from inworld with L$ )
Where to download SlUser ?

You can find it here

What are the requirements ?

You need to have a Drupal 6 website and the module named
secondlife that you can find href="http://drupal.org/node/122669/release">there
( more infos about the secondlife framework can be found href="http://drupal.org/node/350606">there )

How to install ?

Drupal side :

Use the normal Drupal's module installation :

  • untar the tarball
  • copy the folder to sites/all/modules
  • go to admin/build/modules and check the module(s) (seen
    under
    "secondlife" ) then save the page
  • go to the admin settings : style="font-weight: bold;">admin/settings/secondlife/sluser
  • define a password
  • define the roles to use for the new user (if needed)

Inworld side :

Go "inworld" to create the "terminal" :

  • create a box
  • add a script inside
  • copy / paste the code located in the
    sluser/lsl/terminal.lsl
    ( use a text editor to open the file )
  • add your site url to : string url = ""; ( example
    : string url = "http://mysite.com"; )
  • add the password previously set in the Drupal's admin panel
    to : string password =
    "0000"; ( replace the 0000 for sure ... )
  • save the script and close the script editor
  • add another script in the same box
  • copy / paste the code located in the
    sluser/lsl/simple_dialog_module.lsl
  • save the script and close the script editor
  • add another script in the same box
  • copy / paste the code located in the
    sluser/lsl/reg_key.lsl
  • save the script and close the script editor
  • touch the box and choose "reset" on the menu appearing
  • touch again the box and choose "register" on the menu
    appearing
  • the box should connect to the site and answer : "New
    terminal added" ( or updated if already exists )
  • then leave the box somewhere inworld forever...

User side :

  • Users are registering on the site using the normal Drupal's
    way.
  • Then, on the user's profile page, the user can see a "reg
    key" ( in the "edit user" tab the user can renew the reg key if needed
    )
  • The user should go to the page : style="font-weight: bold;">sluser/terminals to
    see
    the terminals list and a link to teleport to one of them
  • When the user is near the terminal, he/she touches the
    terminal that shows him/her a menu.
  • The user clicks on the "reg key" menu button then the chat
    is asking : "Enter your reg code please"
  • So the user is pasting his/her reg code in the main chat (
    no
    problem to show it because it is linked to the Drupal's profile )
  • Then the terminal checks the website and answer : "User
    updated"

So now, the user is linked to the Drupal's website.

What about the other optional modules ?

SlReguser

This modules allows the user to register on the website from
inworld.

Drupal side :

The website needs to allow user registration (for sure).

There is nothing to do on the website to configure, except
installing the module.

Inworld side :

  • go to a terminal that you have made previously
  • edit the terminal and add a new script
  • copy / paste the code located in the
    sluser/slreguser/lsl/slreguser.lsl
  • save the script and close the script editor
  • create a notecard and name it : register
  • add this text in the notecard :
username =
password = 
email = 
  • add this notecard inside the terminal style="font-weight: bold;">
  • touch the box and choose "reset" on the menu appearing
  • touch again the box and choose "register" on the menu
    appearing
  • the box should connect to the site and answer : "New
    terminal added" ( or updated if already exists )
  • then leave the box somewhere inworld forever...

User side :

  • The user is walking in the land and suddenly sees a
    terminal ( or goes to the site page sluser/terminals
    to see
    the terminals list and a link to teleport to one of them )
  • The user is clicking on the terminal and choose
    ""Get
    reg card"" in the menu.
  • The terminal is giving the notecard previously made to give
    him a premade one
  • The user fills the notecard with the values needed
  • The user clicks on the terminal and choose "reg user"
  • The terminal says : "You have 30 seconds to drag your
    notecard"
  • The user drags the notecard to the terminal
  • The terminal checks the values against the website and if
    everything is fine, it answers that everything went fine.

SlPoints

Drupal side :

  • Install the module named "userpoints" that you can find href="http://drupal.org/project/userpoints" target="_blank">here
    and then install the module slpoints.
  • Go to admin/settings/secondlife/sluser
    and change the amount of points if needed ( by default : 1L$ = 1point )

Inworld side :

  • go to a terminal that you have made previously
  • edit the terminal and add a new script
  • copy / paste the code located in the
    sluser/slpoints/lsl/slpoints.lsl
  • save the script and close the script editor
  • touch the box and choose "reset" on the menu appearing
  • the terminal is asking you debt authorization ( to refund
    users if any  problem )
  • touch again the box and choose "register" on the menu
    appearing
  • the box should connect to the site and answer : "New
    terminal added" ( or updated if already exists )
  • then leave the box somewhere inworld forever...

User side :

  • The user goes to the terminal and clicks on it
  • The user choses "add money" in the menu
  • The user have 30 seconds to "pay" the terminal
  • The terminal checks the values on the website
  • If everything is fine, the user is credited with points
  • if not, the terminal refunds the user
Other lsl scripts available

About

The "about.lsl" script shows a message to the user and a link to the
website.

Drupal side :

Nothing to do, this script is not linked to the website.

Inworld side :

  • go to a terminal that you have made previously
  • edit the terminal and add a new script
  • copy / paste the code located in the
    sluser/lsl/about.lsl
  • save the script and close the script editor ( you can
    change the sentences about_text_1 and about_text_2 if needed )
  • touch the box and choose "reset" on the menu appearing
  • touch again the box and choose "register" on the menu
    appearing
  • the box should connect to the site and answer : "New
    terminal added" ( or updated if already exists )
  • then leave the box somewhere inworld forever...

User side :

  • The user clicks on the terminal and choose "about" from the
    menu
  • The menu displays the text and purposes a link to the
    website
  • The user clicks on the link and a link menu appear to go to
    the website

notecard giver

Drupal side :

Nothing to do, this script is not linked to the website.

Inworld side :

  • go to a terminal that you have made previously
  • edit the terminal and add a new script
  • copy / paste the code located in the
    sluser/lsl/notecard_giver.lsl
  • save the script and close the script editor ( you can
    change the notecard name using the variable : string notecard_name =
    "readme"; if needed )
  • create a notecard named "readme" and add your text inside,
    then drag the notecard inside the terminal
  • touch the box and choose "reset" on the menu appearing
  • touch again the box and choose "register" on the menu
    appearing
  • the box should connect to the site and answer : "New
    terminal added" ( or updated if already exists )
  • then leave the box somewhere inworld forever...

User side :

  • The user goes to the terminal and clicks on it then choose
    the menu button "get notecard"
  • The terminal gives the notecard named "readme"