新機能「ワークフロー」のプレビュー

複雑なタスクに対応する新しい「Workflows(ワークフロー)」機能を開発中です。既存の「Automations(オートメーション)」ツールでは処理できないタスクをサポートするように設計されています。この新しいビジュアルオートメーションビルダーを使用すると、管理画面内でタイムディレイ、条件分岐、外部サービスへの呼び出し、AIアクションを含む多段階のワークフローを作成できます。

WorkflowsはBusinessプランとEnterpriseプランで利用可能です(Discourseホスティングのユーザー向け)。

Workflowsの概要

Workflowsは、既存のAutomationsプラグインのスクリプト中心のアプローチを置き換え、ノードを接続して複雑な多段階ロジックを作成するためのノードベースのビジュアルキャンバスを提供します。

:books: ドキュメント

ノード

ノードには4つの主なカテゴリがあります。

  • トリガー:Discourse内のイベント(例:トピックの作成、グループへのユーザー追加など)、スケジュール設定、Webhook、または手動操作に応じてワークフローを開始します。
  • 条件:ワークフロー内のデータに基づくYes/Noロジックで、ワークフローに分岐を作成します。
  • アクション:ワークフローによってトリガーされるイベントです。例:PMやチャットメッセージの送信、返信の投稿、HTTPエンドポイントの呼び出し、AIエージェントの実行、Data Explorerへのクエリ実行など。
  • ユーティリティ:ディレイの設定、アイテムのループ処理、変数の設定などによってフロー自体を制御し、付箋によってワークフローを文書化することもできます。

各ノードのパラメータはリテラル値と動的式をサポートしているため、後続のステップで以前のノードの出力、ワークフロー変数、または実行コンテキストを参照できます。

変数、データテーブル、認証情報

Workflowsには、出力の作成と管理を容易にするための追加ツールがいくつか含まれています。

  • 変数:キー/値ペア(例:グループID、カテゴリIDなど)を保存し、すべてのワークフローで容易に設定できるようにします。
  • 認証情報:HTTPリクエストノードで再利用可能な認証設定を保存できる場所です。これにより、ワークフローにAPIキーを貼り付ける必要がなくなります。
  • データテーブル:実行時データの保存とクエリに使用します。これにより、実行をトラッキング(例:特定のトピックでワークフローがすでに実行されたかを確認する)し、ワークフローの出力を簡単に参照できます。

実行ログ

すべてのワークフロー実行は、Executions(実行)タブに完全なログを生成します。どのノードが実行されたか、どのようなデータを受け取り、どのような出力をしたか、そして問題が発生した場合にワークフローがどこで停止したかを確認できます。

Workflowsの使用法

試すには、/admin/config/upcoming-changesUpcoming changes(今後の変更) に移動し、Enable Discourse workflows(Discourseワークフローを有効にする) アイテムを見つけ、Enabled for…(有効にする対象…) フィールドを更新して、サイトがこの機能をオプトインするようにしてください。

有効にすると、管理画面の Plugins → Workflows(プラグイン → Workflows) 配下でWorkflowsを見つけることができます。

「いいね!」 29

これは n8n のように見えます。似たような機能が使えたらとても素晴らしいですね

「いいね!」 3

これは自動化の代替として機能するでしょうか? それとも組み合わせることは可能でしょうか?

「いいね!」 1

過去4週間、この新しいプラグインを使用していくつかの統合や自動化を構築してきましたが、一言で言えば、それは本当に素晴らしいものであり、Discourseにとってゲームチェンジャーです。これは間違いなく、何年ぶりかの最高の新機能です(すでにかなり素晴らしい機能がたくさんあります :heart_eyes:)。

その通りです :slight_smile:

「いいね!」 13

ワークフローははるかに柔軟であるため、いずれオートメーションプラグインを完全に置き換える可能性が高いです

「いいね!」 9

これは画期的なアイデアですね。私は強力なn8nとDiscourseの統合を作るために多くの時間を費やしてきました。この素晴らしいイニシアチブは、Discourseに大きな活力をもたらすでしょう。

「いいね!」 8

今これを実験していますが、このフォーラムにワークフロー用の新しいカテゴリがあるべきだと思います。

また、チャネルではなくユーザーにチャットメッセージを送信する方法も知りたいです。

「いいね!」 3

現時点では、チャネルにはメッセージを送信できますが、ユーザーへのチャットメッセージの送信はできません

Mike Tyson's 'Real Thoon' Meme

「いいね!」 6

新しいワークフローは本当に素晴らしいです。これはまさにゲームチェンジャーであり、n8nのようなサービスと連携することも可能です。

レート制限に頻繁に引っかかっているようですが、これはどのように変更できるのでしょうか?
また、理由はいまいち不明ですが、時折ワークフローが突然停止してしまうことがあります。それを再開させる唯一の方法は、「今後の変更」設定から機能をオフにして、再度オンにすることです。

ご意見をお聞かせください。

「いいね!」 2

かなり高度な印象を受けます。使用例をいくつか挙げていただけないでしょうか?。。。。。

「いいね!」 1

ユーザーの信頼度に基づいて、フローを作成できることを想像してみてください。例えば、ユーザーが同時にこれらの2つのグループのメンバーである場合、新しいカテゴリへのアクセス権限を与える3番目のグループに追加する、といった動的な動作です。

そのような動的な動作は、Vanilla Discourseでは難しいです。

「いいね!」 4

より良いアプローチは、すべてのグループセレクタを「積・和・補集合」の式にリファクタリングすることです! :smile: (冗談です)

ワークフロー内で Discourse API を呼び出すと、何でもできます :grinning_face:

「いいね!」 2

オートメーションとクエリを使い続けるべき状況と、実際にワークフローを使うべき状況について知りたいです。以下のアクションを例に挙げます。

投稿に対する読書比率が250:1を超えているユーザー(最終的には「リスト外れ」グループ、通称「覗き見」に分類されるユーザー)にプライベートメッセージを送信する

この特定のケースにおいて、どちらのツールがより効率的または推奨されるのでしょうか?いつオートメーションとクエリを使い、いつワークフローを使うべきでしょうか?

ワークフローは分岐決定を可能にし、動的なダイアグラムを実現できることは理解しています。まずは、経験豊富なユーザーが単純なワークフローについてどのように考えているかを知りたいです。

以下の理由から、単純なプロセスでもワークフローの使用をお勧めします。

  • 単純なプロセスを拡張または変更する必要があると判断した場合、ワークフローははるかに柔軟で、ニーズに合わせて調整できます
  • このプロセスに影響される別のプロセスを構築したいと判断した場合、ワークフローを使用するとそれらを連携させることができます
  • ワークフローはプロセスの実行状況に対してより良い可視性を提供するため、トラブルシューティングが容易になります
「いいね!」 7

@lindsey の発言の通りです。また、自動化では可能だがワークフローでは実現できないユースケースがあれば、ぜひお知らせください。

「いいね!」 6

ワークフローの共有に特化したセクションがあると、すごくいいと思います!コミュニティを支援し、さまざまな仕組みをより深く理解し、さらに将来のプロジェクトへの新たなアイデアを得るのに役立つはずです。あくまでアイデアの一つです :sweat_smile:

ちなみに、ワークフローモジュールは非常に出来が良く、パワフルで直感的だと感じています :+1:

「いいね!」 4

あなたの意見を次の場所で共有してください:

「いいね!」 3

イベントのステータスが「満員」の場合、自動的にイベント名に「満員」と追加して名前を変更することは可能でしょうか。そうすれば、ユーザーは年間ビューなどで満員のイベントを一目で確認でき、イベントをクリックして空きがあるかどうかを確認する必要がなくなります。さらに進めれば、イベント名に空き席の数を表示することもできます。私のユーザーにとって利便性を高めるための個人的な意見です :sweat_smile: