UserProfiles

=Introduction= OpenSimulator 0.7.6 and onwards ships with built-in user profiles support. This supports the dialog-based user profiles seen in Singularity and similar third-party viewers, but not the purely web-based profiles seen in other viewers.

The system does not allow for the previous profile support mechanism to be shared with the built-in mechanism.

Before OpenSimulator 0.7.6, user profiles was supported using an externally added module. See Profile for more information.

=Enabling= Enabling the built-in user profiles support requires


 * 1) Configuration of the Service for a grid (in Robust.ini or Robust.HG.ini), or for a standalone (in StandaloneCommon.ini) as appropriate.
 * 2) Configuration in OpenSim.ini

=Configuration for a Grid Service= The user profiles service needs to be enabled and the connector set up so that the appropriate JSON RPC methods are available to simulators.

Enable service
This requires a UserProfilesService section. You should be able to use the one from Robust.ini.example (or Robust.HG.ini.example) with Enabled = true. For instance

[UserProfilesService] LocalServiceModule = "OpenSim.Services.UserProfilesService.dll:UserProfilesService" Enabled = true ;; Configure this for separate profiles database ;; ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;Old Guids=true;" ;; Realm = UserProfiles UserAccountService = OpenSim.Services.UserAccountService.dll:UserAccountService AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"

If it is desired to provide a separate database for the user profile data, then remove the leading ';' from ConnectionString and Realm, providing the needed values to connect the service to your data source. The data source must be created and configured for access before use.

Enable connector
In the [ServiceList] section of Robust.ini or Robust.HG.ini, this requires the connector to be set up on a port that is available to the simulators (and only the simulators). Usually, this would be the same private port on which other grid-only services are exposed. For instance

[ServiceList] UserProfilesServiceConnector = "8002/OpenSim.Server.Handlers.dll:UserProfilesConnector"

Publish Profile Server URI for HyperGrid
The [LoginService] section of the Robust.HG.ini file needs the connection details for the Profile Service so that foreign users will be able to view the profile of your users when they travel to other grids via HyperGrid. Set the value of SRV_ProfileServerURI to the URI your Profile Service is configured to use. See the following for example.

[LoginService] SRV_ProfileServerURI = http://example.com:8002

Configuration for Region Servers in OpenSim.ini
For each OpenSim region server (OpenSim.exe) the OpenSim.ini file needs to contain a [UserProfiles] section with a ProfileServiceURL set that the simulator can reach (not the viewer). For instance, if your grid services are on the same LAN as your region server(s) are running on a machine with IP address 192.168.1.3, then this setting would be

[UserProfiles] ProfileServiceURL = http://192.168.1.3:8002

See OpenSim.ini.example for more details.

= Configure for a Standalone Service = Configuring the Standalone simulator to make the built-in Profile Service available is accomplished by editing the StandaloneCommon.ini file in the bin/config-include directory.

Enable service
Find the [UserProfileService] section in your StandaloneCommon.ini and make the necessary changes for your site

[UserProfilesService] LocalServiceModule = "OpenSim.Services.UserProfilesService.dll:UserProfilesService" Enabled = true

;; Configure this for separate databse ; ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;" ; Realm = UserProfiles

UserAccountService = OpenSim.Services.UserAccountService.dll:UserAccountService AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"

The preceding example will enable the UserProfiles service using the main database for the profile tables. If a separate database is desired for the profiles data, remove the leading ';' from the ConnectionString and Realm entries. Provide the correct values to the ConnectionString for your profiles database. The data source must be created and configured for access before use.

Publish Profile Server URI for HyperGrid
If the Standalone is configured for HyperGrid operation, then the profile service URL will need to be published to allow foreign users to view your user's profiles when they travel to other grids. This is accomplished by setting the value of the SRV_ProfileServerURI which is found under the [LoginService] section in the StandaloneCommon.ini. For example

[LoginService] SRV_ProfileServerURI = http://example.com:8002

Configuration in OpenSim.ini
The OpenSim.ini file needs to contain a [UserProfiles] section with a ProfileServiceURL set, e.g.

[UserProfiles] ProfileServiceURL = http://127.0.0.1:9000

See OpenSim.ini.example for more details.

=Note= If you are using the built-in user profile, make sure you do not have another profile module in the bin folder (eg: OpenSimProfile module). This could cause errors.