###前提・実現したいこと
slackbotを用いてpostした内容を#generalへ送信する
(slackbotsのモジュールを使うこと前提)
家計簿のアプリだが、内容と値段をPOSTする
下記コードに置いてslackbot以外についてのエラーはないです
###発生している問題
Node.jsの非同期処理が抜けれないためslackが呟き続けることを回避したい
###該当のソースコード
javascript
1var express =require('express'); 2var router =express.Router(); 3var moment = require('moment'); 4var connection = require('../mysqlConnection'); 5var SlackBot = require('slackbots'); 6var bot = new SlackBot({ 7 token:'トークン', 8 name:'Manager' 9}); 10 11router.get('/:board_id',function(req,res,next){ 12//略 13}); 14 15router.post('/:board_id',function(req,res,next){ 16 var count=0; 17 var content=req.body.content; 18 var howmach=req.body.howmach; 19 var createdAt = moment().format('YYYY-MM-DD HH:mm:ss'); 20 var boardId=req.params.board_id; 21 var query = 'INSERT INTO pieces (content,howmach,board_id,created_at) VALUES ("'+content+'",'+'"'+howmach+'",'+'"'+boardId+'",'+'"'+createdAt+'")'; 22 connection.query(query,function(err,rows){ 23 res.redirect('/boards/'+boardId); 24 }); 25 bot.on('message', function(message) { 26 var params = { 27 icon_emoji: ':cat:' 28 }; 29 bot.postMessageToChannel('general', '内容:'+content+',値段:'+howmach, params); 30 console.log('test'); 31 //実行すると上2行が永遠ループ 32 }); 33}); 34 35module.exports=router; 36
###試したこと
bot.on('start')では送信できなかった
next();をconsole.log('text')の下に置いても反応なし...
###補足情報
https://www.npmjs.com/package/slackbots 参照
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/19 04:43