Contrôlez Social Stream Ninja avec les commandes intégrées, l’automatisation et l’intégration API
Social Stream Ninja inclut plusieurs commandes que le public peut utiliser dans le chat ou que vous pouvez déclencher par API.
| Commande | Description | Comment activer |
|---|---|---|
!joke |
Répond par une blague de papa geek choisie au hasard | Activer avec l’interrupteur du menu de l’extension |
hi |
Accueille automatiquement toute personne disant « hi » dans le chat | Activer avec l’interrupteur du menu de l’extension |
!cycle |
Lorsque cette option est activée, permet aux spectateurs de changer les scènes OBS | Activer avec l’interrupteur du menu de l’extension |
Remarque : Les commandes du bot ne fonctionnent que si les réponses automatiques sont correctement configurées et si vous avez le droit de publier sur les plateformes concernées.
Pour que les réponses automatiques fonctionnent :
Si une barre bleue de débogage apparaît lors des réponses automatiques, vous pouvez la masquer en lançant Chrome avec l’option --silent-debugger-extension-api .
Social Stream Ninja fournit une API permettant de contrôler votre configuration de diffusion par programmation. Le serveur API peut envoyer des commandes à votre installation et écouter les messages entrants des chats regroupés.
Contrôlez les messages en vedette, effacez les incrustations et modifiez l’apparence du contenu dans votre direct.
Recevez des événements de services tiers comme Stripe, Ko-Fi et Buy Me A Coffee.
Exportez les messages du chat dans un fichier ou transmettez-les par webhook (POST) pour vos intégrations.
Paramètres requis (Paramètres globaux → Mécanique) :
Consultez : documentation complète de l’API pour des guides détaillés et des exemples de code.
https://io.socialstream.ninja/{sessionID}/{action}/{target}/{value}
Idéal pour des commandes simples depuis Stream Deck ou des scripts personnalisés.
wss://io.socialstream.ninja:443
Pour une communication bidirectionnelle en temps réel avec reconnexion automatique.
Si vous préférez les connexions entre pairs sans activer le mode WebSocket, utilisez le SDK WebRTC de Social Stream Ninja. Il inclut des exemples Node et navigateur, comme le récepteur Social Stream Ninja.
https://io.socialstream.ninja/sse/{sessionID}
Pour des mises à jour unidirectionnelles en temps réel depuis le serveur.
L’API utilise un système de canaux pour acheminer les messages :
- Channel 1: Remote control commands (default for StreamDeck/Bitfocus) - Channel 2: Dock page output - Channel 3: Extension receives commands from Dock - Channel 4: Chat messages from Extension (use this to receive Twitch/YouTube chat!) - Channel 5: Waitlist/giveaway communication - Channels 6-9: Reserved for future use
Connectez-vous au canal souhaité :
// To receive chat messages (listen on channel 4): wss://io.socialstream.ninja/join/SESSION_ID/4 // To send commands (channel 1 default): wss://io.socialstream.ninja/join/SESSION_ID
| Action | Description | Exemple |
|---|---|---|
sendChat |
Envoie un message à toutes les plateformes de chat connectées | https://io.socialstream.ninja/SESSIONID/sendChat/null/Hello everyone! |
sendEncodedChat |
Envoie un message encodé pour URL à toutes les plateformes | https://io.socialstream.ninja/SESSIONID/sendEncodedChat/null/Hello%20everyone%21 |
clearOverlay |
Efface le message en vedette de l’incrustation | https://io.socialstream.ninja/SESSIONID/clearOverlay |
nextInQueue |
Affiche le message suivant de la file | https://io.socialstream.ninja/SESSIONID/nextInQueue |
autoShow |
Active ou désactive la mise en avant automatique | https://io.socialstream.ninja/SESSIONID/autoShow/toggle |
blockUser |
Bloque un utilisateur sur une plateforme précise | https://io.socialstream.ninja/SESSIONID/blockUser/null/{"chatname":"username","type":"twitch"} |
extContent |
Envoie du contenu externe comme message de chat | https://io.socialstream.ninja/SESSIONID/extContent/null/{"chatname":"User","chatmessage":"Hello"} |
pin |
Épingle un message existant du Dock par son ID, ou un objet message complet. Nécessite dock.html ouvert sur la même session. |
https://io.socialstream.ninja/SESSIONID/pin/null/MESSAGE_MID |
unpin |
Désépingle un message existant du Dock par son ID. Utilisez le champ ou segment de chemin target pour un Dock étiqueté. | https://io.socialstream.ninja/SESSIONID/unpin/null/MESSAGE_MID |
nextPinned |
Met en avant le premier message épinglé du Dock. | https://io.socialstream.ninja/SESSIONID/nextPinned |
removefromwaitlist |
Retire la première entrée active de la liste d’attente, ou l’entrée active numérotée dans value |
https://io.socialstream.ninja/SESSIONID/removefromwaitlist/null/1 |
highlightwaitlist |
Met en avant la première entrée active de la liste d’attente, ou l’entrée active numérotée dans value |
https://io.socialstream.ninja/SESSIONID/highlightwaitlist/null/1 |
stopentries / startentries |
Arrête ou reprend les nouvelles inscriptions sans vider la liste existante. openentries et resumeentries sont des alias de startentries. |
https://io.socialstream.ninja/SESSIONID/stopentries |
selectwinner |
Sélectionne un ou plusieurs gagnants aléatoires dans la liste d’attente/le tirage | https://io.socialstream.ninja/SESSIONID/selectwinner/null/1 |
downloadwaitlist |
Télécharge la liste d’attente actuelle en TSV depuis la page/application Social Stream active | https://io.socialstream.ninja/SESSIONID/downloadwaitlist |
drawmode |
Active/désactive le mode tirage, ou le bascule lorsque value est égal à toggle |
https://io.socialstream.ninja/SESSIONID/drawmode/null/toggle |
waitlistmessage |
Définit le titre de la liste d’attente ou du tirage affiché sur sa page | https://io.socialstream.ninja/SESSIONID/waitlistmessage/null/Type%20!join%20to%20enter |
resetwaitlist |
Vide la liste d’attente et rouvre les inscriptions | https://io.socialstream.ninja/SESSIONID/resetwaitlist |
Essayez l’API avec notre bac à sable interactif donnant accès à toutes les commandes et fonctions :
Pour un petit ensemble de boutons de contrôle du direct dans OBS, utilisez le Dock de contrôle Social Stream et suivez le guide de configuration OBS.
Essayer toutes les commandes API dans un environnement sûr
Obtenir des exemples de code HTTP, WebSocket et SSE
Voir les réponses à vos commandes en temps réel
Générer des messages de test au contenu aléatoire
Remarque : Pensez à remplacer SESSIONID par votre véritable ID de session Social Stream Ninja !
Social Stream Ninja s’intègre à StreamDeck de plusieurs façons : actions HTTP natives et intégration Bitfocus Companion.
Utilisez l’action « Website » de StreamDeck avec « GET request in background » activé pour envoyer directement des commandes à l’API.
Intégration native avec actions prêtes à l’emploi, retours en temps réel et variables de contenu dynamique.
Bitfocus Companion permet de contrôler Social Stream Ninja avec les API WebSocket ou HTTP.
| Action | Description | Méthode API |
|---|---|---|
| Effacer le message en vedette | Retire de l’incrustation le message actuellement mis en avant | WebSocket/HTTP |
| Suivant dans la file | Affiche le prochain message en attente | WebSocket/HTTP |
| Basculer l’affichage automatique | Active/désactive la mise en avant automatique des messages | WebSocket/HTTP |
| Envoyer un message de chat | Envoie un message à toutes les plateformes connectées | WebSocket/HTTP |
featured_message - Texte du message actuellement mis en avantfeatured_username - Nom de l’utilisateur actuellement mis en avantqueue_size - Nombre de messages dans la fileSocial Stream Ninja propose une intégration IA pour les réponses au chat, la modération et plus encore. Choisissez des fournisseurs locaux ou cloud selon vos besoins.
Laissez l’IA échanger automatiquement avec vos spectateurs, répondre aux questions et animer la conversation pendant que vous vous concentrez sur votre contenu.
Utilisez l’IA pour repérer les messages potentiellement nuisibles et les traiter automatiquement selon vos préférences. Choisissez un mode non bloquant ou un blocage strict.
La génération augmentée par recherche permet à l’IA de consulter votre base documentaire personnalisée pour donner des réponses précises adaptées à votre contenu.
Utilisez différentes instances selon les besoins : bot public, bot individuel privé, bot de censure et même coprésentateur IA multimodal capable de voir et d’entendre.
Social Stream Ninja prend en charge plusieurs fournisseurs IA, des modèles entièrement locaux dans le navigateur ou l’environnement d’exécution aux API hébergées :
Modèles IA gratuits et auto-hébergés sur votre ordinateur via l’API native d’Ollama, conçus pour préserver la confidentialité.
Exécutez Gemma 4 dans le navigateur après avoir copié les fichiers du modèle sur votre propre hébergement ; l’hébergement largefiles de SSN ne contient actuellement pas les fichiers Gemma.
Exécutez Qwen 3.5 dans le navigateur à partir de vos propres fichiers hébergés pour des réponses locales et privées.
API OpenAI, dont les modèles récents de chat et de voix en temps réel.
Modèles Google Gemini, dont les options Gemini 2.5 actuelles pour le texte et le multimodal en direct.
Modèles IA efficaces et économiques, optimisés pour la conversation.
API xAI Grok, dont les sessions vocales en temps réel avec des secrets clients temporaires.
Modèles IA professionnels de divers fournisseurs, dont Claude et Llama.
Accès à plusieurs modèles IA via une interface API unifiée.
Inférence de chat compatible OpenAI à faible latence pour des réponses rapides.
Connectez llama.cpp, LM Studio, vLLM ou tout autre point d’accès compatible OpenAI.
Remarque : Ollama utilise sa propre API native. Pour llama.cpp, LM Studio, vLLM ou d’autres serveurs compatibles OpenAI, choisissez API personnalisée.
Social Stream Ninja propose une prise en charge complète de la synthèse vocale pour les messages du bot et le chat en vedette :
Synthèse vocale gratuite intégrée utilisant les voix de votre système d’exploitation.
Synthèse vocale gratuite en local via WebGPU/CPU pour préserver la confidentialité.
Synthèse vocale légère dans le navigateur, téléchargeant un petit modèle pour générer la voix en local.
Synthèse vocale premium avec des voix naturelles et personnalisables.
Voix de haute qualité avec de nombreuses langues et options de personnalisation.
Modèles neuronaux de voix de Google en aperçu, avec choix de voix et de langue.
Synthèse vocale par IA avec conversion vocale naturelle.
Synthèse vocale OpenAI avec choix de voix, de modèles et, facultativement, de points d’accès compatibles.
Remarque : La synthèse vocale nécessite d’ouvrir la page d’incrustation appropriée dans OBS. Chaque fournisseur propose des voix, délais, tarifs ou exigences matérielles différents.
Social Stream Ninja propose plusieurs instances de bots pour différents usages :
| Type de bot | URL | Description |
|---|---|---|
| Bot principal de chat | /bot.html |
Incrustation du bot principal avec synthèse vocale facultative et réponses au chat public |
| Interface de chat privé | /chatbot.html |
Page de bot individuel dédiée, qui ne partage ni les données RAG ni l’historique du bot principal |
| Bot de censure | (s’exécute en arrière-plan) | Filtre, nettoie ou bloque automatiquement les messages entrants |
| Coprésentateur IA | /cohost.html |
IA multimodale qui peut voir votre écran, entendre l’audio et interagir |
Suivez ces étapes pour configurer l’intégration IA avec le menu actuel :
Sélectionnez votre fournisseur dans Configurer le fournisseur LLM et renseignez les champs correspondants :
Utilisez le bouton intégré Tester le bot de chat sélectionné pour vérifier votre fournisseur, le modèle et les identifiants avant le direct.
Personnalisez le comportement du bot dans le chat :
Activez les fonctions souhaitées autour du bot :
/bot.html; utilisez clearBotOverlay pour l’effacement manuel/bot.html, /chatbot.html, ou /cohost.html dans OBS ou un navigateur selon les besoinsPour une configuration complète et plus de détails sur la synthèse vocale, consultez ces guides :
Contrôlez Social Stream Ninja avec des contrôleurs MIDI, des raccourcis clavier ou StreamDeck avec des plugins MIDI.
| Numéro CC | Valeur | Action | Remarques |
|---|---|---|---|
| 102 | 1 | Envoyer « 1 » dans le chat | Réaction rapide |
| 102 | 2 | Envoyer « LUL » dans le chat | Réaction par emote |
| 102 | 3 | Raconter une blague | Déclenche une réponse du bot |
| 102 | 4 | Effacer l’incrustation | Retire le message en vedette |
Conseil : Le contrôle MIDI fonctionne mieux avec des contrôleurs physiques, mais peut aussi être déclenché par des périphériques virtuels.
Utilisez les raccourcis clavier pour accéder rapidement aux fonctions courantes.
Les raccourcis se configurent dans les paramètres du menu et fonctionnent à l’échelle du système lorsque le navigateur a le focus ou que l’application est utilisée.
Social Stream Ninja peut recevoir des dons et événements de services tiers par webhooks ; voici quelques services populaires :
Recevez des dons par carte bancaire directement sur votre compte Stripe.
https://io.socialstream.ninja/SESSIONID/stripecheckout.session.completed&server à l’URL de votre DockRecevez des cafés de vos soutiens.
https://io.socialstream.ninja/SESSIONID/kofi comme URL du webhook&server à l’URL de votre DockRecevez des dons via la plateforme populaire Buy Me A Coffee.
https://io.socialstream.ninja/SESSIONID/bmac comme URL du webhook&server à l’URL de votre Dock pour recevoir les événementsNote de sécurité : Gardez votre ID de session privé : toute personne qui le connaît peut envoyer de faux dons à votre incrustation. L’URL du webhook doit être traitée comme une information sensible.
Social Stream Ninja peut aussi envoyer des données à des services tiers :
| Service | Paramètre d’URL | Description |
|---|---|---|
| Singular Live | &singular=IDENTIFIER |
Envoie les messages sélectionnés à Singular Live pour les afficher en vedette |
| H2R | &h2r=IDENTIFIER |
Envoie les messages sélectionnés à un serveur H2R local |
| POST générique | &postserver=URL |
Envoie les messages sélectionnés à un point d’accès personnalisé par POST |
| PUT générique | &putserver=URL |
Envoie les messages sélectionnés à un point d’accès personnalisé par PUT |
Ces paramètres s’ajoutent à l’URL de la page du Dock.
Vous pouvez créer vos propres commandes et fonctions en personnalisant le JavaScript :
custom_sample.js avec le nom de fichier custom.jsCette méthode permet des personnalisations et déclencheurs complexes.
Vous pouvez créer des incrustations de chat entièrement personnalisées selon le style et les fonctions de votre direct. Social Stream Ninja fournit une base souple pour les construire.
timer.htmlLa page de minuterie est volontairement limitée : un minuteur, des commandes facultatives pour l’opérateur, des avertissements, le dépassement de temps et quelques styles visuels.
Les actions utiles comprennent starttimer, pausetimer, resettimer, timeradd, timersubtract, et settimer.
{
"action": "settimer",
"value": {
"seconds": 300,
"label": "Interview",
"mode": "countdown",
"style": "stage",
"warnSeconds": 60,
"dangerSeconds": 15
}
}
Pour connaître l’état actuel du minuteur, utilisez gettimerstate avec un token de rappel.
{ "action": "gettimerstate", "get": "timer-state-1" }
Utilisez la page avec timer.html?session=YOUR_SESSION&server si vous voulez le contrôler directement via le serveur API.
startgiveaway, closegiveaway, drawgiveaway, resetgiveaway, et getgiveawaystate gèrent le groupe de participants dédié avec les mêmes commandes API/Stream Deck. Le tirage ferme automatiquement les inscriptions. Nouvelle manche conserve l’historique des gagnants et rejette les réservations impayées. Annuler et rembourser restitue les paiements de billets en attente. Les billets payants, Number Hunt, Coin Flip Pot et Event Flow utilisent le même service hôte. Configuration, présentations, valeurs de commandes et récupération.
Avec ces commandes et options API, vous pouvez créer une expérience de diffusion interactive adaptée à vos besoins.