プログラムのメモ

JSとかAPIとか諸々のメモ

Slack API 設定方法

概要 slack api からアプリを作成して、 使用する機能に応じて下記で設定を行う。 botの作成 Bot User 表示名を登録する。 「Always Show My Bot as Online」をチェックすると、 追加したbotのステータスが常にログイン状態に表示される。 特定メッセージに…

heroku コマンド一覧

ログイン heroku login app 新規作成 heroku create [app name] heroku に内容を反映する git push heroku master git から push する 事前に commit しておくこと remote の設定 heroku git:remote --app [app name] 基本的にはcreateしたタイミングで自動…

slash commandの3秒ルールをどうにかする。

SlackApiで作成できるslash commandではレスポンスを3秒以内に返さないとタイムアウトしてしまうが、GASをサーバとして使用する場合、この問題は相性が最悪だと思う。 そもそもGASは非同期処理を推奨していないようでsetTimeout系が全く使えない。 Lambdaの…

スプレッドシートの扱い

GASでスプレッドシートを操作する際のメソッドをまとめた。 スプレッドシートの作成 SpreadsheetApp.create("シート名"); スプレッドシートの新規作成。drive直下に作成されるので、ディレクトリを変えたければ、driveメソッドで別途移動させるしかない。 ス…

prototype内でのsetTimeoutの呼び出し

JS

prototype内でsetTimeoutなどの非同期処理を使ってthisを呼び出す場合、 通常のthisが重複する処理同様、いったん別変数に移し替えてから行う。 function aaa(){ this.cnt = 1; } aaa.prototype.bbb = function(){ this.cnt++; var self = this; setTimeout(…

WPインスト時のセキュリティ対策

セキュリティプラグインの導入 All In One WP Security & Firewall 英語表示 基本的にはこれ入れればOK SiteGuard WP Plugin 日本語表示 機能が少なく物足りない 不要な機能の制限 XML-RPCを無効にする <Files xmlrpc.php> Order Deny,Allow Deny from all </Files> REST APIを無効にす…