はてなブックマークから連携投稿する(2024年5月)

コラム

はてなブックマーク歴は思い出せないが、そこそこ継続的に使わせてもらってる。コメントで交流というよりは、純粋にブックマークの蓄積先として。

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ページを開く

GitHub - kotas/hateb-to-bluesky: A Cloudflare Worker for posting bookmarks to Bluesky from Hatena Bookmark
A Cloudflare Worker for posting bookmarks to Bluesky from Hatena Bookmark - kotas/hateb-to-bluesky

あとはこのページの書いてる内容に従って、設定していけば良い。

一つだけ分からず困ったのは、Cloudflare Pagesで自分のアカウントIDを調べる方法。
たぶん自分で一から開発される場合はなんてことないけど、GitHub Actionsからデプロイする場合に、アカウントIDを見つける手段が限られるようで、最初は全然わからず困った・・・。

以下のページの内容でやっとわかった。

Cloudflare Pagesへのデプロイを、GitHub Actionsから行う方法 | WP-kyoto
GitHub Actionsを使用して、Cloudflare Pageにデプロイする方法を解説した記事です。この方法は、静的サイトジェネレーターであるSSGをスケジュールビルドする場合などに最適です。記事では、Cloudflareのアカウン...

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/

コメント

タイトルとURLをコピーしました