팀 여러분, 안녕하세요.
제가 일하는 기업에는 내부 및 외부 고객을 위한 호스팅된 Discourse 패키지가 있습니다.
포럼 관리자로서, 2주 단위, 월간 및 연간 사용자 활동 보고서를 생성하기 위해 특정 보고 기능을 실행해야 합니다.
고정된 보고 기간(All_Time, Year, Quarter, Month, Week, Day)은 사용 가능하지만, 모두 현재 날짜(Current_Date)에 연결되어 있습니다. 따라서 직접 Search API와 Curl 명령어를 사용하여 20XX년 1월 1일부터 20XX년 12월 31일까지와 같은 특정 날짜 범위(Date_Range) 보고서를 실행해야 합니다.
카테고리 또는 사용자 지정 시간 범위에 대한 Single_User 보고는 간단하지만, Curl 명령어에서 group_messages: groupname 옵션이나 여러 옵션을 사용하려고 할 때부터가 진짜 시작입니다.
현재 모든 검색에 사용하는 기본 명령어는 다음과 같습니다:
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 등으로 처리하여 GoogleSheets에 쉽게 가져올 수 있도록 .CSV 파일로 변환합니다.
Search 문서에 따르면, 각 옵션 카테고리 내에서 여러 옵션을 사용할 수 있다고 합니다. 따라서 in:title, in:likes, in:seen 등을 사용할 수 있어야 하지만, in:option을 하나 이상 사용하여 유효한 검색을 수행하는 방법을 찾지 못하고 있습니다.
문서에는 group_messages: groupname 사용에 대해 언급되어 있지만, 위 Curl 쿼리에 해당 옵션을 사용하면 결과가 0건으로 나오며, 포럼의 여러 그룹으로 시도해 보았지만 마찬가지였습니다.
이상적으로는 Curl 검색을 실행하여 다음과 같은 보고서를 생성하고 싶습니다:
small_team_name | Topics_Created | Replies_Posted | Date_Range
large_team_name | Topics_Created | Replies_Posted | Date_Range
제가 잘못하고 있는 부분이 무엇인지 조언을 주시거나, 더 나은 방법을 제안해 주실 수 있을까요?
감사합니다, DDBM001.