Guide · Live & événements

Tes cadeaux de live déclenchent de vraies actions

Quelqu'un t'envoie un cadeau pendant ton live ? Fais-en un événement dans le monde réel : une explosion de TNT dans Minecraft, une alerte animée sur ton overlay OBS, tes lumières qui clignotent, ton bot qui parle. Pas besoin d'être développeur : tu crées une clé, tu copies un petit bout de code, et c'est parti. On te montre étape par étape.

C'est quoi ?

Un pont entre ton live et ce que tu veux

Hou.la t'envoie en temps réel tout ce qui se passe sur tes lives (cadeaux, cœurs, chat…). Un petit programme écoute ces événements sur ton PC et fait ce que TU décides. Quelques idées :

🎮

Dans le jeu

Un cadeau = un mob qui apparaît, un boss, une pluie de TNT dans Minecraft.

Sur ton overlay OBS

Une alerte animée avec le pseudo de la personne et le cadeau qu'elle vient d'offrir.

💡

Dans ta pièce

Tes lumières connectées passent en rouge, ton bot lance un son ou un message.

Si tu as déjà utilisé tiktok-live-connector, tu es en terrain connu : tu ouvres une connexion, tu écoutes des événements, c'est tout.

Étape 1

Crée ta clé d'événement

Le programme se connecte avec une clé, pas avec ton mot de passe. Cette clé est en lecture seule : elle peut recevoir tes événements, rien d'autre. Elle ne peut ni poster, ni dépenser, ni modifier quoi que ce soit sur ton compte.

  1. Ouvre ton Studio Hou.la, puis « Clés d'événements ».
  2. Clique sur « Nouvelle clé », donne-lui un nom et coche les événements que tu veux (commence par Cadeaux).
  3. Copie la clé tout de suite : elle s'affiche une seule fois. Elle ressemble à hle_••••••••••••.

Garde ta clé pour toi. Si elle fuite, ouvre à nouveau tes clés d'événements et clique sur « Régénérer » : l'ancienne cesse aussitôt de fonctionner.

Ouvrir mes clés d'événements →

Étape 2

Installe le connecteur

Il te faut Node.js 18 ou plus récent installé sur ton PC (nodejs.org). Ensuite, dans un terminal :

npm install @houla/live-connector

Le squelette minimal ressemble à ça :

const { HoulaLiveConnection } = require('@houla/live-connector')

const conn = new HoulaLiveConnection({ token: 'hle_ta_cle_ici' })

conn.on('connected', () => console.log('En écoute des cadeaux…'))
conn.on('gift', (gift) => {
  console.log(`${gift.sender.name} a envoyé ${gift.gift.name}`)
})

conn.connect()

Le connecteur ouvre une WebSocket vers Hou.la et te pousse les événements dès qu'ils arrivent. Rien à exposer sur ton réseau : ça marche depuis un PC derrière ta box, sans config.

Étape 3

Choisis ta recette

✨ Alerte sur ton overlay OBS

Le plus simple pour commencer : à chaque cadeau, tu fabriques une alerte (pseudo + cadeau + quantité) que tu affiches dans une Source navigateur OBS.

conn.on('gift', (gift) => {
  const alerte = {
    pseudo: gift.sender.name || 'Quelqu\'un',
    cadeau: gift.gift.name,        // ex. "Flame"
    quantite: gift.gift.quantity,  // combien d'un coup
    image: gift.gift.thumbnailUrl, // PNG prêt pour l'overlay
  }
  // → envoie `alerte` à ta Source navigateur OBS
  console.log(`✨ ${alerte.pseudo} x${alerte.quantite} ${alerte.cadeau}`)
})

Le fichier examples/log.js est le point de départ : il affiche chaque cadeau reçu.

🎮 Une action dans Minecraft (RCON)

La recette culte : un viewer envoie un cadeau, et le jeu réagit. On envoie une commande à ton serveur Minecraft via RCON (à activer dans server.properties). À toi d'associer chaque cadeau à la commande de ton choix :

conn.on('gift', async (gift) => {
  // évite de jouer deux fois le même cadeau après une reconnexion
  if (gift.transactionId && vus.has(gift.transactionId)) return
  if (gift.transactionId) vus.add(gift.transactionId)

  let cmd
  switch (gift.gift.slug) {
    case 'flame':      cmd = 'summon minecraft:tnt ~ ~5 ~'; break
    case 'diamond':    cmd = 'weather thunder'; break
    case 'fire_dragon': // gros cadeau, grosse réaction
      cmd = 'execute at @p run summon minecraft:ender_dragon ~ ~10 ~'; break
    default:
      cmd = `summon minecraft:tnt ~ ~${Math.min(gift.gift.quantity, 10) + 4} ~`
  }
  await rcon.send(cmd)
})

L'exemple complet, prêt à lancer, est dans examples/minecraft-rcon.js.

Toutes les recettes vivent dans le dossier examples du dépôt. Copie celle qui t'intéresse et adapte-la.

Étape 4

Associe tes cadeaux

Pour brancher un cadeau à une action, tu as besoin de son slug (son identifiant stable). La liste complète et toujours à jour des cadeaux est publique, aucune clé requise :

GET https://api.hou.la/api/gifts

Ouvre cette URL dans ton navigateur pour voir tous les cadeaux actifs. Trois exemples réels :

Petit cadeauflame
Cadeau moyendiamond
Gros cadeaufire_dragon

Associe sur le slug, pas sur le nom. Le nom affiché peut changer ou être traduit ; le slug, lui, ne bouge pas. Le champ coinCost te donne la valeur en coins : parfait pour une logique « plus le cadeau est gros, plus la réaction est folle ». Récupère la liste au démarrage plutôt que de l'écrire en dur : les nouveaux cadeaux y apparaissent tout seuls.

Étape 5

Passe en live et teste

  1. Lance ton programme : node mon-script.js. Tu devrais voir « En écoute des cadeaux… ».
  2. Démarre ton live sur Hou.la.
  3. Envoie-toi un petit cadeau (ou demande à un pote) : ton action se déclenche dans la foulée. 🎉
Rien ne se passe.
Vérifie que la clé est bien collée (sans espace en trop) et qu'elle n'a pas été régénérée. Le message connected confirme que la clé est acceptée.
Le même cadeau se déclenche deux fois.
C'est possible juste après une reconnexion. Dé-doublonne sur gift.transactionId (voir le snippet Minecraft).
Je veux d'autres événements (cœurs, chat…).
Coche-les sur ta clé : ils arriveront sur le même canal event, sans rien changer à ton code.

Prêt à faire réagir ton live ?

Crée ta clé d'événement, installe le connecteur et branche ta première recette.

Créer ma clé d'événement

Le code, les exemples et la doc technique : github.com/Hou-la/houla-live-connector