meeting
Représente une réunion planifiée au sein d'un cercle. Les réunions prennent en charge des étapes structurées, le suivi des participants et l'intégration de visioconférence, et peuvent être ponctuelles ou faire partie d'une série récurrente.
Champs
| Champ | Type | Description |
|---|---|---|
id | uuid | Identifiant unique de la réunion |
orgId | uuid | Référence à l'organisation |
circleId | uuid | Référence au cercle |
title | String | Titre de la réunion |
summary | String | Résumé ou notes de la réunion |
startDate | Timestamp | Date et heure de début de la réunion |
endDate | Timestamp | Date et heure de fin de la réunion |
createdAt | Timestamp | Date de création de la réunion |
ended | Boolean | Indique si la réunion est terminée (par défaut : false) |
archived | Boolean | Indique si la réunion est archivée (par défaut : false) |
private | Boolean | Indique si la réunion est privée (par défaut : false) |
invitedReadonly | Boolean | Indique si les membres invités sont en lecture seule (par défaut : false) |
currentStepId | uuid | ID de l'étape active actuelle (optionnel) |
stepsConfig | [meeting_step_config] | Tableau de configuration définissant la structure de la réunion |
videoConf | videoconf | Détails de la visioconférence (optionnel) |
recurringId | uuid | Référence à la configuration de réunion récurrente (optionnel) |
recurringDate | Timestamp | Date dans la série récurrente (optionnel) |
Relations
Relations objet :
org— L’organisation à laquelle cette réunion appartientcircle— Le cercle auquel cette réunion est associéerecurring— La configuration de réunion récurrente (si elle fait partie d’une série)
Relations tableau :
meeting_attendees— Membres participant à la réunionsteps— Étapes ou points de l’ordre du jour de la réunion
Exemples de requêtes
Lister les réunions d’une organisation
query GetMeetings($orgId: uuid!) {
meeting(where: { archived: { _eq: false }, orgId: { _eq: $orgId } }) {
id
title
startDate
endDate
ended
circle {
role {
name
}
}
meeting_attendees {
member {
name
}
present
}
steps {
id
data
}
videoConf
}
}
Obtenir une réunion spécifique
query GetMeeting($id: uuid!) {
meeting_by_pk(id: $id) {
id
title
startDate
endDate
circle {
role {
name
}
}
}
}
Exemples de mutations
Créer une réunion
mutation CreateMeeting {
insert_meeting_one(
object: {
orgId: "your-org-id"
circleId: "circle-id"
title: "Weekly Team Sync"
startDate: "2024-01-15T10:00:00Z"
endDate: "2024-01-15T11:00:00Z"
summary: "Team sync meeting"
stepsConfig: [
{ id: "step-1", type: Tour, title: "Notes" }
{ id: "step-2", type: Threads, title: "Topics" }
{ id: "step-3", type: Checklist, title: "Checklist" }
{ id: "step-4", type: Indicators, title: "Indicators" }
{ id: "step-5", type: Tasks, title: "Tasks" }
]
private: false
invitedReadonly: false
meeting_attendees: {
data: [{ memberId: "member-id-1" }, { memberId: "member-id-2" }]
}
}
) {
id
title
startDate
}
}
Mettre à jour le statut d’une réunion
mutation UpdateMeeting {
update_meeting_by_pk(
pk_columns: { id: "meeting-id" }
_set: { ended: true, summary: "Meeting notes and outcomes..." }
) {
id
ended
summary
}
}
Permissions
L’accès aux réunions est contrôlé par plusieurs facteurs :
- Participants du cercle : Peuvent accéder et gérer les réunions de leur cercle
- Réunions privées : Visibles uniquement par les participants du cercle et les participants invités
- Membres de l’organisation : Peuvent accéder aux réunions non privées
- Participants invités : Peuvent participer selon le paramètre
invitedReadonly
Notes
Les réunions prennent en charge des ordres du jour structurés via le tableau
stepsConfig. La visioconférence peut être intégrée avec différents
fournisseurs. Les réunions récurrentes sont gérées via l’entité
meeting_recurring. La combinaison des paramètres private et
invitedReadonly permet un contrôle d’accès flexible.