密かに密告、いつか報復

与太話

専門学校が豊橋にあったので学校帰りに名古屋まで行くことが時々あった。目的地は大抵アニメイト。豊橋のアニメイトでは取り寄せ扱いになってしまう商品をゲットできる確率が高かった。なるべく早く帰るために豊橋名古屋間では新幹線を利用。新幹線名古屋往復切符のおかげで安く移動できた。

TwitterのツイートをMastodonへそのまま自動で投げる方法を構築したので備忘録として掲載。この方法を構築するにあたり以下の2つの記事を参考に構築した。
まず大前提としてTwitter。Mastodon、IFTTTのアカウントを取得する。それについては色んな所で手垢がつくほど紹介されているので省略。

続いてMastodonにログインした状態でAccess Token Generator for Mastodon APIにアクセス。以下の項目を入力・設定しておく。
  • Mastodon URL
    • 自分がアカウントを作ったインスタンスのURLを入力。例えばmstdn.jpでアカウントを作ったら「https://mstdn.jp」という風にhttps://から入力する。
  • Client Name
    • 連携アプリの名前を入力。これは何でもいい。
  • Scopes
    • アプリに与える権限を設定する。ツイートをトゥートするだけなので「write」を選択。
上記の項目の設定が終わったら「Publish access_token」をクリックし、自身が作った連携アプリをアカウントに承認させる。承認するとアクセストークンが表示されるのでこれを控えておく。続いてIFTTTにアクセスの上、ログイン。画面上部のMy AppletsをクリックしてNew Appletsへ移動。
  • 「if✚this then that」と書かれている箇所の「✚this」をクリック。様々なサービスのアイコンがタイル形式で表示されるので、その中からTwitterを選択。
  • 「New tweet by you」を選択。リツイート、リプライも転送するか選べるのでお好みで設定する。私はリツイートもリプライも転送しないよう設定している。
  • 「Create trigger」をクリックし、Twitterとのアプリ連携を許可する。
  • 続いて「if✚this then that」と書かれている箇所の「✚that」をクリック。
  • 検索ボックスに「webhook」と入力するか、サービスアイコンタイルから「webhook」を探してクリック。「Make a web request」をクリックして以下の項目を設定する。
  • URL
    • 以下のように入力。太字の部分は自分がアカウントを取ったインスタンスのURLに置き換える。
    • https://インスタンスのURL/api/v1/statuses
  • Method
    • 「POST」を選択する
  • Content Type
    • 「application/x-www-form-urlencoded」を選択する
  • Body
    • 以下のように入力。太字の部分はさっき控えておいたアクセストークンを入力する。イタリックの部分は全部開けっぴろげにするならpublicでOK
    • access_token=アクセストークン&status= {{Text}}&visibility=公開範囲
  • 最後に「Create action」→「Finsh」をクリックしてアプレットを保存する。

以上を設定すればTwitterでツイートするだけでMastodonにもトゥートされるようになる。IFTTTというサービスを媒介する関係上、若干のタイムラグが生じる。これについてはどうしようもない。
なおインスタンスによってはbot行為を大変忌み嫌う場合があるので運用は慎重に。