Estate Support

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Database tables)
(Update info on estates)
 
(5 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
= Introduction =
 
= Introduction =
  
'''Documentation is a work-in-progress'''
+
Estates in OpenSimulator are supported either locally to each simulator or centralized through the estate connector. EstateData connection can be configured separately from normal database configuration as well.
  
Estates in OpenSimulator are supported at the simulator level - these are not stored in a ROBUST service.
+
Estates are supported in the region console, or when setting up a new estate when a new region is setup.  Commands for deletion of estates is currently not possible. At the moment, the only way to do this is by manipulating the region database directly.
  
Tools for manipulating estates in OpenSimulator are currently extremely poor. The only support in the console is a mechanism for setting up a new estate when a new region is setup. Commands for better managing estates (creation, deletion, change owner, etc.) must be added in the future. At the moment, the only way to do this is by manipulating the region database directly.
+
As of release 9.2.0 estates can be preconfigured via Estate.ini in Estates folder of a simulator allowing for full configuration without requiring console entry. See [http://opensimulator.org/viewgit/?a=commit&p=opensim&h=ce9f8804b6730a96429f8574642c33eb45357037 relevant commit] and [http://opensimulator.org/viewgit/?a=commit&p=opensim&h=a9697975123d8eab10cbd54569411c438ddbba98 this one]. Once set the database information takes precedence.
  
= Tasks =
+
=== Estate Commands ===
 +
* reload estate - reload estate data
 +
* estate link region <estate ID> <region ID> - Attaches the specified region to the specified estate.
 +
* estate show - This command will show the estate name, ID, and owner for regions currently running in the simulator. This list does not necessarily include all estates that are present in the database. 
 +
* estate set name <estate ID> <new name> - Rename an estate
 +
* estate set owner <estate ID> <FirstName> <LastName> - Change the owner of an estate. This command supports two forms; this one uses the owner's name.
 +
* estate set owner <estate ID> <owner UUID> - Change the owner of an estate. This command supports two forms; this one uses the owner's UUID.
 +
* estate create <owner UUID> <estate name> - Must be a user UUID which you can get from 'show names'
 +
 
 +
== Sample usage to change a Region to another Estate ==
 +
 
 +
# estate show
 +
Estate information for region TestRegion
 +
Estate Name ID Owner
 +
My Estate 103 Test User
 +
# show names
 +
UUID Name HomeURL
 +
00000000-0000-0000-0000-000000000000 Unknown User
 +
461efe20-c098-4685-ab41-ef761538d3bc Test User
 +
# estate create 461efe20-c098-4685-ab41-ef761538d3bc New Estate
 +
Estate 105 created as "New Estate"
 +
# estate link region 105 8c5fdd1b-d25a-4852-97b2-2369d5b99adf
 +
Region 8c5fdd1b-d25a-4852-97b2-2369d5b99adf is now attached to estate 105
 +
# estate show
 +
Estate information for region TestRegion
 +
Estate Name ID Owner
 +
New Estate 105 Test User
 +
 
 +
== Change the name of an Estate ==
 +
 
 +
An estate can be renamed through the "estate set name" command.
 +
# estate set name <estate ID> <new name>
 +
== Change the owner of an Estate ==
 +
An estate can have a new owner assigned through the "estate set owner" command.
 +
This command supports two forms, one using the owner's name, and one using the owner's ID.
 +
# estate set owner <estate ID> <FirstName> <LastName>
 +
# estate set owner <estate ID> <owner UUID>
  
'''TODO: Need to add more tasks as necessary for operations such as changing estate manager.'''
+
== Use a Viewer ==
  
== Determine who is the estate manager ==
+
Another option is to login to the OpenSimulator installation with a viewer and look at the "Covenant" tab of the "About Land" box.
  
One option (perhaps the usual) is to login to the OpenSimulator installation with a viewer and look at the "Covenant" tab of the "About Land" box.
+
== Database ==
  
Alternatively, one could execute the database command
+
Alternatively, one could execute the following database command to show owners of all estates referenced by the simulator:
  
 
  select PrincipalID, FirstName, LastName, EstateID, EstateName from UserAccounts, estate_settings as es where PrincipalID=es.EstateOwner;
 
  select PrincipalID, FirstName, LastName, EstateID, EstateName from UserAccounts, estate_settings as es where PrincipalID=es.EstateOwner;
  
to show owners of all estates referenced by the simulator.
+
= Tasks =
 +
 
 +
'''TODO: Need to add more tasks as necessary:
 +
  * delete estate
 +
'''
  
 
= Database tables =
 
= Database tables =
Line 66: Line 106:
  
 
Estate owners are now supported, but have to be entered in the database manually, since no support for this exists in the client. Set the EstateOwner field in estate_settings to the UUID of the user you want to be the estate owner. It will become effective in each region at the next region restart.
 
Estate owners are now supported, but have to be entered in the database manually, since no support for this exists in the client. Set the EstateOwner field in estate_settings to the UUID of the user you want to be the estate owner. It will become effective in each region at the next region restart.
 +
 +
== Preventing Minors from Adult Estates ==
 +
 +
If you need to block minors from entering an estate, see [[Minors_in_your_Grid|Minors in your Grid]].
  
 
== Fixing Estate IDs ==
 
== Fixing Estate IDs ==

Latest revision as of 15:02, 26 February 2022


Contents

[edit] Introduction

Estates in OpenSimulator are supported either locally to each simulator or centralized through the estate connector. EstateData connection can be configured separately from normal database configuration as well.

Estates are supported in the region console, or when setting up a new estate when a new region is setup. Commands for deletion of estates is currently not possible. At the moment, the only way to do this is by manipulating the region database directly.

As of release 9.2.0 estates can be preconfigured via Estate.ini in Estates folder of a simulator allowing for full configuration without requiring console entry. See relevant commit and this one. Once set the database information takes precedence.

[edit] Estate Commands

  • reload estate - reload estate data
  • estate link region <estate ID> <region ID> - Attaches the specified region to the specified estate.
  • estate show - This command will show the estate name, ID, and owner for regions currently running in the simulator. This list does not necessarily include all estates that are present in the database.
  • estate set name <estate ID> <new name> - Rename an estate
  • estate set owner <estate ID> <FirstName> <LastName> - Change the owner of an estate. This command supports two forms; this one uses the owner's name.
  • estate set owner <estate ID> <owner UUID> - Change the owner of an estate. This command supports two forms; this one uses the owner's UUID.
  • estate create <owner UUID> <estate name> - Must be a user UUID which you can get from 'show names'

[edit] Sample usage to change a Region to another Estate

# estate show
Estate information for region TestRegion
Estate Name ID Owner
My Estate 103 Test User
# show names
UUID Name HomeURL
00000000-0000-0000-0000-000000000000 Unknown User
461efe20-c098-4685-ab41-ef761538d3bc Test User
# estate create 461efe20-c098-4685-ab41-ef761538d3bc New Estate
Estate 105 created as "New Estate"
# estate link region 105 8c5fdd1b-d25a-4852-97b2-2369d5b99adf
Region 8c5fdd1b-d25a-4852-97b2-2369d5b99adf is now attached to estate 105
# estate show
Estate information for region TestRegion
Estate Name ID Owner
New Estate 105 Test User

[edit] Change the name of an Estate

An estate can be renamed through the "estate set name" command.

# estate set name <estate ID> <new name>

[edit] Change the owner of an Estate

An estate can have a new owner assigned through the "estate set owner" command. This command supports two forms, one using the owner's name, and one using the owner's ID.

# estate set owner <estate ID> <FirstName> <LastName>
# estate set owner <estate ID> <owner UUID>

[edit] Use a Viewer

Another option is to login to the OpenSimulator installation with a viewer and look at the "Covenant" tab of the "About Land" box.

[edit] Database

Alternatively, one could execute the following database command to show owners of all estates referenced by the simulator:

select PrincipalID, FirstName, LastName, EstateID, EstateName from UserAccounts, estate_settings as es where PrincipalID=es.EstateOwner;

[edit] Tasks

TODO: Need to add more tasks as necessary:

 * delete estate

[edit] Database tables

  • estate_groups - groups allowed on the estate.
  • estate_managers - managers of the estate.
  • estate_map - relates IDs of regions to the estate ID.
  • Estate_settings - holds all estate properties (estate owner, estate name, etc.).
  • estate_users - residents allowed in the estate.
  • estateban - residents banned from the estate.

[edit] Old notes

This is the old page contents. It may be useful for historical information.

[edit] SVN r5525 introduced estate support into OpenSimulator.

Updating to this or a later revison will create estate support in your instance. It will convert the previous settings file to a set of database tables.

[edit] The following tables are created

regionsettings (this will be dropped and recreated if it existed)
estate_settings
estate_map
estatebans
estate_users
estate_groups
estate_managers

These tables will be created in the region datastore by default.

On conversion, it will set up an environment as close as possible to what existed before.

It auto-creates one estate per region, with default estate IDs, starting from 100. All new estates will be parented by estate 100 as well. It then places the region in it, converts the old region bans to new estate bans for that estate and sets the new estate flags to defaults. All the information is saved in the database in the new tables.

Region settings are now really by region, no longer per instance.

This patch causes all regions to revert to the settings from estate_settings.xml. This will repair the loss of ground textures some people have reported with the last patch. However, per-region settings made with the last patch will revert to the settings from estate_settings.xml. This is a trade off and was done to make the most common migration case more robust.

[edit] Estate owners

Estate owners are now supported, but have to be entered in the database manually, since no support for this exists in the client. Set the EstateOwner field in estate_settings to the UUID of the user you want to be the estate owner. It will become effective in each region at the next region restart.

[edit] Preventing Minors from Adult Estates

If you need to block minors from entering an estate, see Minors in your Grid.

[edit] Fixing Estate IDs

Previous versions of OpenSimulator did automatically create estates with an EstateID equal to 1 and that ID is stored in the OpenSimulator database. Unfortunately SL based viewer do not work properly with EStateID values between 1 and 5, because these numbers are reserved for Linden Labs internal use.

In the Estate tab of the Estate Manager the estate managers and allowed and banned avatars lists are grayed out, for estates using these reserved EstateID values. To fix this problem, run the SQL statements below to adjust the EstateIDs the following way:

Old New
---------
1 --> 100
2 --> 101
3 --> 102
4 --> 103
5 --> 104

Execute the following command while OpenSimulator is not running:

mysql -u<user> -p<password> <database> < FixEstateID.sql

SQL statements in FixEstateID.sql:

UPDATE estate_groups SET EstateID=100 WHERE EstateID=1;
UPDATE estate_managers SET EstateID=100 WHERE EstateID=1;
UPDATE estate_map SET EstateID=100 WHERE EstateID=1;
UPDATE estate_settings SET EstateID=100 WHERE EstateID=1;
UPDATE estate_users SET EstateID=100 WHERE EstateID=1;
UPDATE estateban SET EstateID=100 WHERE EstateID=1;
UPDATE estate_groups SET EstateID=101 WHERE EstateID=2;
UPDATE estate_managers SET EstateID=101 WHERE EstateID=2;
UPDATE estate_map SET EstateID=101 WHERE EstateID=2;
UPDATE estate_settings SET EstateID=101 WHERE EstateID=2;
UPDATE estate_users SET EstateID=101 WHERE EstateID=2;
UPDATE estateban SET EstateID=101 WHERE EstateID=2;
UPDATE estate_groups SET EstateID=102 WHERE EstateID=3;
UPDATE estate_managers SET EstateID=102 WHERE EstateID=3;
UPDATE estate_map SET EstateID=102 WHERE EstateID=3;
UPDATE estate_settings SET EstateID=102 WHERE EstateID=3;
UPDATE estate_users SET EstateID=102 WHERE EstateID=3;
UPDATE estateban SET EstateID=102 WHERE EstateID=3;
UPDATE estate_groups SET EstateID=103 WHERE EstateID=4;
UPDATE estate_managers SET EstateID=103 WHERE EstateID=4;
UPDATE estate_map SET EstateID=103 WHERE EstateID=4;
UPDATE estate_settings SET EstateID=103 WHERE EstateID=4;
UPDATE estate_users SET EstateID=103 WHERE EstateID=4;
UPDATE estateban SET EstateID=103 WHERE EstateID=4;
UPDATE estate_groups SET EstateID=104 WHERE EstateID=5;
UPDATE estate_managers SET EstateID=104 WHERE EstateID=5;
UPDATE estate_map SET EstateID=104 WHERE EstateID=5;
UPDATE estate_settings SET EstateID=104 WHERE EstateID=5;
UPDATE estate_users SET EstateID=104 WHERE EstateID=5;
UPDATE estateban SET EstateID=104 WHERE EstateID=5;
Personal tools
General
About This Wiki