こんにちは! タダケン(@tadaken3)です。
以前お伝えしていたとおり、Go言語の勉強を進めています。
今回はコマンドラインからSlack、チャットワーク、LINEに簡単に通知を送るツールを作成しましたので、ご紹介を致します。
Notifyの機能について
機能はとてもシンプルです。百聞は一見にしかず。こちらのデモをご覧ください。コマンド一発で、Slack、LINEやチャットワークに通知を送ることができます。デモではSlackしか載せていませんが、もちろんLINEやチャットワークにも通知が送れます。
Notifyを利用するには
せっかくなので、利用方法について簡単にご紹介させていただきます。 Notifyを利用いただくには、まず、こちらからご自身の環境にあったファイルをダウンロードしてください。
ダウンロードしたあとzipファイルを解答すると、notifyの実行ファイルが入っています。 こちらを実行ファイルをパスがとっているところにファイルを保存してください。
パス?って何って方は以下の記事を参考にしてみてください。
あとはホームディレクトリに、「.notify.yaml」という設定ファイルを作成します。 この設定ファイルに、各チャットツールのアクセストークンやルームID、チャンネルなどの情報を保存します。
line_access_token: XXXXXX
chatwork_access_token = XXXXXX
room_id = XXXXXX
slack_token = XXXXXX
channel = genneral
アクセストークンは設定ファイルに保存しなくても、コマンドラインのオプションで指定することもできます。 詳しい説明は以下のページにも記載していますので、こちらもご覧ください。
Notifyを作ろうと思った理由
「Notfiy」を作ろうと思ったきっかけは、現在、本業やブログ執筆でいろんなチャットサービスを利用しています。案件やプロジェクトによって、利用しているチャットツールが異なっているので、ひとまとめにして簡単にメッセージが送れるようにしました。
作ってみて勉強になったこと
今回は、コマンドラインツールを作成を目的にしたいたこともあり、vimというエディタで開発しました。vimを本格的に触ったので、最初は四苦八苦しながらでしたが、デスクにチートシートを貼り付けて少しずつコマンド覚えていきました。まだまだなれないことも多いですが、一回使い出すととても便利です。なにより、コマンドプロンプトやターミナルで使えるエディタというのは便利でした。
また、作成したコードをGithubにあげるだけでなく、Githubのリリースページに実際のリリースページを置くところまでやってみました。
今後やりたいこと
とりあえず、作ってリリースしたので、動くことは動くのですが、機能としてはまだまだブレッシュアップが必要だなと思っています。とりあえず、画像や添付ファイルの送信なんかにも対応していきたいと考えています。
また、コードはある程度書けるようになったのですが、設計・デザインパターンの勉強がきちんとできていないので、このあたりはもうちょっときれいに作り変えたいと思っています。
あと、テストコードもきちんと書けていないので、テストの技法なども勉強して、ちゃんとテスを書けるようにならないとなと感じました。
もし、要望や改善提案などあれば、Pull Requestいただけるとうれしいです。