【「げむ鯖 Advent Calendar 2022」特別寄稿】Nintendo Switchから直接的にMastodonにアルバム画像をシェアする方法(Twitter、IFTTT経由)(2022年修正版)
本記事は、「げむ鯖 Advent Calendar 2022」2日目の記事です。
本記事は、2021年6月23日(水)に執筆致しました「Nintendo Switchから直接的にMastodonにアルバム画像をシェアする方法(Twitter、IFTTT経由)」を、現状に合わせて修正、補足したものです。
元記事も合わせてお読みいただければと思います。
私も参加している、ゲーム好きの集まるMastodonコミュニティ「gamingjp.org」におきまして、過去に、Nintendo Switchから直接Mastodonにトゥート出来るようにしたいという話が出ておりました。
もちろんNintendo Switchから直接Mastodonに投稿する仕組みは、2022年12月時点においても提供されていません。
そこで、いったん「Twitter」に特定のハッシュタグを含めてツイートし、「IFTTT」というサービスを用いてそれをMastodonにシェアするという形をとることにします。
この方法をとる場合、当然ながら、シェア対象とするMastodonのサーバ、「Twitter」「IFTTT」の3カ所にアカウントを保有している必要があります。また、「IFTTT」につきましては、(無料の範囲でも一応可能ですが)有料サービスのご利用をお勧めします。
以後、それを前提に話を進めます。
設定方法
今回は、こちらの記事を参考に設定をおこないました。
こちらはハッシュタグ無関係に、ご自身のアカウントによるツイートのすべてをシェアする方法について述べられていますが、これからやろうとしていることも基本的には同様です。
Mastodonのアクセストークン取得
- まず、シェア対象とするMastodonのアカウントにログインします。
- 投稿欄付近のリンクから「プロフィールの編集」を開きます。
- 左側のメニューから「開発」を選択します。
- 「新規アプリ」ボタンを押下します。
- 下記の設定にして、「送信」ボタンを押下します。
- アプリの名前
- 任意の名前を設定(必須)。自分は参考記事に倣い「
From Twitter
」としました。
- 任意の名前を設定(必須)。自分は参考記事に倣い「
- アプリのウェブサイト
- 設定は任意。自分は空欄にしました。
- リダイレクトURI
urn:ietf:wg:oauth:2.0:oob
- アクセス権
- 今回は「
write
」にのみチェックが入っている状態にしました。
- 今回は「
- アプリの名前
- 登録したアプリを開き、「アクセストークン」として表示されている43文字の英数字を控えておきます。「アクセストークン」はあとでIFTTTの設定をするときに必要になります。
IFTTTによる共有設定
- 「IFTTT」のアカウントにログインします。
- 「My Applets」を選択し、一覧画面を表示します。
- 画面右上の「Create」を選択してアプレット作成を開始します。
- 「If This」の右の「Add」ボタンを押下します。
- 検索窓で「
Twitter
」と入力します。するとサービスが「Twitter」一つに絞られるはずなので、それを選択します。 - 「New tweet by you with hashtag」を選択します。
- 「New tweet by you with hashtag」画面が表示されたら、次の設定をおこないます。
- 「Twitter account」欄に、ツイート共有元となるご自身のアカウントを指定します。
- 「Hashtag」欄に、Mastodonに共有させたいツイートに必ず含めるハッシュタグを一つ設定します。
- ここで設定したハッシュタグが含まれるツイートのみ、Mastodonに共有されるようになります。
- Nintendo Switchからの投稿を無条件に共有させる場合は、「
#NintendoSwitch
」というハッシュタグを設定します。
- 設定できたら、今度は「Then That」の右の「Add」ボタンを押下します。
- 検索窓で「
Webhooks
」と入力します。するとサービスが「Webhooks」一つに絞られるはずなので、それを選択します。 - 「Make a web request」を選択します。
- 「Make a web request」画面が表示されたら、下記のように設定して、「Create action」ボタンを押下します。
- URL
https://mastodon.example.com/api/v1/statuses
- もちろん「
mastodon.example.com
」の部分は実際にご自身がアカウントを持っているMastodonサーバのドメインに読み替えてください。 - 今回私は「gamingjp.org」に対してツイートをシェアしようとしていますので、「
https://gamingjp.org/api/v1/statuses
」と指定しました。
- もちろん「
- Method
POST
- Content Type
application/x-www-form-urlencoded
- Body
access_token=<先ほど取得したアクセストークン>&status= {{Text}}&visibility=<希望の公開範囲>
- 希望の公開範囲は、「
public
」(公開)、「unlisted
」(未収載)、「private
」(フォロワー限定)のいずれか。ダイレクトはたぶん意味がない。
- 今回自分は「
public
」(公開)に設定しました。しかし、サーバによっては利用規約によりbotアカウントによる「public
」(公開)トゥートを禁止しているところもありますので、使用可能な公開範囲については事前にサーバ管理者に確認をとるべきです。
- 今回自分は「
- 希望の公開範囲は、「
- URL
- 「Continue」ボタンを押下します。
- 「Finish」ボタンを押下します。
- 「Receive notifications when this Applet runs」を有効にすべきかどうかは不明。自分は有効にしました。
これで、晴れて、Nintendo Switch等のTwitter投稿機能のある端末からのツイートをMastodonにシェアできるようになっているはずです。
実際に、先ほど指定したハッシュタグを含めてツイートをおこないますと、しばらくしてから、Mastodon(今回の場合はgamingjp.org)に反映されるはずです。
ただ、残念ながらツイートに添付されている画像はそのまま画像としては添付されず、代わりに元のツイートへのリンクが設定されます。添付画像が1枚のみの時はそれでもいいのですが、複数あるときは元ツイートを見ないと確認できません。
まあそれでも、Nintendo Switchのアルバムに保存されている画像をスマホに転送したり、Switch本体をパソコンに繋いでそこからメディアを吸い上げたり、あるいは画像を保存したmicroSDカードをパソコンに接続したカードリーダーに挿入したりといった手間を考えると、だいぶ楽になることに代わりはありません。
Nintendo Switch以外でも同様のことはできるのか?
もちろん可能です。
今回はたまたまNintendo SwitchからTwitterに対しておこなった投稿をMastodonにシェアする方法について説明しましたが、ハッシュタグを変更すればNintendo Switch以外の端末からの投稿もシェアできます。例えば、「#PS5Share
」を対象とすれば、PlayStation 5からの投稿の共有も可能となります。
あるいは、特定のゲームに関するツイートのみをシェアしたい場合は、ゲーム機が付加するゲームタイトルなどのハッシュタグを指定すればよいでしょう。例えば「#モンハンライズ
」など。
また、ゲーム機などが必ず付加するハッシュタグのみならず、任意のハッシュタグを共有する設定にすれば、特定のカテゴリの話題のツイートのみをMastodonにシェアすることもできます。例えば「#政治
」というハッシュタグを共有する設定にすれば、ハッシュタグ「#政治
」を含めたツイートがMastodonに共有されるようになります。
個人的な願望
個人的な願望としては、Nintendo SwitchなりPlayStation 5なりといったゲーム機(に限らずSNS共有機能を持つあらゆる端末)がActivityPub(Mastodon等の分散型SNSで採用されている共通プロトコル)に対応してくれて、Mastodonにネイティヴで投稿することができるようになってくれれば、それがベストなのですが。
特に10月下旬以降のTwitterの情勢を考えると、ゲーム画像等のシェアのためにわざわざTwitterを使うのも憚られますし。
#2022年 #2022年12月 #2022年12月2日 #NintendoSwitch #ゲーム #Twitter #IFTTT #Mastodon #マストドン #SNS #分散型SNS #Fediverse #AdventCalendar