Passer au contenu principal
Guide

Comment utiliser les canaux pour les drapeaux de fonctionnalités et les tests A/B

Apprenez à utiliser les canaux de Capgo pour les drapeaux de fonctionnalités et les tests A/B en affectant les utilisateurs vous-même ou en utilisant votre backend

Martin Donadieu

Martin Donadieu

Spécialiste du contenu

Comment utiliser les canaux pour les drapeaux de fonctionnalités et les tests A/B

Comment utiliser les canaux pour les drapeaux de fonctionnalités et les tests A/B

Le système de canaux de Capgo offre une façon flexible de segmenter les utilisateurs et de contrôler l'accès aux fonctionnalités. Même si Capgo n'a pas de gestion de plans intégrée ou de tests A/B, vous pouvez mettre en œuvre ces fonctionnalités en gérant les affectations de canaux vous-même.

Comprendre les canaux

Les canaux de Capgo vous permettent de :

  • Ciblez des groupes d'utilisateurs spécifiques avec des fonctionnalités différentes
  • Exécutez des tests A/B en affectant les utilisateurs à différents canaux
  • Déployez progressivement de nouvelles fonctionnalités
  • Créez des programmes de test bêta

Méthodes d'affectation de canaux

Cette méthode est plus sécurisée. Elle implique :

  1. Récupérer l'ID de l'appareil à partir de l'actualiseur
  2. L'envoyer à votre backend
  3. Votre backend appelle les Capgo API pour affecter l'appareil

Voici comment l'implémenter :

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Get device ID
const getDeviceId = async () => {
  const { deviceId } = await CapacitorUpdater.getDeviceId()
  return deviceId
}

// Send device ID to your backend
const assignToChannel = async (channel: string) => {
  const deviceId = await getDeviceId()
  // Your backend will call Capgo API to assign the device
  await yourBackend.assignDeviceToChannel(deviceId, channel)
}

Implémentation de backend

Votre backend doit :

  1. Obtenez une clé API à partir du tableau de bord Capgo
  2. Appelez l'Capgo API pour affecter le dispositif à un canal

Pour obtenir votre clé API :

  1. Connectez-vous à votre tableau de bord Capgo
  2. Allez dans Paramètres > Clés API
  3. Cliquez sur « Générer une nouvelle clé »
  4. Sélectionnez all le mode pour gérer les appareils et les canaux
  5. Copiez la clé générée et stockez-la sécurisément dans vos variables d'environnement backend
    • La clé sera une chaîne hexadécimale de 32 caractères
    • Il s'agit d'une clé secrète qui ne doit jamais être exposée dans le code côté client

Voici un exemple Node.js :

import axios from 'axios'

const CAPGO_API_KEY = 'your_api_key'
const CAPGO_API_URL = 'https://api.capgo.app'

async function assignDeviceToChannel(deviceId: string, channel: string) {
  try {
    const response = await axios.post(
      `${CAPGO_API_URL}/device`,
      {
        app_id: 'YOUR_APP_ID',
        device_id: deviceId,
        channel: channel
      },
      {
        headers: {
          'authorization': CAPGO_API_KEY,
          'Content-Type': 'application/json'
        }
      }
    )
    return response.data
  } catch (error) {
    console.error('Failed to assign device to channel:', error)
    throw error
  }
}

Le serveur backend devrait également :

  • Valider les permissions de l'utilisateur
  • Enregistrer toutes les affectations de canal
  • Gérer la limitation de vitesse
  • Implémenter une logique de réessai pour les affectations échouées

2. Auto-affectation (Moins sécurisé)

Cette méthode permet aux appareils de s'affecter directement à un canal. C'est utile pour les tests mais moins sécurisé pour la production :

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Assign device to channel
const assignToChannel = async (channel: string) => {
  await CapacitorUpdater.setChannel(channel)
}

// Get current channel
const getCurrentChannel = async () => {
  const { channel } = await CapacitorUpdater.getChannel()
  return channel
}

Avant que les utilisateurs puissent s'affecter eux-mêmes à un canal, vous devez activer cette fonctionnalité dans le tableau de bord Capgo :

  1. Allez dans la section Canaux de votre tableau de bord Capgo
  2. Cliquez sur le nom du canal que vous souhaitez gérer
  3. Dans les paramètres du canal, activez « Autoriser les appareils à s'associer automatiquement »
  4. Enregistrer les modifications

Si ce paramètre est faux, toute tentative de setChannel Implémenter les Drapeaux de Fonctionnalité

Utiliser les canaux pour contrôler l'accès aux fonctionnalités :

Implémentation de l'essai A/B

const isFeatureEnabled = async (feature: string) => {
  // Example: Check if user is in beta channel
  const channel = await getCurrentChannel()
  return channel === 'beta'
}

Exécuter les essais A/B en affectant les utilisateurs à différents canaux :

Meilleures Pratiques

const assignToABTest = async (userId: string) => {
  // Use consistent hashing to assign users
  const hash = await hashUserId(userId)
  const variant = hash % 2 === 0 ? 'variant-a' : 'variant-b'
  
  await assignToChannel(variant)
  return variant
}

Utiliser l'assignation de l'arrière-plan

  1. : Pour la production, utilisez toujours la méthode d'assignation de l'arrière-planAssignation Consistante
  2. : Utilisez les ID d'utilisateur ou d'autres identifiants stables pour une assignation de canal cohérenteSi ce paramètre est faux, toute tentative d'appel
  3. Surveillance: Suivre l'utilisation des fonctionnalités et les métriques de performance pour chaque canal
  4. Déploiements Graduels: Commencez avec de petits segments d'utilisateurs et étendez progressivement
  5. Documentation Claire: Documentez votre stratégie de canal et ses objectifs

Conclusion

En exploitant le système de canaux de Capgo , vous pouvez créer des expériences d'applications plus personnalisées et effectuer des tests A/B. Pour un usage en production, préférez toujours la méthode d'affectation backend pour une meilleure sécurité et un contrôl’amélioré.

Pour plus de détails sur la gestion des canaux, consultez notre documentation des canaux.

Continuez de How to Use Channels for Feature Flags and A/B Testing

Si vous utilisez Comment utiliser les canaux pour les drapeaux de fonctionnalités et les tests A/B pour planifier la mise en route des canaux et la mise en production étalée, connectez-l’à Canaux pour les détails d'implémentation dans Canaux, Canaux pour les détails d'implémentation dans Canaux, Canaux pour les détails d'implémentation dans Canaux, Solution de test bêta pour le flux de travail du produit dans Solution de test bêta, et Solution de ciblage de version pour le flux de travail du produit dans Solution de ciblage de version.

Mises à jour en temps réel pour les applications Capacitor

Lorsqu'un bug de couche web est en ligne, expédiez la correction par le biais de Capgo au lieu d'attendre des jours pour l'approbation de la boutique d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les modifications natives restent dans le chemin de revue normal.

Support humain de Martin

Démarrer maintenant

Dernières actualités de notre Blog

Capgo vous donne les meilleures informations dont vous avez besoin pour créer une application mobile véritablement professionnelle.