Sticky: How to sync Joomla! users with Opensim accounts
Notes: You\'ll need to open or scroll the image boxes to see the new functions as pictured.
New: v 0.1.8 RC3 release Joomla! 1.5X Required.
We\'re going to jump right in and get this going without further ado.
Back-end
=======
1) In the Joomla administrator, you will need to configure your settings by going to > Settings > Add-on
As the below picture describes you need to select (IAI) or In-world Account Identification and input the channel and time limit for access to update and sync the accounts.
[attachment=7:1i66azye]<!-- ia7 settings.png<!-- ia7 [/attachment:1i66azye]
2) Under \"Misc\" you now have a new area called Manage Terminals. Click the link and you should see something as the below picture describes. First we have the name of the terminal. This is brought into Joomla! when you select the name for the prims that you want to be a terminal within the lsl conguration, and rezz the terminal in-world. Also described as shown in the picture below the \"Region, SLURL, Whether it is active or not, Automatic Update, and a Ping Terminal box.
[attachment=6:1i66azye]<!-- ia6 misc.png<!-- ia6 [/attachment:1i66azye]
You can deactivate the terminal, turn off or on automatic updates, or ping the in-world terminal from this page to verify the proper communication. Once you have a terminal active in-world and it shows up, you will test it by pinging the terminal. More on the terminal and the script itself below.
Front-end
========
When a new user registers with your Joomla! site, they are not automatically registered for an OpenSimulator account. They will need to register with the OpenSimulator grid prior to being able to login. Within the users \"Create your own OpenSim account\" you will see a new setting called \"Identify In-world\" as the picture below shows.
[attachment=5:1i66azye]<!-- ia5 user1.png<!-- ia5 [/attachment:1i66azye]
The user can either register if they have not done so, or use the in-world identification method of registering with the Joomla and OpenSim databases. Clicking on \"Identify Inworld\" will bring up available on-line terminals in-world and display the following:
[attachment=4:1i66azye]<!-- ia4 identify.png<!-- ia4 [/attachment:1i66azye]
1) Your own Identification link with channel /8271 identify 3d4096ba-2ff2-11e0-b51b-fefdade68c78 (as we have configured)
2) A cancellation button to cancel the registration
3) The name of the terminal, the region the terminal is located in, and the SLURL.
Below this is a brief description of how to use the link. It states the following:
\"You can copy this Link and paste it in the chat of your OpenSim viewer. This will then open a small map and the possibility to teleport there.\"
Below are snapshots of what this looks like In-world, after using the SLURL to teleport to the Terminal. and what you will see for front end account information once completed.
In-World
======
We copy and paste our identification into the chat box. /8271 identify 3d4096ba-2ff2-11e0-b51b-fefdade68c78 and hit enter. The below snapshots will show what you should be seeing if everything is working alright.
Submitting our link to the terminal after teleporting:
[attachment=3:1i66azye]<!-- ia3 term1.png<!-- ia3 [/attachment:1i66azye]
And if all goes well:
The picture below shows the response from the terminal. If successful you should see as it shows.
[attachment=2:1i66azye]<!-- ia2 term2.png<!-- ia2 [/attachment:1i66azye]
After you have synced your Joomla and OpenSimulator accounts in-world, you will also be able to confirm that the process has taken place by reviewing your \"User Relation\" in the User Management section of the JOpenSim back-end. You should have now successfully synced the Joomla! and OpenSimulator accounts.
Now that your account has been synced, your front-end account page will revert to the standard form and the information for syncing the accounts will be removed automatically.
The LSL Terminal Script - \"jOpenSimTerminal.lsl\" (c) Foto50.com
==================================================
For any of this to work, you must have the \"Foto50\" LSL script placed in a prim, or set of prims that you would use for the terminal. You must configure the top part of the script so that it reflects your settings.
[attachment=1:1i66azye]<!-- ia1 lsl.png<!-- ia1 [/attachment:1i66azye]
The top lines will have three settings that need configured. Your URL to the interface.php, the listening channel you configured as described above, and the terminal description.
string targetUrl = \"http://mysite.org/web/components/com_opensim/interface.php\"; // this is the target script, handling the requests
integer listenchannel = 8271; // Channel for the Tracker to listen to
string terminalDescription = \"Primgrid Terminal\"; // This will appear as a brief description at the \"Terminal Link List\" of jOpenSim
// nothing interesting to change below this point!!!
You can copy and use the script for as many terminals as you like. The LSL script is located in the archived component under lsl-scripts with the name \"jOpenSimTerminal.lsl\". Once you have the script placed in a prim, click on the prim for a dialog menu pull down, it is very simple, the question asked is \"Show this terminal in JOpenSim?\" When clicking yes, the terminal will sync with the JOpenSim component and show up under available terminals in-world from the back-end as shown above. And if you click no, you will have disabled the terminal and this too will show from the Joomla Administrator.
Note: A good recommendation after my testing would be to place a terminal in no more than one a sim, or spread it out to various sims across your grid. Remember that the system is grid wide and the user will have the opportunity to teleport to any number of listed terminal hubs. Also, that the script is configured to only allow the owner of the prim and script to have any access upon clicking. So no one else can click on the prims and configure your terminals.
If you would like to have the actual prim terminal to place your scripts in, join the Foto50.com Test Grid and you will find the terminal full permission in the freebie section upon landing. Just take a copy and rezz it, use Meerkat or another viewer to backup to xml the terminal prims. Super huge usb 2.0 port and memory card reader included. (usb cable purchased seperately)
<img src=\"{SMILIES_PATH}/icon_lol.gif\" alt=\"
\" title=\"Laughing\" />
Terminal shot:
[attachment=0:1i66azye]<!-- ia0 term3.png<!-- ia0 [/attachment:1i66azye]
The script is open source of course, but please leave the Foto50.com script headers. If you have any submissions to make the script better, or if you see any security or other related issues with the script, please help us by posting here, or contacting us so we can better the script.
There is also a function for \"Repair User Status\" for reassembling/correcting broken relations. I didn\'t get into this here, but it\'s pretty much self-explanatory.
Final Notes: Be sure to use your own unique transmission channels and set proper permissions on the scripts and the prims they reside in. You don\'t want to allow access to the script as it provides information as to your configuration for said terminals.
This is just a brief tutorial on how the new user relation part of v0.1.8 RC3 works via the new functionality. You can still manually sync and manage user relations if you so choose. If you have any questions, please be sure to ask. For any updates or corrections, I\'ll add a note with time and date above the updates/corrections.
Please be sure to checkout the other new functionality of this revision such as the beginning work on group management function.
For a detailed overview and instructional walk through of the entire JOpenSIm component for Joomla!, please create an account on the Foto50.com test grid and login. There you will find a step-by-step visual walk-through of the configuration, and administration of the component.
More to look forward to: Next release if possible, JOpenSim event integration.
Special thanks to Foto50 for working diligently towards better user relation parameters for JOpenSim.
Update: Up next, events it appears.