2016-08-21 1 views
1

J'ai un autre processus de chat en ligne que j'essaie d'apprendre. Bon, j'ai maintenant un bot de discussion javascript qui se connecte à une salle de discussion websocket et fonctionne normalement. Je l'ai obtenu à répondre aux commandesCréer un robot de discussion javascript transforme les commandes de chat en touches dans un autre programme

ex

if (text === "!ping" && (user === "user" || isStaff || isOwner || isSub)) { 
    channel.sendMessage("pong"); 
} 

Ce que je suis en train de faire est maintenant prendre une commande comme « ! » Et traduire cela dans le bot appuyant sur la flèche « UP » sur le clavier à l'intérieur d'un autre programme.

Je ne suis pas sûr de savoir comment commencer dans ce domaine. Chaque fois que j'essaie de google, tout ce que j'ai, c'est comment lire les événements de clavier lorsque quelqu'un entre une clé dans une zone de texte. Je suis nouveau sur javascript, donc je ne suis pas au courant qu'il existe un nom exact pour ce que j'essaie de faire. Si quelqu'un pouvait au moins me diriger dans la bonne direction pour ce qu'il est que je dois rechercher afin d'apprendre à le faire, je serais très reconnaissant :)

+0

'J'ai eu à répondre aux commandes (ex. ! ping = pong). »Pouvez-vous partager ce code afin que les gens ici ne modifient que ce code. –

+0

Ajout du code pour répondre aux commandes de chat. –

Répondre

1

Vous pouvez utiliser jQuery pour simuler ces événements

Disons que vous voulez appuyer sur up key dans la balise <p id="someid"></p> d'un programme.

les codes sont les suivants:

37 left 
38 up 
39 right 
40 down 

Vous pouvez trouver des codes pour d'autres clés grâce à une simple recherche google

Maintenant, si vous voulez appuyer sur 'up' flèche, puis:

if (text === "!up" && (user === "user" || isStaff || isOwner || isSub)) { 
    //this function will trigger keyup event 
    $(function() { 
     var e = $.Event('keypress'); 
     e.which = 38; // 38 is code for up arrow. 
     $('#someid').trigger(e); 
     //you can provide id or class of element where you want this event 
     //to be triggered 
    }); 
} 

voir aussi:

  1. Trigger Keypress with jQuery
  2. Definitive way to trigger keypress events with jQuery
  3. fiddle - press 'M' key on click of a button
+0

Oh, d'accord, merci! Je ne pensais même pas à jQuery pour être honnête. Probablement aurait dû y regarder d'abord. –

+0

@Layne Pas de soucis. Je pense que cela va certainement fonctionner avec vos besoins. –

+0

En fait, je viens de réaliser quelque chose que j'aurais probablement dû demander hier soir. D'accord, ce robot de chat est en cours d'exécution sur mon PC, pas sur un site Web. Je veux prendre ces commandes et ensuite avoir la pression sur une touche dans une fenêtre séparée du programme .exe. Cela fonctionnera-t-il avec ça? Je me demandais juste parce que id & class pour moi signifie seulement css & html, à moins que les fenêtres de programme ont aussi ces et je suis juste ignorant haha. –