くりにっき

フルスタックキュアエンジニアです

ChatWork API v2への追従について

下記でChatWork APIのバージョンアップがアナウンスされています

help.chatwork.com

既にv2はリリースされていてv1は5月上旬に停止予定とのことなので早めにアップデートしておくのがいいでしょう

とのことで、自分の視界に入っている限りでのv2対応状況について紹介します

既存のプログラムをv2対応する

既存プログラムの改修レベルでいえば

  • エンドポイントをv1からv2にする
  • 静的型付け言語であれば message_id の型をintegerからstringにする

だけで動きます。完全なv2 API対応にはコンタクト承認依頼APIにも対応する必要がありますが、「v1 API廃止後も既存のプログラムが問題なく動く」ということだけにターゲットを絞ればこの2つだけで十分かと。(以降「v2対応」はこの最低限の対応を指します)

他の人が作ったライブラリのv2対応状況

chatwork

github.com

Rubyで一番使われてそうなChatWorkクライアントのgem

https://github.com/asonas/chatwork-ruby/pull/14 でv2対応されているので、v0.4.0以降を使えばv2対応完了です

capistrano-chatwork, cha

github.com

github.com

capistrano-chatworkの中で使ってるクライアントgemがchaです。

chaとcapistrano-chatworkの両方でPR投げて取り込まれています。

cha v1.2.0以降とcapistrano-chatwork v1.4.0以降を使えばv2対応完了です。*1

go-chatwork

github.com

golang用のクライアント。本家 ではなくfork版の方です

https://github.com/griffin-stewie/go-chatwork/pull/8 でPRを投げて取り込まれているので go get -u github.com/griffin-stewie/go-chatwork すればv2対応完了です。

拙作のChatWork系ツールのv2対応状況

Jenkins ChatWork Plugin

github.com

v1.0.8 でv2対応完了しています。余談ですがこの時送られてきたPRで初めてChatWork API v2のことを知りましたw

https://github.com/jenkinsci/chatwork-plugin/pull/34

zatsu_monitor

github.com

v0.2.2でv2対応しています

capistrano-around_chatwork

github.com

v0.1.1以降にアップデートすれば自動的にchatwork gemのv0.4.0以降(v2対応版)が入るようになってるのでそれでv2対応完了です

ただし capistrano-around_chatwork v0.1.1 と capistrano-chatwork を同時にインストールしようとするとバージョンがコンフリクトして bundle install できないので capistrano-around_chatwork v0.2.0推奨

詳細: https://github.com/sue445/capistrano-around_chatwork/pull/2

fluent-plugin-chatwork

github.com

v1.0.1にアップデートすれば自動的にchatwork gemのv0.4.0以降(v2対応版)が入るようになってるのでそれでv2対応完了です

*1:capistrano-chatworkのPRを見てもらえれば分かりますが、chaだけだと依存の関係でbundle installできないのです