Classement personnalisé des participants
Le classement personnalisé des participants vous permet de contrôler le positionnement des participants dans les dispositions en grille et les dispositions PiP en fonction des valeurs d’attributs personnalisées contenues dans les jetons des participants, notamment le positionnement des participants sélectionnés et la sélection des participants pour la fenêtre PiP. Cela fournit un positionnement déterministe des participants et permet des dispositions basées sur les rôles.
Fonctionnement du classement personnalisé
Lorsque participantOrderAttribute est spécifié dans la configuration de votre disposition, les participants sont classés selon les règles suivantes :
-
Les participants dont les jetons contiennent l’attribut de classement spécifié sont placés en premier, triés de façon numérique en fonction des valeurs de leurs attributs.
-
Les participants qui n’ont pas l’attribut de classement sont classés selon l’heure d’arrivée et sont placés après les participants classés de façon numérique.
-
Lorsque plusieurs participants ont des valeurs de classement identiques, ils sont sous-triés en fonction de leur heure d’arrivée dans l’étape.
-
Le classement utilise un tri numérique (et non lexicographique), de sorte que « 10 » vient après « 9 » (pas après « 1 »).
-
Les valeurs négatives sont prises en charge. Elles sont positionnés avant les valeurs positives.
-
Les valeurs non numériques (par exemple, « abc », « 1,5 ») sont considérées comme non valides et les participants ayant une telle valeur sont classés selon l’heure d’arrivée.
Important : le classement des participants (qu’il soit basé sur l’heure d’arrivée ou sur la personnalisation) prend effet après le début de la composition. Le bon classement des participants n’est pas garanti pour les participants qui rejoignent l’étape avant le début de la composition.
Création de jetons à l’aide d’attributs de classement
Pour utiliser le classement personnalisé des participants, incluez l’attribut de classement dans vos jetons de participant lors de leur création :
aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=1 aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=2 aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=3
Vous pouvez combiner l’attribut de classement personnalisé des participants avec les attributs permettant de sélectionner les participants pour l’emplcement proposé et la fenêtre PiP :
aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=2,isFeatured=true aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=3,isFeatured=true aws ivs-realtime create-participant-token --stage-arn "arn:aws:ivs:us-east-1:123456789012:stage/u9OiE29bT7Xp" --attributes order=4,isPip=true
Exemples de cas d'utilisation
Les exemples de cas d’utilisation incluent :
-
Positionnement cohérent : les participants conservent leur position lorsqu’ils se reconnectent avec le même jeton.
-
Positionnement basé sur les rôles : par exemple, vous pouvez spécifier les enseignants avec classement=1 et les étudiants avec classement=2.
-
Dispositions basées sur les priorités : les participants VIP dont les valeurs de classement sont inférieures apparaissent en premier.
-
Dispositions dynamiques : vous pouvez combiner un classement personnalisé avec
featuredParticipantAttributeetpipParticipantAttributepour les scénarios complexes. -
Interactions entre les étapes : lorsque vous utilisez la réplication des participants pour des scénarios tels que les compétitions en mode VS dans lesquelles des streamers de différentes étapes interagissent, vous pouvez remplacer les attributs de classement pour contrôler le positionnement dans la composition de l’étape de destination.
Remarque : pour les cas d’utilisation de réplication des participants, vous pouvez remplacer les attributs des participants (notamment l’attribut de classement) selon vos besoins lors du démarrage d’une réplication afin d’obtenir la disposition souhaitée dans l’étape de destination.
Rétrocompatibilité
Le classement personnalisé des participants est une fonctionnalité optionnelle et est entièrement rétrocompatible. Les compositions existantes sans participantOrderAttribute continuent à fonctionner de la même manière, en utilisant le classement selon l’heure d’arrivée. Lorsque participantOrderAttribute est défini sur une chaîne vide, le système ignore complètement le classement personnalisé et revient au comportement par défaut.