Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B
Capgo’s sistem saluran menyediakan cara yang fleksibel untuk membagi pengguna dan mengontrol akses fitur. Meskipun Capgo tidak memiliki manajemen rencana bawaan atau uji coba A/B, Anda dapat menerapkan fitur-fitur ini dengan mengelola pengasosiasian saluran secara mandiri
Mengerti Saluran
Saluran di Capgo memungkinkan Anda:
- Targetkan kelompok pengguna spesifik dengan fitur yang berbeda
- Jalankan tes A/B dengan mengasosiasikan pengguna ke saluran yang berbeda
- Roll out fitur baru secara bertahap
- Buat program tes beta
Metode Pengasosiasian Saluran
1. Pengasosiasian Backend (Dianjurkan)
Ini adalah metode yang lebih aman. Ini melibatkan:
- Mendapatkan ID perangkat dari pembarui
- Mengirimkannya ke backend Anda
- Backend Anda memanggil Capgo API untuk mengasosiasikan perangkat
Ini adalah cara untuk melaksanakannya:
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)
}
Pengimplementasian Backend
Backend Anda perlu:
- Mendapatkan kunci API dari Capgo dashboard
- Panggil Capgo API untuk menetapkan perangkat ke saluran
Untuk mendapatkan kunci API Anda:
- Masuk ke dashboard Capgo Anda
- Pergi ke Pengaturan > API Keys
- Klik “Generate New Key”
- Pilih
allmode untuk mengelola perangkat dan saluran - Salin kunci yang dihasilkan dan simpan dengan aman di variabel lingkungan backend Anda
- Kunci akan berupa string hexadecimal 32 karakter
- Itu adalah kunci rahasia yang tidak boleh terungkap di sisi klien code
Contoh Node.js berikut:
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
}
}
Server backend juga harus:
- Mengvalidasi izin pengguna
- Merekam semua pengaturan saluran
- Mengatasi batasan kecepatan
- Mengimplementasikan logika ulang untuk pengaturan gagal
2. Pengasasan Otomatis (Lebih Tidak Aman)
Metode ini memungkinkan perangkat untuk langsung mengasaskan diri mereka ke sebuah saluran. Ini berguna untuk pengujian tetapi kurang aman untuk produksi:
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
}
Sebelum pengguna dapat mengasaskan diri mereka ke sebuah saluran, Anda perlu mengaktifkan fitur ini di Capgo dashboard:
- Buka menu Channels di Capgo dashboard Anda
- Klik nama saluran yang ingin Anda kelola
- Dalam pengaturan saluran, aktifkan "Izinkan perangkat untuk mengasaskan diri"
- Simpan perubahan
Jika pengaturan ini salah, setiap upaya untuk memanggil setChannel akan gagal.
Mengimplementasikan Flag Fitur
Penggunaan saluran untuk mengontrol akses fitur:
const isFeatureEnabled = async (feature: string) => {
// Example: Check if user is in beta channel
const channel = await getCurrentChannel()
return channel === 'beta'
}
Pengimplementasian Uji Coba A/B
Lakukan uji coba A/B dengan mengasosiasikan pengguna ke saluran yang berbeda:
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
}
Praktik Terbaik
- Penggunaan Pengasosiasian Belakang: Untuk produksi, selalu gunakan metode pengasosiasian belakang
- Pengasosiasian Konsisten: Gunakan ID pengguna atau identifikasi stabil lainnya untuk pengasosiasian saluran yang konsisten
- Pengawasan: Mengikuti penggunaan fitur dan metrik kinerja untuk setiap saluran
- Pengeluaran Gradual: Mulai dengan segmen pengguna kecil dan secara bertahap memperluas
- Dokumentasi Jelas: Dokumentasikan strategi saluran dan tujuan Anda
Kesimpulan
: Dengan memanfaatkan sistem saluran Capgo , Anda dapat membuat pengalaman aplikasi yang lebih personal dan menjalankan uji coba A/B. Untuk penggunaan produksi, selalu prefer metode pengasasan backend untuk keamanan dan kontrol yang lebih baik.
Untuk informasi lebih lanjut tentang pengelolaan saluran, lihat dokumentasi Dokumentasi Saluran.
Teruskan dari Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B
: Jika Anda menggunakan Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B untuk merencanakan routing saluran dan peluncuran tahap demi tahap, hubungkannya dengan Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Solusi Uji Coba Beta untuk alur kerja produk di Solusi Uji Coba Beta, dan Solusi Target Versi untuk alur kerja produk di Solusi Target Versi