出勤したらslack statusを変更するコマンドを作った

出勤したらslack statusを変更するコマンドを作った

October 22, 2017,
tags: slack golang


このエントリーをはてなブックマークに追加

リモートワークというか会社に出勤したり、自宅で作業したり自由なワークスタイルで生活しているんだけど、一つだけ問題がある。

「会社に誰がいるかわからない」

地味に問題な時がある。
「会社の鍵忘れたけど、誰か今会社にいるかな?」とか「あー・・・荷物会社に届くんだけど、だれかいるかな?」とか。
普通にSlackで会社にいますか?って聞けばいいんだけど、それもちょっとめんどくさい。 自分のSlackのステータスを自動で変更できたらなーと前から思っていた。

今日たまたまFacebookみてたらTLでIFTTTを使ってSlackのステータスを変更する記事が流れてきた。
オフィスにいる間は、Slackのステータスを自動で会社の絵文字 🏢 にする | Tips Note by TAM

しかしIFTTTとかAndroid使うより、普段からMackbookを持ち歩いているので、Macbookが会社のwifiに接続したら「出勤してます」って形でstatus変えて、自宅のwifi繋いだら「自宅にいます」って変更できればいいなじゃないの?
って思ったわけです。

slack-wifi-status

ということで、作りました。 GitHub - polidog/slack-wifi-status

Golangで実装しています。
定期的に接続しているWifiのSSIDを取得して、設定ファイルで指定したSSID名だったらslackのstatusを変更するという簡単な実装です。

SSIDの検知はこれ使ってます。 GitHub - yelinaung/wifi-name: Get current wifi name
めっちゃ便利です。

使い方

まずは、zip落としてください
Release v0.0.5 · polidog/slack-wifi-status · GitHub
ちなみに今はまだmacにしか対応してません。

次に設定ファイルを自分のhomeディレクトリに用意します。
ファイル名は.slack-wifi-status.tomlで!

設定ファイルの記述例はこんな感じです。

[slack]
token = "your slack token"

[wifi]
  [[wifi.list]]
  name = "poliair-ac"
  message = "自宅で作業しています!"
  emoji = ":house:"

  [[wifi.list]]
  name = "tavii"
  message = "出勤しています!"
  emoji = ":office:"
  

あとは適当にip解答して「slack-wifi-status」を取り出して実行しましょう。

slack-wifi-status

設定ファイルを変更する

configオプションで設定ファイルする事ができます。

slack-wifi-status --config="/foo/bar.toml"

最後に

興味がある方はぜひ使ってみてください。
それから、Pull Requestとかフィードバック待ってます!

comments powered by Disqus