V2 Groups/fr

From OpenSimulator

Revision as of 09:22, 8 September 2021 by Acryline (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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

Personal tools
General
About This Wiki