今日から仕事でまたブラジルに行くのだけど数日前からブラジルではXの利用が禁止されてしまった。
VPNとかで回避すればいいかと思ったものの、VPN等での回避は約130万円の罰金が課されるということで厳しい。
なので渡航中はBlueskyに投稿しようかなと思ったが普段からソーシャルはXをメインにしていてログ代わりにもしているので渡航中全く投稿できないのも困る。
ブラジルではBlueskyに投稿し、それをXにも同期したらいいじゃんとことで探してみたもののマルチポスト系のツールはクライアントサイドから両方にアクセスすることが多いのでそれも無理そう。もっと探したらあるのかもしれないが。
IFTTTあたりで連携できないかと思ったが用意されてるものはなく、どうしたもんかと思っていたらBlueskyは自分の投稿をRSSフィードとして取得できることを知った。それならば簡単である。
IFTTTでよくあるRSSフィード連携をすればいいだけだ。果たしてそこまで必死になってXに投稿する必要があるのか?という疑問は湧いてきているがとりあえずやってみよう。IFTTTのサインアップだとかは終わってる前提。なお、自分の場合IFTTTが有料アカウントなので無料アカウントだとできない部分があるかもしれない。そこは試してみて。
IFTTTで新しいアプレットを作成
If ThisでRSS Feedを選択
New Feed Itemを選択
Feed URLにBlueskyのRSSフィードのURLを設定
Blueskyの自分の投稿のRSSフィードは自身のプロフィールURLにrssをつけたものになっている。僕の場合、プロフィールURLはhttps://bsky.app/profile/keisuke69.bsky.social
なのでRSSフィードのURLはhttps://bsky.app/profile/keisuke69.bsky.social/rss
だ。このURLを入力する。
続けて、Then ThatにXを選択
なお、探すときはXではなくTwitterにしたほうが探しやすい。
Post a tweetを選択
アカウントと投稿テキストを設定
Twitterのアカウントはこの画像では設定済だが新規の場合は追加する。これはよくあるアカウント連携と同じ感じ。
投稿テキストについては先程のRSSフィードをIFTTTが解釈した項目で指定する必要がある。ここがいまいち謎な仕様。RSSフィードのキーをそのまま入れられるといいんだけど。
というわけで本文はEntryContent
なのでそれを設定する。Add integration
から選ぶのでも直接{{EntryContent}}
と入力するのでもいい。
名前をつけて保存
完成
これでBlueskyに投稿すると自動的にXへも反映される。ただし多少のタイムラグはある。自分の場合5分から10分遅れて反映される感じだ。
あと、画像はできないっぽい。これはX側の仕様とかというよりBluesky側のRSSフィードにそもそも投稿に含まれる画像の情報がない。
なのでここについては諦めるしかない。
あとは投稿数の制限とかもあるかもしれないがよくわかってないのでひとまずこのまま運用してみる