LoginSignup
1
2

More than 5 years have passed since last update.

Hubot+Heroku+node.js+雑談API

Posted at

完全にメモ

nodejs2週間目の人が書きました.動作保証しません.

Coffeescriptが書けなかった

環境

Hubot
node.js 6.9.~
Heroku
Docomo雑談API

ソース

app.js
var request = require('request');
var apiURL = 'https://api.apigw.smt.docomo.ne.jp/dialogue/v1/dialogue?APIKEY=';
var apiKEY = 環境変数にしよう;
var context;

module.exports = function (robot) {
    //なんでもいい時の正規表現
    robot.hear(/(.*)$/i, function(msg) {

        var status = {
            //自分が打ったメッセージを正規表現から持ってくる
            "utt": msg.match[1],
            "context": context,
            "mode": "dialog"
        };

        const options = {
            url: apiURL + apiKEY,
            headers: {
                'Content-Type': 'application/json; charset=UTF-8'
            },
            body: status,
            json: true
        }

        request.post(options, function(err, res, data) {
            //前の会話から続けて会話する時に前のメッセージのコンテクストを入れておく
            context = data.context;
            //第3引数のuttにメッセージが入ってる
            msg.send(data.utt);
        });
    })
};

動作

スクリーンショット 2017-01-28 12.03.35.png

詰まったところ

herokuにプッシュする時,package.jsonのdependenceにrequestモジュールを書かないと動かない.
npm i --save大事

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2