V2 Groups/fr
From OpenSimulator
Contents |
Introduction
À partir de la version 0.7.6, OpenSimulator est livré avec un service de groupes de base. Celui-ci peut être utilisé à la place du service tiers XmlRpcGroups/Flotsam, bien que celui-ci reste supporté.
Veuillez noter que ce service est nouveau. Il peut contenir des bogues ou avoir des problèmes encore inconnus avec la mise à niveau pour les grandes grilles. Cette fonction n'est actuellement pas activée par défaut.
Configuration
Standalone
Dans OpenSim.ini, les paramètres suivants sont requis dans les modes Hypergrid et non-Hypergrid. Cela génère aussi la table des groupes dans la base de données utilisée pour votre installation Standalone.
[Groups] Enabled = true Module = "Groups Module V2" MessagingModule = "Groups Messaging Module V2"
Pour une installation non-Hypergrid, vous devrez également spécifier le connecteur de services en utilisant le code suivant
[Groups] ServicesConnectorModule = "Groups Local Service Connector"
Sur une installation Hypergrid, vous devrez le spécifier en utilisant
[Groups] ServicesConnectorModule = "Groups HG Service Connector"
Sur une installation Hypergrid, vous devrez effectuer les réglages supplémentaires suivants.
[Groups] LocalService = local ;HomeURI = http://example.com:8002 ; or HomeURI = "${Const|BaseURL}:${Const|PublicPort}"
Grille
Pour activer les groupes de base d'une grille, il faut configurer le fichier OpenSim.ini de chaque simulateur et activer les services ROBUST.
Simulateur
Dans OpenSim.ini, les paramètres suivants sont requis dans les modes Hypergrid et non-Hypergrid. Cela génère également la table des groupes dans votre base de données ROBUST.
[Groups] Enabled = true Module = "Groups Module V2" ;GroupsServerURI = http://example.com:8003 ; ou GroupsServerURI = ${Const|BaseURL}:${Const|PrivatePort} MessagingModule = "Groups Messaging Module V2"
Pour une installation non-Hypergrid, vous devrez également spécifier le connecteur de services en utilisant le code suivant
[Groups] ServicesConnectorModule = "Groups Remote Service Connector"
Sur une installation Hypergrid, vous devrez le spécifier en utilisant le code suivant
[Groups] ServicesConnectorModule = "Groups HG Service Connector"
Sur une installation Hypergrid, vous devrez effectuer les réglages supplémentaires suivants.
[Groups] LocalService = remote ;HomeURI = http://example.com:8002 ; or HomeURI = "${Const|BaseURL}:${Const|PublicPort}"
Services
Dans Robust.ini, vous devez activer le service des groupes de base.
[ServiceList] ;GroupsServiceConnector = "8003/OpenSim.Addons.Groups.dll:GroupsServiceRobustConnector" ; ou GroupsServiceConnector = "${Const|PrivatePort}/OpenSim.Addons.Groups.dll:GroupsServiceRobustConnector"
Migration
Le script ci-dessous a pour but d'aider à convertir les tables existantes de la base de données des groupes Flotsam ou des groupes jOpenSim (qui utilise Flotsam de toute façon) vers les nouvelles tables de groupe de base.
Différences entre les noms de tables
jOpenSim | Flotsam | V2 |
---|---|---|
jos_opensim_groupactive | osagent
* AgentID * ActiveGroupID |
os_groups_principals
* PrincipalID * ActiveGroupID |
jos_opensim_group | osgroup
* GroupID * Name * Charter * InsigniaID * FounderID * MemberShipFee * OpenEnrollment * ShowInList * AllowPublish * MaturePublish * OwnerRoleID |
os_groups_groups
* GroupID * Name * Charter * InsigniaID * FounderID * MembershipFee * OpenEnrollment * ShowInList * AllowPublish * MaturePublish * OwnerRoleID |
jos_opensim_groupinvite | osgroupinvite
* InviteID * GroupID * RoleID * AgentID * TMStamp |
os_groups_invites
* InviteID * GroupID * RoleID * PrincipalID * TMStamp |
jos_opensim_groupmembership | osgroupmembership
* GroupID * AgentID * SelectedRoleID * Contribution * ListInProfile * AcceptNotices |
os_groups_membership
* GroupID * PrincipalID * SelectedRoleID * Contribution * ListInProfile * AcceptNotices |
jos_opensim_groupnotice | osgroupnotice
* GroupID * NoticeID * Timestamp * FromName * Subject * Message |
os_groups_notices
* GroupID * NoticeID * TMStamp * FromName * Subject * Message |
jos_opensim_grouprolemembership | osgrouprolemembership
* GroupID * RoleID * AgentID |
os_groups_rolemembership
* GroupID * RoleID * PrincipalID |
jos_opensim_grouprole | osrole
* GroupID * RoleID * Name * Description * Title * Powers |
os_groups_roles
* GroupID * RoleID * Name * Description * Title * Powers |
Notes
Vous n'avez pas besoin de considérer le champ BinaryBucket dans la table flotsam osgroupnotice tant que vous n'avez pas appliqué le patch joint à Mantis #6699. Si vous l'avez appliqué, les informations suivantes vous aideront peut-être, si vous ne voulez pas perdre le contenu des nouvelles tables :
Décalage d'octet et description des données :
- 0: 1 octet indiquant si la pièce jointe est présente.
- 1: 1 octet indiquant le type de pièce jointe.
- 2: 16 octets - UUID du groupe
- 18: 16 octets - UUID du propriétaire de la pièce jointe
- 34: 16 octets - UUID de la pièce jointe.
- 50: variable - Nom de la pièce jointe
- ??: Octet NUL pour terminer le nom de la pièce jointe.
Cette information est copiée du patch original et décrit le format du contenu du champ BinaryBucket.
Flotsam
Utilisez ce script si vous utilisez les groupes Flotsam.
Le script (Remplacez ROBUSTDB par votre base de données ROBUST et FLOTSAMDB par votre base de données, contenant vos tables Flotsam !)
INSERT INTO `ROBUSTDB`.`os_groups_groups` (GroupID, Name, Charter, InsigniaID, FounderID, MembershipFee, OpenEnrollment, ShowInList, AllowPublish, MaturePublish, OwnerRoleID) SELECT GroupID, Name, Charter, InsigniaID, FounderID, MemberShipFee, OpenEnrollment, ShowInList, AllowPublish, MaturePublish, OwnerRoleID FROM `FLOTSAMDB`.osgroup; /*remplir os_groups_invites dans la base de données ROBUST avec les valeurs de osgroupinvite ou de FlotSam osgroupinvite*/ INSERT INTO `ROBUSTDB`.`os_groups_invites` (InviteID, GroupID, RoleID, PrincipalID, TMStamp) SELECT InviteID, GroupID, RoleID, AgentID, TMStamp FROM `FLOTSAMDB`.osgroupinvite; /*remplir os_groups_membership dans la base de données ROBUST avec les valeurs de osgroupmembership ou de FlotSam osgroupmembership*/ INSERT INTO `ROBUSTDB`.`os_groups_membership` (GroupID, PrincipalID, SelectedRoleID, Contribution, ListInProfile, AcceptNotices) SELECT GroupID, AgentID, SelectedRoleID, Contribution, ListInProfile, AcceptNotices FROM `FLOTSAMDB`.osgroupmembership; /*remplir os_groups_notices dans la base de données ROBUST avec les valeurs de osgroupnotice ou de FlotSam osgroupnotice*/ INSERT INTO `ROBUSTDB`.`os_groups_notices` (GroupID, NoticeID, TMStamp, FromName, Subject, Message) SELECT GroupID, NoticeID, Timestamp, FromName, Subject, Message FROM `FLOTSAMDB`.osgroupnotice; /*remplir os_groups_principals dans la base de données ROBUST avec les valeurs de osagent ou de FlotSam osagent*/ INSERT INTO `ROBUSTDB`.`os_groups_principals` (PrincipalID, ActiveGroupID) SELECT AgentID, ActiveGroupID FROM `FLOTSAMDB`.osagent; /*remplir os_groups_rolemembership dans la base de données ROBUST avec les valeurs de osrolemembership ou de FlotSam osgrouprolemembership*/ INSERT INTO `ROBUSTDB`.os_groups_rolemembership (GroupID, RoleID, PrincipalID) SELECT GroupID, RoleID, AgentID FROM `FLOTSAMDB`.osgrouprolemembership; /*remplir os_groups_roles dans la base de données ROBUST avec les valeurs de osroles ou de FlotSam osrole*/ INSERT INTO `ROBUSTDB`.os_groups_roles (GroupID, RoleID, Name, Description, Title, Powers) SELECT GroupID, RoleID, Name, Description, Title, Powers FROM `FLOTSAMDB`.osrole;
jOpenSim
Utilisez ce script si vous utilisez les groupes jOpenSim.
Le script (Remplacez ROBUSTDB par votre base de données ROBUST et FLOTSAMDB par votre base de données, contenant vos tables jOpenSim !)
/* Script SQL pour convertir les tables de groupes de Flotsam Groups (base de données de groupes) ou jOpenSim (tables dans la base de données Joomla) vers les nouveaux groupes V2, qui font partie du noyau d'OpenSimulator à partir de la branche 0.7.6. /* Tables FlotSam dernière version à partir de https://github.com/mcortez/flotsam/tree/master/flotsam/Servers/XmlRpcGroupsServer/ Commit-No. : 18275462c9*/ /* Version jOpenSim Version: 0.2.6.4*/ /*remplir os_groups_groups dans la base de données ROBUST avec les valeurs de jos_opensim_groups ou de FlotSam osgroup*/ INSERT INTO `ROBUSTDB`.`os_groups_groups` (GroupID, Name, Charter, InsigniaID, FounderID, MembershipFee, OpenEnrollment, ShowInList, AllowPublish, MaturePublish, OwnerRoleID) SELECT GroupID, Name, Charter, InsigniaID, FounderID, MemberShipFee, OpenEnrollment, ShowInList, AllowPublish, MaturePublish, OwnerRoleID FROM `FLOTSAMDB`.jos_opensim_group; /*remplir os_groups_invites dans la base de données ROBUST avec les valeurs de jos_opensim_groupinvite ou de FlotSam osgroupinvite*/ INSERT INTO `ROBUSTDB`.`os_groups_invites` (InviteID, GroupID, RoleID, PrincipalID, TMStamp) SELECT InviteID, GroupID, RoleID, AgentID, TMStamp FROM `FLOTSAMDB`.jos_opensim_groupinvite; /*remplir os_groups_membership dans la base de données ROBUST avec les valeurs de jos_opensim_groupmembership ou de FlotSam osgroupmembership*/ INSERT INTO `ROBUSTDB`.`os_groups_membership` (GroupID, PrincipalID, SelectedRoleID, Contribution, ListInProfile, AcceptNotices) SELECT GroupID, AgentID, SelectedRoleID, Contribution, ListInProfile, AcceptNotices FROM `FLOTSAMDB`.jos_opensim_groupmembership; /*remplir os_groups_notices dans la base de données ROBUST avec les valeurs de jos_opensim_groupnotice ou osgroupnotice de FlotSam*/ INSERT INTO `ROBUSTDB`.`os_groups_notices` (GroupID, NoticeID, TMStamp, FromName, Subject, Message) SELECT GroupID, NoticeID, Timestamp, FromName, Subject, Message FROM `FLOTSAMDB`.jos_opensim_groupnotice; /*remplir os_groups_principals dans la base de données ROBUST avec les valeurs de jos_opensim_groupactive ou de FlotSam osagent*/ INSERT INTO `ROBUSTDB`.`os_groups_principals` (PrincipalID, ActiveGroupID) SELECT AgentID, ActiveGroupID FROM `FLOTSAMDB`.jos_opensim_groupactive; /*remplir os_groups_rolemembership dans la base de données ROBUST avec les valeurs de jos_opensim_grouprolemembership ou de FlotSam osgrouprolemembership*/ INSERT INTO `ROBUSTDB`.os_groups_rolemembership (GroupID, RoleID, PrincipalID) SELECT GroupID, RoleID, AgentID FROM `FLOTSAMDB`.jos_opensim_grouprolemembership; /*remplir os_groups_roles dans la base de données ROBUST avec les valeurs de jos_opensim_grouproles ou de FlotSam osrole*/ INSERT INTO `ROBUSTDB`.os_groups_roles (GroupID, RoleID, Name, Description, Title, Powers) SELECT GroupID, RoleID, Name, Description, Title, Powers FROM `FLOTSAMDB`.jos_opensim_grouprole; /*remplir os_groups_roles dans la base de données ROBUST avec les valeurs de jos_opensim_offlinemessages --> pas de table correspondante dans FlotSam -- s'applique uniquement à jOpenSim*/ INSERT INTO `ROBUSTDB`.im_offline (PrincipalID, Message, TMStamp) SELECT fromAgentID, Message, sent FROM `FLOTSAMDB`.jos_opensim_offlinemessages;
Plus d'informations sur jOpenSim migration from Groups V2