home.social

Search

90 results for “onreact”

  1. @onreact @rustybrick @searchliaison Half of Jake Boly's problem is that he's relying heavily on social media marketing and Google's current algorithms are rewarding that marketing - especially his parasitical subreddit (which, as I understand it, violates Google's Search Essentials???). So he isn't just struggling against the Helpful Content system - he's struggling against the Reddit spam problem. At least it's relevant for his query. I see way too much irrelevant Reddit crap in the SERPs these days.

    #seo #google #searchengineoptimization #webmarketing #digitalmarketing #hcu

  2. Do you think you have been unjustly "singled out" by #Google's #HCU (helpful #content system) update?

    Do you assume your site has helpful content already and "Google sucks"?

    This post I have written with actual #examples of #sites demoted by Google for unhelpful content may be for you:

    seo2.onreact.com/hcu-helpful-c

    Just don't kill the messenger! I know you are proud of your work and rather assign blame than to improve.

    Get over your ego then. Moaning and complaining like most people won't help.

  3. In 2023 many people used the term "parasite SEO" to describe a common practice of hosting third party content on authority domains.

    In reality this ages old technique is called #piggyback #SEO. Why the confusion? And why does it matter?

    It's not a good idea to tell people that SEOs are parasitical in times of "SEOs ruin the Internet" hatebait. CC: @glenngabe , @rustybrick, @dannysullivan

    seo2.onreact.com/piggyback-seo

  4. I've been considering what to add in the next version of BotKit (v0.2.0) and wanted to share my current plans. After reviewing feedback and examining the #ActivityPub ecosystem, I've identified three key features that would significantly enhance the framework's capabilities:

    1. Custom emoji support. This would allow bots to use server-defined custom emojis in their messages, making communication more expressive and allowing better integration with instance culture.

    2. Emoji reactions. I plan to implement both sending and receiving emoji reactions to messages. This provides a lightweight interaction model that many users prefer for simple acknowledgments or responses. This would manifest as new event handlers (like Bot.onReaction) and methods (like Message.react()).

    3. Quote posts. The ability to reference other posts with commentary is an important discourse feature in the fediverse. Supporting both sending quotes and detecting when bot posts have been quoted would enable more sophisticated conversational patterns.

    These additions should make #BotKit more capable while maintaining its simple, developer-friendly API. I expect implementation to involve extending the Message class and adding new Text processing capabilities, all while keeping backward compatibility with existing bots. Having built both Hollo and Hackers' Pub, I already have deep familiarity with how various ActivityPub implementations handle these features across the fediverse. I welcome any community feedback on priorities or implementation details before I begin coding.

    #fedidev

  5. BotKit 0.2.0のリリース

    BotKit 0.2.0をリリースしました!BotKitを初めて知る方のために簡単に説明すると、BotKitはTypeScriptで開発されたスタンドアロンのActivityPubボットフレームワークです。Mastodon、Misskeyなどさまざまなフェディバース(#fediverse)のプラットフォームと連携でき、既存プラットフォームの制約なしに自由にボットを作成できます。

    このリリースは、フェディバースにおけるボット開発をより簡単で強力にするための旅の重要な一歩であり、コミュニティから要望のあった機能を多数導入しています。

    より良いボットインタラクションへの旅

    BotKitの開発において、私たちは常にボットをより表現力豊かでインタラクティブにすることに焦点を当ててきました。バージョン0.2.0では、フェディバースの社会的側面をボットに取り入れることで、さらに一歩前進しました。

    カスタム絵文字でボットの個性を表現

    最も要望の多かった機能の一つがカスタム絵文字のサポートです。これにより、ボットは独自の視覚要素でメッセージを目立たせ、自分だけの個性を表現できるようになりました。

    // ボット用のカスタム絵文字を定義
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // メッセージにカスタム絵文字を使用
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}は、Fedify ${customEmoji(emojis.fedify)}によって支えられています`
    );
    

    この新しいAPIでは、次のことが可能になりました。

    リアクションによるコミュニケーション

    コミュニケーションは単にメッセージを投稿するだけではありません。他の人のメッセージに反応することも重要です。新しいリアクションシステムは、ボットとフォロワーの間に自然な交流ポイントを作り出します。

    // 標準のUnicode絵文字でメッセージにリアクション
    await message.react(emoji`👍`);
    
    // または定義したカスタム絵文字でリアクション
    await message.react(emojis.botkit);
    
    // リアクションを認識して応答するボットを作成
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}さん、私のメッセージに${reaction.emoji}でリアクションしてくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    この機能により、ボットは次のことができるようになりました。

    • Message.react()を使用してUnicode絵文字でメッセージにリアクション
    • 定義したカスタム絵文字でリアクション
    • Bot.onReactBot.onUnreactハンドラーでリアクションイベントを処理

    引用による会話

    議論では、他の人が言ったことを参照する必要がしばしばあります。新しい引用機能により、より結束力のある会話スレッドを作成できます。

    // ボットの投稿で他のメッセージを引用
    await session.publish(
      text`この興味深い視点について答えます...`,
      { quoteTarget: originalMessage }
    );
    
    // ユーザーがボットのメッセージを引用した場合の処理
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}さん、私の考えを共有してくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    引用機能により、ボットは次のことができるようになりました。

    • quoteTargetオプションでメッセージを引用
    • Message.quoteTargetを通じて引用されたメッセージにアクセス
    • 新しいBot.onQuoteイベントハンドラーで引用イベントを処理

    視覚的な改善

    コミュニケーションには視覚的要素も重要なため、ボットの表現方法を改善しました。

    • ウェブインターフェースで画像添付ファイルが正しく表示されるようになりました
    • ボットのコンテンツがより見やすくなり、豊かな体験を提供します

    内部改善:活動の伝播の強化

    フェディバースでの活動が伝播する方法も改善されました。

    • 返信、共有、更新、削除のより正確な伝播
    • 元のメッセージ作成者に活動が適切に送信されます

    これらの改善により、様々なフェディバースプラットフォームでのボットの相互作用が一貫性と信頼性を持つようになります。

    BotKit 0.2.0で最初の一歩を踏み出す

    これらの新機能を体験してみたいですか?BotKit 0.2.0はJSRで利用可能で、簡単なコマンドでインストールできます。

    deno add jsr:@fedify/[email protected]
    

    BotKitはTemporal API(JavaScriptではまだ試験的な機能)を使用するため、deno.jsonでこれを有効にする必要があります。

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    これらの簡単なステップで、最新機能を使ってフェディバースボットを作成またはアップグレードする準備が整いました。

    今後の展望

    #BotKit 0.2.0は、フェディバースボット開発をアクセスしやすく、強力かつ楽しいものにするための私たちの継続的な取り組みを示しています。これらの新機能が、皆さんのボットをフェディバースコミュニティでより魅力的でインタラクティブなメンバーにするのに役立つと信じています。

    完全なドキュメントと詳細な例については、私たちのドキュメントサイトをご覧ください。

    フィードバック、機能リクエスト、コード貢献を通じてこのリリースに貢献してくださったすべての方々に感謝します。BotKitコミュニティは成長を続けており、皆さんが作成するものを楽しみにしています!

    BotKitは、ActivityPubサーバーアプリケーションを作成するための低レベルフレームワークFedifyによって支えられています。

    #fedidev #フェディバース #カスタム絵文字 #絵文字リアクション #絵文字反応 #引用

  6. BotKit 0.2.0のリリース

    BotKit 0.2.0をリリースしました!BotKitを初めて知る方のために簡単に説明すると、BotKitはTypeScriptで開発されたスタンドアロンのActivityPubボットフレームワークです。Mastodon、Misskeyなどさまざまなフェディバース(#fediverse)のプラットフォームと連携でき、既存プラットフォームの制約なしに自由にボットを作成できます。

    このリリースは、フェディバースにおけるボット開発をより簡単で強力にするための旅の重要な一歩であり、コミュニティから要望のあった機能を多数導入しています。

    より良いボットインタラクションへの旅

    BotKitの開発において、私たちは常にボットをより表現力豊かでインタラクティブにすることに焦点を当ててきました。バージョン0.2.0では、フェディバースの社会的側面をボットに取り入れることで、さらに一歩前進しました。

    カスタム絵文字でボットの個性を表現

    最も要望の多かった機能の一つがカスタム絵文字のサポートです。これにより、ボットは独自の視覚要素でメッセージを目立たせ、自分だけの個性を表現できるようになりました。

    // ボット用のカスタム絵文字を定義
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // メッセージにカスタム絵文字を使用
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}は、Fedify ${customEmoji(emojis.fedify)}によって支えられています`
    );
    

    この新しいAPIでは、次のことが可能になりました。

    リアクションによるコミュニケーション

    コミュニケーションは単にメッセージを投稿するだけではありません。他の人のメッセージに反応することも重要です。新しいリアクションシステムは、ボットとフォロワーの間に自然な交流ポイントを作り出します。

    // 標準のUnicode絵文字でメッセージにリアクション
    await message.react(emoji`👍`);
    
    // または定義したカスタム絵文字でリアクション
    await message.react(emojis.botkit);
    
    // リアクションを認識して応答するボットを作成
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}さん、私のメッセージに${reaction.emoji}でリアクションしてくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    この機能により、ボットは次のことができるようになりました。

    • Message.react()を使用してUnicode絵文字でメッセージにリアクション
    • 定義したカスタム絵文字でリアクション
    • Bot.onReactBot.onUnreactハンドラーでリアクションイベントを処理

    引用による会話

    議論では、他の人が言ったことを参照する必要がしばしばあります。新しい引用機能により、より結束力のある会話スレッドを作成できます。

    // ボットの投稿で他のメッセージを引用
    await session.publish(
      text`この興味深い視点について答えます...`,
      { quoteTarget: originalMessage }
    );
    
    // ユーザーがボットのメッセージを引用した場合の処理
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}さん、私の考えを共有してくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    引用機能により、ボットは次のことができるようになりました。

    • quoteTargetオプションでメッセージを引用
    • Message.quoteTargetを通じて引用されたメッセージにアクセス
    • 新しいBot.onQuoteイベントハンドラーで引用イベントを処理

    視覚的な改善

    コミュニケーションには視覚的要素も重要なため、ボットの表現方法を改善しました。

    • ウェブインターフェースで画像添付ファイルが正しく表示されるようになりました
    • ボットのコンテンツがより見やすくなり、豊かな体験を提供します

    内部改善:活動の伝播の強化

    フェディバースでの活動が伝播する方法も改善されました。

    • 返信、共有、更新、削除のより正確な伝播
    • 元のメッセージ作成者に活動が適切に送信されます

    これらの改善により、様々なフェディバースプラットフォームでのボットの相互作用が一貫性と信頼性を持つようになります。

    BotKit 0.2.0で最初の一歩を踏み出す

    これらの新機能を体験してみたいですか?BotKit 0.2.0はJSRで利用可能で、簡単なコマンドでインストールできます。

    deno add jsr:@fedify/[email protected]
    

    BotKitはTemporal API(JavaScriptではまだ試験的な機能)を使用するため、deno.jsonでこれを有効にする必要があります。

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    これらの簡単なステップで、最新機能を使ってフェディバースボットを作成またはアップグレードする準備が整いました。

    今後の展望

    #BotKit 0.2.0は、フェディバースボット開発をアクセスしやすく、強力かつ楽しいものにするための私たちの継続的な取り組みを示しています。これらの新機能が、皆さんのボットをフェディバースコミュニティでより魅力的でインタラクティブなメンバーにするのに役立つと信じています。

    完全なドキュメントと詳細な例については、私たちのドキュメントサイトをご覧ください。

    フィードバック、機能リクエスト、コード貢献を通じてこのリリースに貢献してくださったすべての方々に感謝します。BotKitコミュニティは成長を続けており、皆さんが作成するものを楽しみにしています!

    BotKitは、ActivityPubサーバーアプリケーションを作成するための低レベルフレームワークFedifyによって支えられています。

    #fedidev #フェディバース #カスタム絵文字 #絵文字リアクション #絵文字反応 #引用

  7. BotKit 0.2.0のリリース

    BotKit 0.2.0をリリースしました!BotKitを初めて知る方のために簡単に説明すると、BotKitはTypeScriptで開発されたスタンドアロンのActivityPubボットフレームワークです。Mastodon、Misskeyなどさまざまなフェディバース(#fediverse)のプラットフォームと連携でき、既存プラットフォームの制約なしに自由にボットを作成できます。

    このリリースは、フェディバースにおけるボット開発をより簡単で強力にするための旅の重要な一歩であり、コミュニティから要望のあった機能を多数導入しています。

    より良いボットインタラクションへの旅

    BotKitの開発において、私たちは常にボットをより表現力豊かでインタラクティブにすることに焦点を当ててきました。バージョン0.2.0では、フェディバースの社会的側面をボットに取り入れることで、さらに一歩前進しました。

    カスタム絵文字でボットの個性を表現

    最も要望の多かった機能の一つがカスタム絵文字のサポートです。これにより、ボットは独自の視覚要素でメッセージを目立たせ、自分だけの個性を表現できるようになりました。

    // ボット用のカスタム絵文字を定義
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // メッセージにカスタム絵文字を使用
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}は、Fedify ${customEmoji(emojis.fedify)}によって支えられています`
    );
    

    この新しいAPIでは、次のことが可能になりました。

    リアクションによるコミュニケーション

    コミュニケーションは単にメッセージを投稿するだけではありません。他の人のメッセージに反応することも重要です。新しいリアクションシステムは、ボットとフォロワーの間に自然な交流ポイントを作り出します。

    // 標準のUnicode絵文字でメッセージにリアクション
    await message.react(emoji`👍`);
    
    // または定義したカスタム絵文字でリアクション
    await message.react(emojis.botkit);
    
    // リアクションを認識して応答するボットを作成
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}さん、私のメッセージに${reaction.emoji}でリアクションしてくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    この機能により、ボットは次のことができるようになりました。

    • Message.react()を使用してUnicode絵文字でメッセージにリアクション
    • 定義したカスタム絵文字でリアクション
    • Bot.onReactBot.onUnreactハンドラーでリアクションイベントを処理

    引用による会話

    議論では、他の人が言ったことを参照する必要がしばしばあります。新しい引用機能により、より結束力のある会話スレッドを作成できます。

    // ボットの投稿で他のメッセージを引用
    await session.publish(
      text`この興味深い視点について答えます...`,
      { quoteTarget: originalMessage }
    );
    
    // ユーザーがボットのメッセージを引用した場合の処理
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}さん、私の考えを共有してくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    引用機能により、ボットは次のことができるようになりました。

    • quoteTargetオプションでメッセージを引用
    • Message.quoteTargetを通じて引用されたメッセージにアクセス
    • 新しいBot.onQuoteイベントハンドラーで引用イベントを処理

    視覚的な改善

    コミュニケーションには視覚的要素も重要なため、ボットの表現方法を改善しました。

    • ウェブインターフェースで画像添付ファイルが正しく表示されるようになりました
    • ボットのコンテンツがより見やすくなり、豊かな体験を提供します

    内部改善:活動の伝播の強化

    フェディバースでの活動が伝播する方法も改善されました。

    • 返信、共有、更新、削除のより正確な伝播
    • 元のメッセージ作成者に活動が適切に送信されます

    これらの改善により、様々なフェディバースプラットフォームでのボットの相互作用が一貫性と信頼性を持つようになります。

    BotKit 0.2.0で最初の一歩を踏み出す

    これらの新機能を体験してみたいですか?BotKit 0.2.0はJSRで利用可能で、簡単なコマンドでインストールできます。

    deno add jsr:@fedify/[email protected]
    

    BotKitはTemporal API(JavaScriptではまだ試験的な機能)を使用するため、deno.jsonでこれを有効にする必要があります。

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    これらの簡単なステップで、最新機能を使ってフェディバースボットを作成またはアップグレードする準備が整いました。

    今後の展望

    #BotKit 0.2.0は、フェディバースボット開発をアクセスしやすく、強力かつ楽しいものにするための私たちの継続的な取り組みを示しています。これらの新機能が、皆さんのボットをフェディバースコミュニティでより魅力的でインタラクティブなメンバーにするのに役立つと信じています。

    完全なドキュメントと詳細な例については、私たちのドキュメントサイトをご覧ください。

    フィードバック、機能リクエスト、コード貢献を通じてこのリリースに貢献してくださったすべての方々に感謝します。BotKitコミュニティは成長を続けており、皆さんが作成するものを楽しみにしています!

    BotKitは、ActivityPubサーバーアプリケーションを作成するための低レベルフレームワークFedifyによって支えられています。

    #fedidev #フェディバース #カスタム絵文字 #絵文字リアクション #絵文字反応 #引用

  8. BotKit 0.2.0のリリース

    BotKit 0.2.0をリリースしました!BotKitを初めて知る方のために簡単に説明すると、BotKitはTypeScriptで開発されたスタンドアロンのActivityPubボットフレームワークです。Mastodon、Misskeyなどさまざまなフェディバース(#fediverse)のプラットフォームと連携でき、既存プラットフォームの制約なしに自由にボットを作成できます。

    このリリースは、フェディバースにおけるボット開発をより簡単で強力にするための旅の重要な一歩であり、コミュニティから要望のあった機能を多数導入しています。

    より良いボットインタラクションへの旅

    BotKitの開発において、私たちは常にボットをより表現力豊かでインタラクティブにすることに焦点を当ててきました。バージョン0.2.0では、フェディバースの社会的側面をボットに取り入れることで、さらに一歩前進しました。

    カスタム絵文字でボットの個性を表現

    最も要望の多かった機能の一つがカスタム絵文字のサポートです。これにより、ボットは独自の視覚要素でメッセージを目立たせ、自分だけの個性を表現できるようになりました。

    // ボット用のカスタム絵文字を定義
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // メッセージにカスタム絵文字を使用
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}は、Fedify ${customEmoji(emojis.fedify)}によって支えられています`
    );
    

    この新しいAPIでは、次のことが可能になりました。

    リアクションによるコミュニケーション

    コミュニケーションは単にメッセージを投稿するだけではありません。他の人のメッセージに反応することも重要です。新しいリアクションシステムは、ボットとフォロワーの間に自然な交流ポイントを作り出します。

    // 標準のUnicode絵文字でメッセージにリアクション
    await message.react(emoji`👍`);
    
    // または定義したカスタム絵文字でリアクション
    await message.react(emojis.botkit);
    
    // リアクションを認識して応答するボットを作成
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}さん、私のメッセージに${reaction.emoji}でリアクションしてくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    この機能により、ボットは次のことができるようになりました。

    • Message.react()を使用してUnicode絵文字でメッセージにリアクション
    • 定義したカスタム絵文字でリアクション
    • Bot.onReactBot.onUnreactハンドラーでリアクションイベントを処理

    引用による会話

    議論では、他の人が言ったことを参照する必要がしばしばあります。新しい引用機能により、より結束力のある会話スレッドを作成できます。

    // ボットの投稿で他のメッセージを引用
    await session.publish(
      text`この興味深い視点について答えます...`,
      { quoteTarget: originalMessage }
    );
    
    // ユーザーがボットのメッセージを引用した場合の処理
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}さん、私の考えを共有してくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    引用機能により、ボットは次のことができるようになりました。

    • quoteTargetオプションでメッセージを引用
    • Message.quoteTargetを通じて引用されたメッセージにアクセス
    • 新しいBot.onQuoteイベントハンドラーで引用イベントを処理

    視覚的な改善

    コミュニケーションには視覚的要素も重要なため、ボットの表現方法を改善しました。

    • ウェブインターフェースで画像添付ファイルが正しく表示されるようになりました
    • ボットのコンテンツがより見やすくなり、豊かな体験を提供します

    内部改善:活動の伝播の強化

    フェディバースでの活動が伝播する方法も改善されました。

    • 返信、共有、更新、削除のより正確な伝播
    • 元のメッセージ作成者に活動が適切に送信されます

    これらの改善により、様々なフェディバースプラットフォームでのボットの相互作用が一貫性と信頼性を持つようになります。

    BotKit 0.2.0で最初の一歩を踏み出す

    これらの新機能を体験してみたいですか?BotKit 0.2.0はJSRで利用可能で、簡単なコマンドでインストールできます。

    deno add jsr:@fedify/[email protected]
    

    BotKitはTemporal API(JavaScriptではまだ試験的な機能)を使用するため、deno.jsonでこれを有効にする必要があります。

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    これらの簡単なステップで、最新機能を使ってフェディバースボットを作成またはアップグレードする準備が整いました。

    今後の展望

    #BotKit 0.2.0は、フェディバースボット開発をアクセスしやすく、強力かつ楽しいものにするための私たちの継続的な取り組みを示しています。これらの新機能が、皆さんのボットをフェディバースコミュニティでより魅力的でインタラクティブなメンバーにするのに役立つと信じています。

    完全なドキュメントと詳細な例については、私たちのドキュメントサイトをご覧ください。

    フィードバック、機能リクエスト、コード貢献を通じてこのリリースに貢献してくださったすべての方々に感謝します。BotKitコミュニティは成長を続けており、皆さんが作成するものを楽しみにしています!

    BotKitは、ActivityPubサーバーアプリケーションを作成するための低レベルフレームワークFedifyによって支えられています。

    #fedidev #フェディバース #カスタム絵文字 #絵文字リアクション #絵文字反応 #引用

  9. BotKit 0.2.0のリリース

    BotKit 0.2.0をリリースしました!BotKitを初めて知る方のために簡単に説明すると、BotKitはTypeScriptで開発されたスタンドアロンのActivityPubボットフレームワークです。Mastodon、Misskeyなどさまざまなフェディバース(#fediverse)のプラットフォームと連携でき、既存プラットフォームの制約なしに自由にボットを作成できます。

    このリリースは、フェディバースにおけるボット開発をより簡単で強力にするための旅の重要な一歩であり、コミュニティから要望のあった機能を多数導入しています。

    より良いボットインタラクションへの旅

    BotKitの開発において、私たちは常にボットをより表現力豊かでインタラクティブにすることに焦点を当ててきました。バージョン0.2.0では、フェディバースの社会的側面をボットに取り入れることで、さらに一歩前進しました。

    カスタム絵文字でボットの個性を表現

    最も要望の多かった機能の一つがカスタム絵文字のサポートです。これにより、ボットは独自の視覚要素でメッセージを目立たせ、自分だけの個性を表現できるようになりました。

    // ボット用のカスタム絵文字を定義
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // メッセージにカスタム絵文字を使用
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}は、Fedify ${customEmoji(emojis.fedify)}によって支えられています`
    );
    

    この新しいAPIでは、次のことが可能になりました。

    リアクションによるコミュニケーション

    コミュニケーションは単にメッセージを投稿するだけではありません。他の人のメッセージに反応することも重要です。新しいリアクションシステムは、ボットとフォロワーの間に自然な交流ポイントを作り出します。

    // 標準のUnicode絵文字でメッセージにリアクション
    await message.react(emoji`👍`);
    
    // または定義したカスタム絵文字でリアクション
    await message.react(emojis.botkit);
    
    // リアクションを認識して応答するボットを作成
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}さん、私のメッセージに${reaction.emoji}でリアクションしてくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    この機能により、ボットは次のことができるようになりました。

    • Message.react()を使用してUnicode絵文字でメッセージにリアクション
    • 定義したカスタム絵文字でリアクション
    • Bot.onReactBot.onUnreactハンドラーでリアクションイベントを処理

    引用による会話

    議論では、他の人が言ったことを参照する必要がしばしばあります。新しい引用機能により、より結束力のある会話スレッドを作成できます。

    // ボットの投稿で他のメッセージを引用
    await session.publish(
      text`この興味深い視点について答えます...`,
      { quoteTarget: originalMessage }
    );
    
    // ユーザーがボットのメッセージを引用した場合の処理
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}さん、私の考えを共有してくれてありがとうございます!`,
        { visibility: "direct" }
      );
    };
    

    引用機能により、ボットは次のことができるようになりました。

    • quoteTargetオプションでメッセージを引用
    • Message.quoteTargetを通じて引用されたメッセージにアクセス
    • 新しいBot.onQuoteイベントハンドラーで引用イベントを処理

    視覚的な改善

    コミュニケーションには視覚的要素も重要なため、ボットの表現方法を改善しました。

    • ウェブインターフェースで画像添付ファイルが正しく表示されるようになりました
    • ボットのコンテンツがより見やすくなり、豊かな体験を提供します

    内部改善:活動の伝播の強化

    フェディバースでの活動が伝播する方法も改善されました。

    • 返信、共有、更新、削除のより正確な伝播
    • 元のメッセージ作成者に活動が適切に送信されます

    これらの改善により、様々なフェディバースプラットフォームでのボットの相互作用が一貫性と信頼性を持つようになります。

    BotKit 0.2.0で最初の一歩を踏み出す

    これらの新機能を体験してみたいですか?BotKit 0.2.0はJSRで利用可能で、簡単なコマンドでインストールできます。

    deno add jsr:@fedify/[email protected]
    

    BotKitはTemporal API(JavaScriptではまだ試験的な機能)を使用するため、deno.jsonでこれを有効にする必要があります。

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    これらの簡単なステップで、最新機能を使ってフェディバースボットを作成またはアップグレードする準備が整いました。

    今後の展望

    #BotKit 0.2.0は、フェディバースボット開発をアクセスしやすく、強力かつ楽しいものにするための私たちの継続的な取り組みを示しています。これらの新機能が、皆さんのボットをフェディバースコミュニティでより魅力的でインタラクティブなメンバーにするのに役立つと信じています。

    完全なドキュメントと詳細な例については、私たちのドキュメントサイトをご覧ください。

    フィードバック、機能リクエスト、コード貢献を通じてこのリリースに貢献してくださったすべての方々に感謝します。BotKitコミュニティは成長を続けており、皆さんが作成するものを楽しみにしています!

    BotKitは、ActivityPubサーバーアプリケーションを作成するための低レベルフレームワークFedifyによって支えられています。

    #fedidev #フェディバース #カスタム絵文字 #絵文字リアクション #絵文字反応 #引用

  10. BotKit 0.2.0 릴리스

    BotKit 0.2.0 버전이 릴리스되었습니다! BotKit을 처음 접하시는 분들을 위해 간단히 소개하자면, BotKit은 TypeScript로 개발된 독립형 #ActivityPub 봇 프레임워크입니다. Mastodon, Misskey 등 다양한 #연합우주(#fediverse) 플랫폼과 상호작용할 수 있으며, 기존 플랫폼의 제약에서 벗어나 자유롭게 봇을 만들 수 있습니다.

    이번 릴리스는 연합우주 봇 개발을 더 쉽고 강력하게 만들기 위한 여정에서 중요한 발걸음입니다. 커뮤니티에서 요청해 왔던 여러 기능들을 새롭게 선보입니다.

    더 나은 봇 상호작용을 위한 여정

    BotKit을 개발하면서 우리는 항상 봇이 더 표현력 있고 상호작용이 풍부하도록 만드는 데 집중해 왔습니다. 0.2.0 버전에서는 연합우주의 사회적 측면을 봇에 접목시켜 한 단계 더 발전시켰습니다.

    커스텀 에모지로 봇의 개성 표현하기

    가장 많이 요청받았던 기능 중 하나가 #커스텀_에모지 지원입니다. 이제 봇은 독특한 시각적 요소로 메시지를 돋보이게 하며 자신만의 개성을 표현할 수 있습니다.

    // 봇의 커스텀 에모지 정의하기
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // 메시지에 커스텀 에모지 사용하기
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)}은 Fedify ${customEmoji(emojis.fedify)}의 지원을 받습니다`
    );
    

    이 새로운 API를 통해 다음과 같은 기능을 사용할 수 있습니다.

    반응을 통한 소통

    소통은 단순히 메시지를 게시하는 것만이 아닙니다. 다른 사람의 메시지에 반응하는 것도 중요합니다. 새로운 반응 시스템은 봇과 팔로워 사이에 자연스러운 상호작용 지점을 만들어 줍니다.

    // 표준 유니코드 에모지로 메시지에 반응하기
    await message.react(emoji`👍`);
    
    // 또는 정의한 커스텀 에모지로 반응하기
    await message.react(emojis.botkit);
    
    // 반응을 인식하고 응답하는 봇 만들기
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`${reaction.actor}님, 제 메시지에 ${reaction.emoji} 반응을 남겨주셔서 감사합니다!`,
        { visibility: "direct" }
      );
    };
    

    이 기능을 통해 봇은 다음과 같은 작업을 수행할 수 있습니다.

    • Message.react()를 사용하여 유니코드 에모지로 메시지에 반응하기
    • 정의한 커스텀 에모지로 반응하기
    • Bot.onReactBot.onUnreact 핸들러로 반응 이벤트 처리하기

    인용을 통한 대화

    토론에서는 종종 다른 사람이 말한 내용을 참조해야 할 때가 있습니다. 새로운 #인용 기능은 더 응집력 있는 대화 스레드를 만들어 줍니다.

    // 봇의 게시물에서 다른 메시지 인용하기
    await session.publish(
      text`이 흥미로운 관점에 대한 답변입니다...`,
      { quoteTarget: originalMessage }
    );
    
    // 사용자가 봇의 메시지를 인용할 때 처리하기
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`${quoteMessage.actor}님, 제 생각을 공유해 주셔서 감사합니다!`,
        { visibility: "direct" }
      );
    };
    

    인용 기능을 통해 봇은 다음과 같은 작업을 수행할 수 있습니다.

    시각적 개선

    소통은 시각적인 요소도 중요하기 때문에 봇의 표현 방식을 개선했습니다.

    • 웹 인터페이스에서 이미지 첨부파일이 제대로 표시됩니다
    • 봇의 콘텐츠가 더 보기 좋아지고 풍부한 경험을 제공합니다

    내부 개선: 향상된 액티비티 전파

    연합우주에서 액티비티가 전파되는 방식도 개선했습니다.

    • 답글, 공유, 업데이트, 삭제의 더 정확한 전파
    • 원본 메시지 작성자에게 액티비티가 제대로 전송됩니다

    이러한 개선 사항은 다양한 연합우주 플랫폼에서 봇의 상호작용이 일관되고 안정적으로 이루어지도록 보장합니다.

    BotKit 0.2.0으로 첫 걸음 떼기

    이러한 새로운 기능을 경험해 보고 싶으신가요? BotKit 0.2.0은 JSR에서 받을 수 있으며 간단한 명령어로 설치할 수 있습니다.

    deno add jsr:@fedify/[email protected]
    

    BotKit은 Temporal API(JavaScript에서 아직 시범적인 기능)를 사용하므로 deno.json에서 이를 활성화해야 합니다.

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    이 간단한 단계를 통해 최신 기능으로 연합우주 봇을 만들거나 업그레이드할 준비가 완료되었습니다.

    앞으로의 전망

    BotKit 0.2.0은 연합우주 봇 개발을 접근하기 쉽고, 강력하며, 즐겁게 만들기 위한 우리의 지속적인 노력을 보여줍니다. 이러한 새로운 기능들이 여러분의 봇이 연합우주 커뮤니티에서 더 매력적이고 상호작용이 풍부한 구성원이 되는 데 도움이 될 것이라고 믿습니다.

    전체 문서와 더 많은 예제는 저희 문서 사이트에서 확인하실 수 있습니다.

    피드백, 기능 요청, 코드 기여를 통해 이번 릴리스에 도움을 주신 모든 분들께 감사드립니다. BotKit 커뮤니티는 계속 성장하고 있으며, 여러분이 만들어낼 작품들을 기대합니다!

    BotKit은 ActivityPub 서버 애플리케이션을 만들기 위한 하위 레벨 프레임워크인 Fedify의 지원을 받습니다.

    #fedidev #커모지 #커스텀_이모지 #에모지_반응 #이모지_반응 #에모지_리액션 #이모지_리액션

  11. BotKit 0.2.0 Released

    We're pleased to announce the release of BotKit 0.2.0! For those new to our project, #BotKit is a #TypeScript framework for creating standalone #ActivityPub bots that can interact with Mastodon, Misskey, and other #fediverse platforms without the constraints of these existing platforms.

    This release marks an important step in our journey to make fediverse bot development more accessible and powerful, introducing several features that our community has been requesting.

    The Journey to Better Bot Interactions

    In building BotKit, we've always focused on making bots more expressive and interactive. With version 0.2.0, we're taking this to the next level by bringing the social aspects of the fediverse to your bots.

    Expressing Your Bot's Personality with Custom Emojis

    One of the most requested features has been #custom_emoji support. Now your bots can truly express their personality with unique visuals that make their messages stand out.

    // Define custom emojis for your bot
    const emojis = bot.addCustomEmojis({
      botkit: { 
        file: `${import.meta.dirname}/images/botkit.png`, 
        type: "image/png" 
      },
      fedify: { 
        url: "https://fedify.dev/logo.png", 
        type: "image/png" 
      }
    });
    
    // Use these custom emojis in your messages
    await session.publish(
      text`BotKit ${customEmoji(emojis.botkit)} is powered by Fedify ${customEmoji(emojis.fedify)}`
    );
    

    With this new API, you can:

    Engaging Through Reactions

    Communication isn't just about posting messages—it's also about responding to others. The new reaction system creates natural interaction points between your bot and its followers:

    // React to a message with a standard Unicode emoji
    await message.react(emoji`👍`);
    
    // Or use one of your custom emojis as a reaction
    await message.react(emojis.botkit);
    
    // Create a responsive bot that acknowledges reactions
    bot.onReact = async (session, reaction) => {
      await session.publish(
        text`Thanks for reacting with ${reaction.emoji} to my message, ${reaction.actor}!`,
        { visibility: "direct" }
      );
    };
    

    This feature allows your bot to:

    Conversations Through Quotes

    Discussions often involve referencing what others have said. Our new #quote support enables more cohesive conversation threads:

    // Quote another message in your bot's post
    await session.publish(
      text`Responding to this interesting point...`,
      { quoteTarget: originalMessage }
    );
    
    // Handle when users quote your bot's messages
    bot.onQuote = async (session, quoteMessage) => {
      await session.publish(
        text`Thanks for sharing my thoughts, ${quoteMessage.actor}!`,
        { visibility: "direct" }
      );
    };
    

    With quote support, your bot can:

    Visual Enhancements

    Because communication is visual too, we've improved how your bot presents itself:

    • Image attachments now properly display in the web interface
    • Your bot's content looks better and provides a richer experience

    Behind the Scenes: Enhanced Activity Propagation

    We've also improved how activities propagate through the fediverse:

    • More precise propagation of replies, shares, updates, and deletes
    • Activities are now properly sent to the original message authors

    These improvements ensure your bot's interactions are consistent and reliable across different fediverse platforms.

    Taking Your First Steps with BotKit 0.2.0

    Ready to experience these new features? BotKit 0.2.0 is available on JSR and can be installed with a simple command:

    deno add jsr:@fedify/[email protected]
    

    Since BotKit uses the Temporal API (which is still evolving in JavaScript), remember to enable it in your deno.json:

    {
      "imports": {
        "@fedify/botkit": "jsr:@fedify/[email protected]"
      },
      "unstable": ["temporal"]
    }
    

    With these simple steps, you're ready to create or upgrade your fediverse bot with our latest features.

    Looking Forward

    BotKit 0.2.0 represents our ongoing commitment to making fediverse bot development accessible, powerful, and enjoyable. We believe these new features will help your bots become more engaging and interactive members of the fediverse community.

    For complete docs and more examples, visit our docs site.

    Thank you to everyone who contributed to this release through feedback, feature requests, and code contributions. The BotKit community continues to grow, and we're excited to see what you'll create!

    BotKit is powered by Fedify, a lower-level framework for creating ActivityPub server applications.

    #fedidev #emoji_reaction

  12. Yay. 7 is here. And it has AI!

    And you have to upgrade PHP or fuck off.

  13. Wow. #Typepad is out of business!

    All links leading to blogs hosted on it are dead.

    Bad day for #blogging.

    Good reminder of not using third party tools for it.

    Great opportunity for broken link building.

  14. I'm looking for sites positively impacted by #Google's #helpful #content updates/system and the integrated core updates ever since.

    Stats show that more sites were winners than losers.

    Yet everybody seems to focus on a small minority of those who complain - usually without even asking for help.

    Share some positive examples with me beyond the obvious (Reddit and Quora).

    I might include them and the lessons learned from them in an upcoming post I started writing.

    #seoherostories #hcu #seo

  15. I'm looking for sites positively impacted by #Google's #helpful #content updates/system and the integrated core updates ever since.

    Stats show that more sites were winners than losers.

    Yet everybody seems to focus on a small minority of those who complain - usually without even asking for help.

    Share some positive examples with me beyond the obvious (Reddit and Quora).

    I might include them and the lessons learned from them in an upcoming post I started writing.

    #seoherostories #hcu #seo

  16. I'm looking for sites positively impacted by #Google's #helpful #content updates/system and the integrated core updates ever since.

    Stats show that more sites were winners than losers.

    Yet everybody seems to focus on a small minority of those who complain - usually without even asking for help.

    Share some positive examples with me beyond the obvious (Reddit and Quora).

    I might include them and the lessons learned from them in an upcoming post I started writing.

    #seoherostories #hcu #seo

  17. I'm looking for sites positively impacted by 's updates/system and the integrated core updates ever since.

    Stats show that more sites were winners than losers.

    Yet everybody seems to focus on a small minority of those who complain - usually without even asking for help.

    Share some positive examples with me beyond the obvious (Reddit and Quora).

    I might include them and the lessons learned from them in an upcoming post I started writing.

  18. I'm looking for sites positively impacted by #Google's #helpful #content updates/system and the integrated core updates ever since.

    Stats show that more sites were winners than losers.

    Yet everybody seems to focus on a small minority of those who complain - usually without even asking for help.

    Share some positive examples with me beyond the obvious (Reddit and Quora).

    I might include them and the lessons learned from them in an upcoming post I started writing.

    #seoherostories #hcu #seo

  19. @rustybrick @johnmu So I overlooked one short word in the middle.

    You won't believe what happened next!

    I read the following: "The Search Console delays are ... a sign of an unconfirmed Google search core ranking update".

    A typical case of "just say the truth, don't repeat the myth." #CognitiveLoad

  20. @lauren

    Judge: Ms. Jury Foreperson, have you come to a unanimous verdict?

    Foreperson: No, your honour. I'm afraid it's a mistrial.

    Judge: You couldn't all agree he's guilty as sin?

    Foreperson: It's not that. Most of us want to give him life, but a few are holding out for the death penalty.

    #OneActPlay #play #jury #verdict

  21. @lauren

    Judge: Ms. Jury Foreperson, have you come to a unanimous verdict?

    Foreperson: No, your honour. I'm afraid it's a mistrial.

    Judge: You couldn't all agree he's guilty as sin?

    Foreperson: It's not that. Most of us want to give him life, but a few are holding out for the death penalty.

    #OneActPlay #play #jury #verdict