GAS こと Google App Script で Twitter に代理ログインし、自動で DM を送れるようにしたかった。 そのためには、OAuth1.0a を実装する必要がある。
幸い、TwitterWebService.gs (1rgo8rXsxi1DxI_5Xgo_t3irTw1Y5cxl2mGSkbozKsSXf2E_KBBPC3xTF
) がシェアライブラリとして登録されているが、いまいちよくわからない。
M-Igashi/TwitterWebService.gs という元ソースらしきものを参照しつつ、class
に書き換えた。
しかし、上記まででは一つのアカウントしか認証できなかった(複数認証すると上書きされてしまう)。
これを回避するために、OAuth1.createService(this.username)
というように、引数に複数のキーが与えられるように改変した。
こうすることで、PropertiesService
は複数の値を保持できるし、authCallback(request)
の request
からも request.parameter.serviceName
という形で逆引きできる。
この gist ではここまでしか書いていないが、後は適宜リスト等で複数アカウント用意して処理するとよい。