チーム各位
私が勤務する企業では、社内外の顧客向けにホストされた Discourse パッケージを利用しています。
フォーラムの管理者として、隔週、月次、年次のユーザーアクティビティレポートを生成するために、特定のレポート機能を実行する必要があります。
固定のレポート期間(All_Time、Year、Quarter、Month、Week、Day)は利用可能ですが、すべて Current_Date にリンクされています。そのため、特定の Date_Range 01 January 20XX to 31 December 20XX レポートを実行し、直接 Search API と Curl コマンドを使用して行う必要があります。
カテゴリまたはカスタム時間範囲の Single_User レポートは簡単ですが、group_messages: groupname オプションまたは Curl コマンドの複数のオプションを使用しようとすると、問題が発生します。
現在、すべての検索に使用している基本コマンドは次のとおりです。
curl -i -sS -X GET -G "https://discuss.domainname.com/search.json" --data-urlencode \
'q=subject @username #questions after:2021-12-31' \
| tail -n 1 \
| jq .topics[] \
| sed "s|\: \"|\:\"|g" \
| grep slug \
| cut -d "\"" -f4
その後、結果は Bash や Awk などで .CSV に変換され、Google Sheets に簡単にインポートできるようになります。
Search ドキュメントでは、各 Options カテゴリ内に複数のオプションを使用できるとされています。たとえば、in:title in:likes in:seen などを指定できますが、複数の in:option を使用して有効な検索結果を得ることができません。
ドキュメントでは group_messages: groupname の使用について言及されていますが、上記の Curl クエリでそのオプションを使用すると結果がゼロになり、フォーラムの多くのグループで試しましたが、うまくいきませんでした。
理想的には、以下のレポートを実現するために Curl 検索を実行したいと考えています。
small_team_name | Topics_Created | Replies_Posted | Date_Range
large_team_name | Topics_Created | Replies_Posted | Date_Range
私が間違っている点や、より良い方法があれば、何かガイダンスをいただけますでしょうか?
よろしくお願いいたします。DDBM001。