haiju's 開発メモ

開発に必要な情報を自分用にメモ

daab

Node.jsがEventEmitterでメモリリークしてると警告メッセージが出る件【少し確認した】

前回、あとで読むにチェックしてから、かなりの時間が 流れたw(ΦωΦ) たまに発生するけど、エラーという訳でもないよなってことで 眼精疲労でPC作業が疲れたので少し確認してみた。 ら、前回よりもビンゴじゃね?って情報が得られた。 Qiitaで発見した記事に…

lisb-hubotでNode.jsの自動再起動を監視してるユーティリティについて

nodemonがいいらしいと聞いたけど、lisb-hubotもそれらしい ユーティリティを内部に持ってるよなーと思って、Botサービス の開発&検証中にログを追っかけてみたので、あとで更に詳しく 見るために備忘録でメモっておく(ΦωΦ) 1) Node.jsの自動再起動を監視し…

Node.jsがEventEmitterでメモリリークしてると警告メッセージが出る件【あとで見る】

Hubotの拡張を利用したBOT開発でNode.jsのEventEmitterで メモリリークが発生しているという下記の警告メッセージが ログに吐かれてた。 Warning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to …

JavaScriptのエラーハンドリングについて

現在、Hubot拡張のBOT開発のエラーハンドリングで ハマっている。 考えなければいけないことは、Node.js、WebSocket、 ES6未満、非同期、非同期と同期、イベント駆動かな? あと例外処理は使ってない。 ということで、少し調べたことをメモする(ΦωΦ) [参考サ…

ビジネスチャットツール「Direct」の既存スタンプを取得する

Directでテキスト入りのスタンプを使用するには ツールの中で利用可能な既存スタンプ以外は許可 されていない(つまり自作スタンプは利用不可)という ことで、公式に情報があるらしいのだが、自分の ブラウザでは権限がないのか? ブラウザでそれらしき情報が…

daab foreverをバックグラウンドで起動させる

公式にある情報がいまいち薄すぎてよく分からない ので、いちいち開発して動作確認するのに「daab login」 →「daab run」→ ctrl + c → 「daab logout」してた けど、daab foreverをバックグラウンドで起動させるのに 必要な情報は、開発中のプロジェクト配下…

Node.js起動時の「Error: listen EADDRINUSE 0.0.0.0:8080」発生後に発生する「Error: ENOENT: no such file or directory, stat 」

daabでBOT開発中に昨日気づいたエラー。 今日も最初に発生してたけどw(ΦωΦ) 指定したPort番号が既に使われてるぞ!エラー発生後に、 そんなファイルやディレクトリはねぇよw(ΦωΦ) ってメッセージだけど、実際にあるし何やねん? 見当違いかよ?的なエラーは…

Node.js起動時に発生する「Error: listen EADDRINUSE 0.0.0.0:8080」の対処方法

前のプロセスが正常終了してないのか? daab run でNode.js起動時によく例外で落ちるようになった。 すぐに回復して再起動すんだけどw(ΦωΦ) メッセージでlisten ... って言ってるので既にオマエの指定した Port番号は使われてるぞ!ってエラーだったw という…

hubotのrobot.brain.set(key,value)で保存した値がrobot.brain.get(key)できない?

今、発生している不具合について。 初回セレクトスタンプで選んだ値を最終的にMySQLに登録する ために、onsendでrobot.brain.setしてメインからrobot.brain.get したら、ERROR ReferenceError: key is not definedで例外が発生。 参考にしたサイトでは問題な…

daabでタスクスタンプの送受信

daabの仕様理解のために、タスクスタンプの送受信を行う サンプルコードを実装した(ΦωΦ) [サンプルコード] 'use strict'; module.exports = (robot) => { robot.respond(/TASK$/i, (res) => { res.send({ title: "TODO", closing_type: 0, //(Option) 誰かが…

daabでセレクトスタンプの送受信

daabでセレクトスタンプの送受信のサンプルコードを書いた。 [コードサンプル] 'use strict'; var talk_opts = ["選択肢1","選択肢2","選択肢3","選択肢4","選択肢5"]; module.exports = (robot) => { robot.respond(/PING$/i, (res) => { res.send('PONG');…

daabのサンプルスクリプトを手っ取り早く試そうとして

古いバージョンのcoffee-script 1.6.3インストールを CentOS6.5のパッケージマネージャyumで実行後に プロジェクト担当社員からcoffeeは基本使わないことに なってるから、必要ありません。 ってお話がチャットで来たので、yumでインストール& アンインスト…

daab run実行時のログに出てるWARNINGでfseventsって何?という問題

daab runを実行した時に出る下記2行のWARNINGメッセージ が気になったので調べてみた(ΦωΦ) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY…

npmでcoffee-scriptはハイフンなしのcoffeescriptパッケージに移動したらしいと聞いたけど

daabでセレクトスタンプの送信を行う検証用コードの JavaScriptの書き方が分からなかったので、公式エディタで サンプルコードそのままに実行してみたら、下記エラーが発生したので [stdin]:40:4: error: mixed indentation options: ["選択肢1","選択肢2","…

daab runしたら、module 'cron'を見つけられませんと怒られたので調べてみた

プロジェクトディレクトリに移動して、インストールを 実行したのに、モジュールの'cron'が見つけられねーと 文句を言われてエラーで落ちたので、再検証。 調べたところ、担当者は深く考えないでnode-cronって 伝えたみたいだけど、実際に、同名の2つのプロ…

daabのサンプルスクリプトのコマンドの使い方

daab initの実行で、daab-starterをインストールすると 漏れなくついてくる、ping-pongサンプルスクリプトが 去年の6月以降、もれなくcoffeeからjsファイルに置き換 わってる件を共有すべきなのかどうか迷いどころ。 っていうか、daab開発者ブログにコッソリ…

daabでログイン、実行、ログアウト

前回の記事でdaab initに成功したので、ターミナルから directの既存の自分のユーザアカウントでログインして、 実行、ログアウトまでできるのか確認する(ΦωΦ) [手順] 1. 既存の自分のアカウントでログイン。 $ daab login[2018-04-18 15:15:40] WebSocket o…

改めてdaab initを実行したら、githubにSSL connect error と言われて弾かれた

これはCentOS6.x系のcurl関連パッケージが古いために発生する エラーらしい(ΦωΦ) bot作成への道のりは遠いなー。 [エラー状況] daab initを改めて実行したら下記エラー。 $ daab initfatal: unable to access 'https://github.com/lisb/daab-starter.git/': …

daab initしようとしたら、オマエのgit clientは古いからアップグレードしろと言われたので

CentOS 6.5のyumで入れたgit clientのバージョンが1.7.1で daab initコマンドの実行に失敗して、「まずはgit clientをアップ グレードしろ、話はそれからだ!」というメッセージを頂いた ので、2.xへのアップグレードを実行した際の備忘録(ΦωΦ) [エラー状況]…