Je lance node.js (v5.10.1) sur un serveur ubuntu (14.04.4 LTS). Et le npm (@ kikinteractive/kik) a été installé. (https://www.npmjs.com/package/@kikinteractive/kik)Le serveur bot kik recevant le POST mais bot.onTextMessage (...) ne répond pas
Voici le fichier server.js je l'ai écrit:
'use strict';
const util = require('util');
const http = require('http');
const Bot = require('@kikinteractive/kik');
const port = 80;
let bot = new Bot({
username: 'botnamehere',
apiKey: 'blablabla-1001-0110-1001-2112blablabla'
});
bot.onTextMessage((message)=>{
message.reply(message.body);
});
var server = http.createServer(bot.incoming());
server.on('request', function (request, response) {
bot.incoming();
// I added this to write the request
// so that I could verify my server was receiving from kik
console.log(request.method);
console.log(request.headers);
console.log(request.url);
var fs = require('fs');
fs.writeFile("./logfile.log", JSON.stringify(request.headers), function(err) {
if(err) {
return console.log(err);
}
console.log("The kik request was saved!");
});
});
server.listen(port);
Note: Une adresse IP a été utilisée pour la configuration de kik webhook, et le serveur est à l'écoute sur le port 80.
Je sais que ma configuration Kik semble être correct que les messages texte à partir du résultat de l'application de kik dans les requêtes POST à mon serveur, ici (données clés a été remplacé pour cette question posée):
{ « host » : "ipaddressofhost", "x-kik-signature": "8EEBLA44C3BB9769BLAE56E7E9CBLA2BA4179445", "type-de-contenu": "application/json", "nom-utilisateur-kik": "nom-bot", "x-cloud-trace-context" : "272c0f7616d6189bla9540d1e47668f5/5407793903926111947", "contenu-longueur": "307", "connexion": "Keep-alive", "user-agent": "AppEngine-Google; (+ http://code.google.com/appengine; appid: s ~ bot-dashboard) "," accept-encoding ":" gzip, deflate, br "}
Et je sais que mon serveur peut envoyer des messages à kik, comme j'ai testé ce qui suit et a confirmé le message reçu dans l'application Kik:
bot.send (Bot.Message.text ('Quoi!'), 'nom d'utilisateur');
la question est la suivante: Si ma configuration semble correcte, en ce que je suis en mesure de vérifier un POST sur mon serveur, et le kik npm est installé correctement que je suis capable d'envoyer des messages de mon serveur à kik, pourquoi bot.incoming() et bot.onTextMessage juste assis là rendant mon serveur une grosse brique, bête, chère? Que manque-t-elle?
Toute aide est grandement appréciée.
Merci.
Pour clarifier: Peu importe ce que j'ai essayé dans le gestionnaire onTextMessage, en utilisant tous les exemples fournis par Kik docs, et tout ce que je ne trouve ailleurs, aucun des Les exemples server.js ont fonctionné comme prévu sur mon serveur; mais quand j'ajoute console.log (demande.en-têtes), je peux voir que mon serveur reçoit un POST de Kik. Quoi dans le quoi? – tbmac3