本記事は Mastodon Advent Calendar 2017 6日目の記事です。
昨日は @Ress さんによる Mastodon をカスタマイズする でした。
こんにちは!6日目担当の koogawa です。
突然ですが、私は Swarm というサービスが大好きです。
毎日、どこへ行くにもチェックインは欠かさず、総チェックイン数は 20,000 を超えました。
そして先日、ついに Swarm のチェックインを IFTTT で Mastodon へ転送する Applet を作ってしまいました。
以下にその手順をまとめます。
用意するもの
- Curl の使える環境 - Curl でなくても、コマンドラインでHTTPリクエストが送れること。
- IFTTT アカウント
- Swarm アカウント
- Mastodon アカウント
これらのアカウントの作成方法については、ここでは触れません。
これ以降、Mastodonの登録メールアドレスとインスタンスを以下のものとして記します。
| メールアドレス | インスタンス |
|---|---|
| hogehoge@fuga.example.jp | mastodon.example.com |
Mastodon の access_token を取得する
Mastodon にアプリケーションの登録を行い、access_token を取得します。
手順については @yukimochi さんの記事にとても丁寧にまとめられています。(私もお世話になりました!)
Twitter の投稿を IFTTT で Mastodon へ転送する。 - Qiita
client_name は「From Swarm」、website は「https://www.swarmapp.com/」にすると良いでしょう。
IFTTT で Swarm のチェックインを転送する。
取得した access_token を用いて、IFTTT から Swarm のチェックイン内容を Mastodon に投稿します。
今回はすべてのチェックインを Mastodon に投稿するのではなく、チェックイン時に #mastodon の文字を含むチェックインだけを投稿するようにしてみます。
- IFTTT のページ上部の
My Appletsをクリックし、New Appletをクリックする - 青文字の
thisをクリックし、Foursquareを選択する(Swarm ではないので注意!) -
New check-in taggedをクリックする -
Tagにmastodonと入力し、Create triggerをクリックする(#は不要です) - 青文字の
thatをクリックし、検索ボックスに'webhook'と入力し、Maker Webhooksをクリックする。 -
Make a web requestをクリックする。 - 以下の通りに項目を埋める。
なお、インスタンスのURLと<>の場所は、必ず自分の環境のものに書き換えてください。(<>も含めて書き換えてください。)
| 項目 | 内容 |
|---|---|
| URL | https://mastodon.example.com/api/v1/statuses |
| Method | POST |
| Content Type | application/x-www-form-urlencoded |
| Body | access_token=<64字の英数字>&status= I'm+at+@{{VenueName}}+{{ShoutNoHashtag}}+{{VenueUrl}}&visibility=<希望の公開範囲> |
入力したら、Create actionをクリックします。
最後に、Finishをクリックして完成です。
この直後から、Swarm に #mastodon 付きでチェックインすると、Mastodon に次のフォーマットで投稿されるようになります。
I'm at @渋谷駅 ["おはよう ございます"] http://4sq.com/5i7TJf
{{VenueName}} や {{ShoutNoHashtag}} 以外にもいくつか ingredient が用意されているので、いろいろ試してみると面白いと思います。
さいごに
せっかく IFTTT に Applet を作ったので一般にも公開したかったのですが、現在は「パートナー」と呼ばれる企業向けの有料アカウントしか公開ができなくなってしまったようです😢
一手間かかりますが、これを機にぜひこの Applet を試してみてください。
良い Mastodon & Swarm ライフを!😄
Mastodon Advent Calendar、明日はまだ空きがあるみたいですよ!