Commande d'activation de sources avec Wize Bot

Bonjour j’ai utilisé chatgpt car je suis un profane en JS, je souhaite qu’une commande désactive ou active une source d’une scène pendant 5-10 seconde et la désactive ou la réactive derrière. Il faut pour cela utiliser les webscoket de OBS mais j’y comprends rien est ce que quelqu’un peut me renseigner pourquoi j’ai le message d’erreur ? J’ai remplacé localhost par l’adresse que me donner OBS et j’ai rajouté le code aussi donné par obs

Voici le code

// Nom de la source et de la scène
let sceneName = “NomDeVotreScene”; // Remplacez par le nom de votre scène
let sourceName = “NomDeVotreSource”; // Remplacez par le nom de votre source

// URL de WebSocket d’OBS (remplacez le mot de passe si nécessaire)
let obsURL = “ws://localhost:4444”; // Assurez-vous que cette URL est correcte

// Requête JSON pour activer une source
let activateSourceRequest = JSON.stringify({
“request-type”: “SetSourceRender”,
“source”: sourceName,
“render”: true,
“scene-name”: sceneName
});

// Appel de l’URL
let result = JS.wizebot.call_tag(“urlcall”, [obsURL, activateSourceRequest]);

// Vérification et message de confirmation
if (result) {
JS.wizebot.send_chat_message(La source ${sourceName} est maintenant activée dans la scène ${sceneName}.);
} else {
JS.wizebot.send_chat_message(“Erreur : impossible d’activer la source. Veuillez vérifier la connexion OBS.”);
}

Bonsoir,
Le WebSocket n’est pas possible avec la programmation JS, ni le TAG (urlcall).

Le protocole n’est pas le même que pour un call URL classique.

Merci bcp de ta réponse c’est ce qu’à proposer ChatGPT, tu as une idée de comment je dois m’y prendre stp :slight_smile: ?

Peut-être avec des actions JS provenant de la source du navigateur OBS :

obs-browser/README.md at master · obsproject/obs-browser · GitHub (Doc en anglais)

En définissant les bonnes permissions sur la source de l’overlay SCREEN, et en créant ainsi un script “Overlay SCREEN” qui lance l’un de ces codes JS.

Logiquement, cela devrait fonctionner :slight_smile:

JE vais essayer de trouver merci encore de ta réponse ! Par contre j’y comprends rien donc je vais voir ce que je peux faire !

En gros, le plugin de la source navigateur permet d’exécuter des actions sur OBS si la bonne permission est définie sur cette même source.

Dans l’exemple :

window.obsstudio.setCurrentScene('Nom de la scène');

Donc dans la logique, via le type de commande “Exécuter un script sur l’Overlay SCREEN” (avec l’overlay SCREEN d’installé (Login - Wize.Bot)), il est possible de changer de scène avec ce type de script :

var scene_name = 'Nom de la scène';
window.obsstudio.setCurrentScene(scene_name);

setTimeout(function() { setRefresh(); }, 1500); // Nécessaire pour terminer le script.

Pour les permissions, c’est ici :


(Accès avancé à OBS pour le changement de scène)

Hello merci des infos, effectivement ça change bien la scène mais je souhaiterais activé ou désactivé une source de cette scène,

As tu une idée ? J’ai regardé un peu et on me parle de liaison avec webhook ou autre je comprends pas trop :frowning:

Malheureusement, pour les sources… Il n’y a rien pour le moment sur le plugin browser.

Même un appel WebSocket via l’overlay SCREEN ne fonctionne pas, car OBS ne supporte pas WSS (WebSocket Secure), ce qui bloque l’exécution étant donné que l’overlay SCREEN est en HTTPS.

Nous allons ajouter à notre roadmap la possibilité d’intégrer le WebSocket d’OBS, afin de pouvoir appeler le websocket d’OBS depuis WizeBot (avec la nécessité d’ouvrir le port sur la box Internet).

Pas de date pour le coup, mais c’est en réflexion !

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.