はてなブックマーク歴は思い出せないが、そこそこ継続的に使わせてもらってる。コメントで交流というよりは、純粋にブックマークの蓄積先として。
X(Twitter)のAPI連携が色々とあった関係もあり、いまはBlueskyやMisskeyなども活動先としているので、これらにも連携投稿したいなぁ・・・というのが以前より課題あって、いろいろと模索していた。やっと形として使えそうなので、記録を残す
概要:
はてなブックマークに投稿したら、連携先SNSへ自動投稿する。共通化はできなかった。
- はてなブックマーク(RSS) → IFTTT → X(Twitter)
- はてなブックマーク(RSS) → IFTTT → Misskey
- はてなブックマーク → Cloudflare Pages(hateb-to-bluesky) → Bluesky
IFTTTを使ってX(Twitter)へ自動投稿する
以下の記事の内容に従って登録すればOK
IFTTTを使う場合、はてなブックマークから出力されるRSSからブックマークコメントを抽出して、SNSへの投稿をすることができない・・・という課題がある。
そして、その解決策として上記記事のkoogawaさんが、はてなブックマークRSSをIFTTTで使いやすいように変換してくださっている。個人サービスのようですから、使えなくなったらそれまでというつもりで。公開いただいていることに感謝。
koogawaさんのサービスで、例として私(IGA-OS)のはてなブックマークを変換すると、以下のURLになる(IGA-OSの文字列を自分のIDに置き換えてください)
https://koogawa.sakura.ne.jp/hb/rss.php?id=IGA-OS
これを使っていく。
IFTTTは無料ユーザーだと投稿間隔とか登録数に制限がありますが、とりあえずこの連携だけなら無料アカウントでもいける模様。(自分は有償アカウント契約してます)
IFTTTにログインし、X(Twitter)をConnectする
右上の[CREATE]をクリックして作っていく
「If This」の[Add]をクリックして、“RSS”を選択する。
先ほど確認したRSSを登録する
「Then That」で“X”を選択する
投稿するアカウントを選んで、Tweet Textに以下のように登録する
{{EntryContent}} / {{EntryTitle}} {{EntryUrl}}
#bookmark
以上で完了だ。
IFTTTを使って、Misskey.ioへ自動投稿する
参考にするのは以下の記事だ。
今回はMisskey.ioへの投稿とするが、Webhookを使用する。
ただし使用にあたっては、Webhookの制限などを確認しておきましょう。(高頻度のWebhook投稿は制限されることがあります)
先のX(Twitter)連携と共通で、IFTTTの「If Then」の部分は同じRSSを指定する。
「Then That」の部分は、“Webhook”を選択。
各パラメータは以下。
URL:
https://misskey.io/api/notes/create
Method:POST
Content Type:application/json
Body:
{ "i": "your_access_token", "text": " {{EntryContent}} \n 『 {{EntryTitle}}』 \n {{EntryUrl}}" }
「your_access_token」の文字列部分は、Misskey.ioのAPI設定メニューより、アクセストークンを発行したものを入れてもらったら良い。
たぶん投稿したものは、たぶん私のMisskey.ioアカウントを見てもらったら見えるんじゃないかな・・・と思う。
https://misskey.io/@igalog
hateb-to-blueskyでBlueskyへ自動投稿する
hateb-to-blueskyがGitHubで公開されているので、Cloudflare Pagesへデプロイしてして設定すれば良い。GitHub Actions使えば、デプロイ作業初めての素人な私でもめっちゃかんたんだった。
作者様に感謝。
Cloudflare Pagesは、無料プランで個人利用なら十分。
まず、Githubのhateb-to-blueskyページを開く
あとはこのページの書いてる内容に従って、設定していけば良い。
一つだけ分からず困ったのは、Cloudflare Pagesで自分のアカウントIDを調べる方法。
たぶん自分で一から開発される場合はなんてことないけど、GitHub Actionsからデプロイする場合に、アカウントIDを見つける手段が限られるようで、最初は全然わからず困った・・・。
以下のページの内容でやっとわかった。
CloudflareのアカウントIDを見つけた方法
「これが正解!」という自信は全くないのですが、とりあえずURLから判別できます。ダッシュボードにログインした際のURLが https://dash.cloudflare.com/1234567890/pages/view/page-nameだった場合、1234567890がアカウントIDです。
https://wp-kyoto.net/deploy-webapp-to-cloudflare-pages-from-github-actions/
コメント