Discourse의 다른 플러그인과 마찬가지로 설치해야 합니다: Discourse에서 플러그인 설치. 따라서 Automation 플러그인을 설치하고, 사용자 정의 스크립트를 추가하는 사용자 플러그인을 설치해야 합니다. 이 방식이 작동하는 이유는 여기에서 정의된 메서드들 때문입니다: https://github.com/discourse/discourse-automation/blob/main/lib/plugin/instance.rb. 위에서 게시한 예제 코드에서 볼 수 있듯이, 사용자 정의 스크립트는 add_automation_scriptable 호출을 통해 추가됩니다.
참고: 제 GitHub 리포지토리의 예제 자동화를 설치하지 마세요. Automation 플러그인을 확장하는 방법의 예시로만 참고하십시오. (여기에 링크를 걸었다는 사실을 잊고 있었으며, 이제 제 포크된 버전의 Discourse Automation 플러그인에서만 작동하도록 업데이트했습니다. 다만 여기에 링크한 코드는 여전히 유효합니다: Create custom Automations - #6 by simon. Automation 플러그인의 포크된 버전에서 제가 한 변경 사항 없이도 작동하도록 automation-script-example 플러그인을 최대한 빨리 업데이트할 것입니다.)
제 우려는 근거가 없었습니다. 이 조건은 필요하지 않습니다:
if automation.script == "user_update_summary_email_options" && (context["kind"] == "user_added_to_group" || context["kind"] == "user_removed_from_group")
곧 예제를 업데이트하겠습니다.