バッジデータをウェブサイトのデータベースに

チームの皆様、

Discourse フォーラムのすべてのバッジデータを、PHP ウェブサイトのデータベースに自動的に保存したいと考えています。現在は手動で行っていますが、ウェブフックや API を使用して、ウェブサイトのデータベースに自動的にデータを更新するか、またはウェブサイトのユーザーに同じバッジを自動的に付与する仕組みを構築したいです。実現方法をご教示いただけますでしょうか。

バッジ用のウェブフックはないと思うので、そのためにはプラグインが必要です。データエクスプローラープラグインを使ってバッジを取得するクエリを作成し、そのクエリを API で呼び出すことができます。

なぜそれを PHP のウェブサイトに組み込みたいのでしょうか?データベースにコピーしなくても、その問題を解決できる方法があるかもしれません。

@pfaffman 私には PHP で構築されたオンラインチュートリアルサイトがあり、ユーザーサポートのために Discourse フォーラムを作成したいと考えています。すでに当サイトにバッジ機能がありますが、Discourse でも同様に設定したいと考えています(バッジは編集して同一のものにします)。ただし、これらは当サイトと同期して機能する必要があります。つまり、当サイトのバッジ権限を持つユーザーがフォーラムを訪れた際、同じバッジが反映されるようにしたいのです。

ご提案いただいた方法は試してみますし、明日結果を投稿します。もし他に何かご提案(既にあるプラグインなど)があれば、お知らせください。なお、トピックの埋め込み統合は実施する予定ですが、バッジの同期のみが未完了であり、これが非常に重要です。

API を通じてユーザーのグループを取得し、別のサイトに埋め込む方法もあります。あるいは、API でグループデータを取得してデータベースを更新する cron ジョブを実行することも可能です。

Discourse API のリバースエンジニアリング方法をご覧ください。

「いいね!」 1

@pfaffman さん、ご提案いただきありがとうございます。API を通じてデータベースを更新いたします。また、もう一点ご質問がございます。現在、私のインスタンスでは Bitnami LAMP 5.6.23-0 イメージを使用していますが、サポートフォーラムを作成する必要があり、同じサーバー上の LAMP Bitnami にそのフォーラムをインストールしたいと考えています。Discourse フォーラムをインストールしたいのですが、コストの都合上、フォーラム用に新しいインスタンスを使用できず、同じ AWS インスタンスにインストールしたいのです。

ウェブ上にそのようなインストールに関するドキュメントが見つからなかったため、このインストールを成功させるためのサポートをお願いできますでしょうか。

私のインスタンスには 50GB のストレージと 8GB の RAM が搭載されています。必要なのはインストール手順に関するドキュメントのみです。

これまでに試したこと:

  1. Docker(起動不可):「Failed to issue method call: Unit docker.service failed to load: No such file or directory. See system logs and ‘systemctl status docker.service’ for details.」というエラーが発生しました。
  2. Docker なし(Redis と PostgreSQL が起動不可)
  3. Apache2 は Bitnami の /opt/bitnami/apache2 内にあります。新しい設定を追加しても Apache2 がそれを反映せず、外部にインストールしようとすると「ポートが使用中」と表示されます。

Bitnami はここではサポートされていません。複数のサイトを運営する方法に関するハウツー記事がいくつかあります。参考になるかもしれません。

新しいインスタンスを選ぶしかないですね。

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.