SlackのReal Time Messaging APIで得られる情報を眺める

自身のSlackアカウントが受領している情報を1箇所に集めてナニカできるかなと思ったとき、まず雑に情報だけ取得してみようと思い試してみた。

github.com

というのがあってnpmでも公開されているのでnpm installする。

$ npm install --save @slack/client

サンプルにもある通りなのだけれども一応さらっておくとここで取得できるトークンを利用して雑に以下の様なコードを実行するとReal Time Messaging APIで取得できる情報が全てダンプされる。

var token = 'xoxp-******-******-*****-*****';
var slack = require('@slack/client');
var RtmClient = slack.RtmClient;
var RTM_EVENTS = slack.RTM_EVENTS;
var CLIENT_EVENTS = slack.CLIENT_EVENTS;
var rtm = new RtmClient(token, {logLevel: 'debug'});
rtm.start();
rtm.on(RTM_EVENTS.MESSAGE, function (message) {
// 例えばメッセージを検出したときにはここでナニカする
});

実行すると以下の様な形で取得された情報のJSONが流れていく。

debug: { '0': 'raw_message', '1': '{"type":"pong","reply_to":2032}' }
debug: sending message via ws: {"type":"ping","id":2033}
debug: {"type":"message","channel":"C03QHFYDB","user":"U02B59NCD","text":"てすと","ts":"1494125387.277986","source_team":"T02B3CR15","team":"T02B3CR15"}

ログレベルを debug にしているので全てのRTM APIで得られたJSONが出力されている。

チャンネル上で発言された内容や別で立ち上げていたクライアントがサーバー側と接続状態を確認するためのping-pongだったりが眺められたりして素朴に面白い。

オクラときゅうりのあえもの, 押井守監督のインタビュー – 徒然日記

ゴールデンウィークだからといって特に何をするわけでもなく予定があるわけでもないので昼から自宅で料理していた。

radiko阪神対広島の中継を聞きながら手羽元煮込んだりオクラで和物作ったり。いろいろ作れたので満足。

オクラはきゅうりと和えたのだけれども立夏ということで夏っぽくてよかった。

  • きゅうり(1本)は千切りに、オクラ(5〜6本)は塩もみして産毛を取ってそのまま1分間熱湯で茹でた後、小口切り。
  • 塩もみしたきゅうりの水分を絞ったものと小口切りにしたオクラを混ぜてそこに醤油大さじ1, 酢大さじ1, みりん少々を混ぜる
  • 冷やして小皿に盛る

簡単なのでおすすめ。だんだんさっぱりしたものが欲しくなってくる季節柄。写真すらとってないけどイメージしたまんまのものができる。

ご飯を食べた後、下のインタビュー記事読む。

大分前のインタビューだけど映画版「機動警察パトレイバー2」の後藤隊長のモデルがスタジオジブリ鈴木敏夫さんだったという話読んでなるほどと思ったり。言われてみれば共通点感じる。

business.nikkeibp.co.jp

意味なく電車に乗る – 徒然日記

特に行くあてもなく電車に乗り終点の駅まで行ってみた。天気がよくて車窓から見える景色が穏やかでよかった。特に目的なくふらりと電車に乗ってみるのもよいな。あと川を越える度に同じ東京都でも景色がどんどん変わっていくのが面白い。

徒然日記 – 机の上の整理

連休恒例の自宅の机整理実施。こまめに掃除をしていたりしているのだけれども最近自宅勤務する必要があったときに長居していると使わないから片付けたり処分したほうがよいなと思うものが目についたので。

本も以前は1軍、2軍と分けて*1手元に置いておきたいと思う本は机の上の小さな本立に(1軍), それ以外は本棚(2軍) として置く様にしていたのだけれども、本棚の方で分ければいいのでは。と思い本棚の方で1軍、2軍と棚を分けることにして机の上はできるだけ広くなる様にしてみた。こうすると結構余裕が出てそこそこ長く机の上で作業してもストレスが減った気がする。机は空いているスペースができるだけ広いほうがいいと最近は思う。

片付けをして一息ついてパラパラと本を読んだりして過ごす。数学ガール改めて読んだけど面白いな。順列組み合わせとか計算量の話だったり何度でも読み直したい内容。

数学ガール/乱択アルゴリズム (数学ガールシリーズ 4)

数学ガール/乱択アルゴリズム (数学ガールシリーズ 4)

*1:たとえが昭和である

2017年4月に読んだ本を振り返る

4月6作品。技術書が消えた。来月は読むぞ。

罪の声は評判通りの引き込まれ具合で本を買った当日と翌日までに一気に読み終えた。フィクションなのだけれども事実に基づいた積み重ねによって一瞬ノンフィクションなのではないかと思った瞬間にこれはフィクション出会ってほしいと思う切なさが積み重なった読後感だった。416ページの厚みを全く感じさせなかった。

ジブリの文学はあとがきの文章がとても素敵だった。

宮さんの引退宣言を喜んだのは、僕をおいて他にいない。日本中が悲しみに包まれていた。

なのに、あのとき、ぼくだけが壇上でニコニコしていた。

老後の楽しみ。肩の荷を下ろす。色んな言葉が浮かんでいた。これから何をやろう。そう考えると嬉しさを押し殺すことが出来なかった。
束の間の夢だった。

一期は夢よ、ただ狂へ。こうなったら、やるしかない。

もっと自分も狂おう。いい意味で。


hideackの本棚 - 2017年04月 (6作品)
ジブリの文学
ジブリの文学
鈴木敏夫
読了日:04月08日
評価5


罪の声
罪の声
塩田武士
読了日:04月30日


powered by Booklog

徒然日記 – 半年遅れで月刊スピリッツを買う

半年前に買おうとして渋谷の本屋を回ったけどどの書店でも売り切れだった月刊スピリッツAmazonマーケットプレイス経由で手に入れた。

そして、機動警察パトレイバー後藤隊長カレンダーを手に入れた。

f:id:hideack:20170430222955j:plain

ストレングス・ファインダー

所属している事業部でマネージャーを中心に試していたストレングスファインダーを使った強みを見つける試みが全社的に広がってきたのでそのあたりの話。

さあ、才能(じぶん)に目覚めよう 新版 ストレングス・ファインダー2.0

さあ、才能(じぶん)に目覚めよう 新版 ストレングス・ファインダー2.0

ちなみに自分が試してみた際の結果は以下の様になりました。

  1. 学習欲
  2. 調和性
  3. アレンジ
  4. 共感性
  5. 個別化

こうやって診断が出た後に解説等も厚いのでそこを一読してみて自身の業務等々にどの様に活かすかを考えてみるのも一つありますが、もし組織でも行ってみたときは以下のことをしてみると更に活かせそうです。

チームの方にも試してもらう

同じチームの人に試してもらえた場合、その結果をスプレッドシート等にまとめてみるのがお薦めです。ちなみにペパボでは診断を試してみた人から随時Google docsスプレッドシートに任意で記入が行われており、各事業部だったりチーム毎にどの様な強みを持った人が集まっているかを一覧することができます。

同じチームの人たちの結果を見たとき、例えば強みがバラバラになっていた場合は相互に強みを補完しあえる可能性が高いと思っているため、改めて結果を通じて自分が持たない強みを持っている人が居た場合に自分はこういったところを助けてもらっているだということを改めて気づいたり、逆に一致する部分があれば、よりその強みをチームとして伸ばすためにはどうすればよいのだろうかと考えたりします。

自分が持っていない強みを持つ人を思い浮かべてみる

同じチーム外の人の結果も知ることができたときに、自分と全く違う強みを持った人が当然出てきます。そうしたときにその人が具体的にどの様な普段業務をされていて、その強みどの様な形で活かして仕事をされているのだろうかと少し興味を持ってみると自分の結果をみたときとは違う見かたができて、その強みの部分を自分自身も取り入れることはできないかと考えたりすることができます。

もちろんそれぞれの得手不得手やそれまでの経験に左右される部分もあるとは思いますが、一度考えるのも自身の強みの幅を増やす一助になるような気がしています。


自身や組織にとっても気づきの一助になることが多いので、一度試されてみてはいかがでしょうか。

徒然日記 – 突発的呑み会と渋谷の工事

仕事終わりにお誘い頂いたので居酒屋へ突入してビールとハイボール

渋谷駅近くの歩道橋から眺めた工事の様子は渋谷の街を作り変えている様に見えた。ここ数年の間でも大分様子が変わるもんだな。

f:id:hideack:20170422095023j:plain:w500

googleカレンダー(iCal)の内容を読み取ってSlackのユーザーステータスを更新する

Slackでユーザーのステータスを更新できる様になりました。

Set your status in Slack – Several People Are Typing — The Official Slack Blog

これを知ったときにカレンダーの予定を読み取って自動的にステータス更新できたら自分の予定を自分に声をかけようとしている人に対して知らせることができるなと思って、APIでも更新できることを知ったので雑に社内で使っている自分のGoogleカレンダーの予定をiCal経由で読み取ってSlackのステータスを更新してみるのを試してみました。

もしこれができると、自分が社内の用事で離席をしていたり外出しているときなどにSlackで何らか声をかけていただいても反応できないときに状況を把握してもらえたり、外部から御電話いただいたときも代表電話を受け付けていただいた方がわざわざ自分のカレンダーを開いて予定を確認していただくといった手間も多少は緩和できそうだな。と。

ということで、こういうときの実験台には当方作成のevacで実験をします。入力をiCal、出力をPOSTリクエスト指定すればよさそう。

なお、出力で指定しているtokenはこのページで取得できます。

以下の様なYAMLを用意して、evacで実行。

in:
ical:
url: https://calendar.google.com/calendar/ical/hideack〜/basic.ics
within: 1
out:
httpPost:
url: "https://slack.com/api/users.profile.set"
body:
form:
token:profile: '{"status_emoji":":clock2:", "status_text":"__word__"}'

これを定期的に実行すると実行時から1時間以内の予定があればSlackのステータスが更新されます。

例えば、下は4月16日 12:00〜 「slackステータス更新試してみるテスト」という予定があった場合。

ステータスを示すアイコンにマウスカーソルを合わせると

f:id:hideack:20170416113246p:plain

といった感じで表示されますし、DMを送ろうとすれば入力欄に

f:id:hideack:20170416113310p:plain

と表示される様になるので当方がいま外出しているかだったり、ミーティング中なのかだったりはお知らせできそうな感じがします。

Slackはこういった形で基本的なコミュニケーションツールとしての基礎の上にプログラマブルに拡張できたりしていく仕掛けを備わっているのが本当に素敵だなぁ。といつも思う。

参考

qiita.com