관리자가 단계별 사용자를 생성할 수 있나요?

이 내용은 다른 스레드에서 이미 질문한 바 있지만, 내 글 이전의 마지막 게시글이 5년 전 것이어서 새 주제보다는 주목을 덜 받을 것 같습니다.

개발자가 아닌 관점에서 질문을 하나 드리고 싶습니다.

저희 회사에서는 티켓 시스템으로 Discourse를 사용 중이며, 지원 포럼에서 비등록 사용자가 새 주제를 생성하도록 설정을 성공적으로 마쳤습니다.

가끔 고객 본인이 직접 생성하는 대신, 제가 대신 티켓을 생성해야 하는 경우가 있습니다.

포럼에 이미 계정이 없는 사람을 대신하여 주제를 생성하는 간단한 단계별 방법이 있을까요? 본인이 직접 가입하지 않는 한 전체 계정을 생성하고 싶지 않습니다.

명령줄 인터페이스(CLI)를 통해 해야 한다면 그건 괜찮지만, 다음과 같은 수준의 상세한 안내가 필요합니다:

  1. foo 명령으로 컨테이너 진입
  2. rails bar etc etc 입력
  3. 기타 필요한 조치

게시글 소유권을 재할당할 수 있다는 점은 알고 있습니다. 모든 것을 한 번에 처리하는 것이 너무 복잡하다면, 사용자 생성 방법만 알려주신 뒤 GUI에서 소유권을 변경하는 방법을 알려주시면 큰 도움이 될 것입니다.

나머지 직원들이 따를 수 있는 상세한 헬프데스크 문서를 작성할 수만 있다면 어떤 방식이든 괜찮습니다. 모든 직원이 SSH를 통해 컨테이너에 접근해야 하는 상황은 피하고 싶지만, 어쩔 수 없다면 그렇게 하겠니다.

고객에게서 온 이메일이 있으신가요? 있다면 Discourse로 전달하시면 해당 고객에 대해 스테이징된 사용자가 생성됩니다.

이 동작에 대해 아래 링크의 “전달된 이메일 동작” 항목에 약간의 설명이 있습니다. 관련 설정을 "답장 생성"으로 변경해야 할 것 같습니다.

보통은 직접적인 이메일이 아닙니다. 대부분 제 상사가 고객으로부터 받은 이메일을 저에게 전달하면서, 고객에게 답변하기 위해 티켓으로 만들어 달라고 요청하는 경우가 많습니다.
그렇게 하면 제 상사의 이메일을 사용자로 지정하여 티켓을 생성한 사람으로 주제를 생성하는 것 같네요.

단순히 개인 메시지(PM)를 보내고 수신자로 이메일 주소를 입력하는 것만으로도 스테이징된 사용자를 생성할 수 있습니다. 해당 사용자가 아직 회원이 아니라면 스테이징된 사용자 계정이 생성됩니다. 나중에 같은 이메일 주소로 로그인하면 계정이 자동으로 변환되어 사이트에서 보낸 개인 메시지를 확인할 수 있습니다.

이것이 내가 찾고 있는 답일 것 같습니다. 기회가 되는 대로 직접 시도해 보고 결과를 알려드리겠습니다.

팀과 티켓 처리를 공유하기 위해 그룹을 사용하는 경우, PM을 보낼 때 해당 그룹을 포함하는 것도 좋은 방법입니다. 이렇게 하면 메시지가 그룹에서 발송되며, 답변도 그룹으로 다시 돌아옵니다.

알아두면 좋은 정보지만, 티켓 시스템을 Discourse 안에서 모든 것을 처리하도록 설정해 두었습니다.

지금까지는 아주 잘 작동하고 있는데, 자체 티켓 시스템을 통해 우리에게 지원 요청을 보내는 한 고객의 경우를 제외하면요. 이 문제에 대해 좀 더 명확해질 경우, 해당 고객을 위해 별도의 주제를 만들어 해결책을 찾아볼 계획입니다.

아, 잠깐, 왜 "google group"이라고 썼는지 모르겠네요 - 제 게시물을 수정했습니다. :facepalm: 당연히 Discourse 그룹을 말한 거였죠.

음, 그게 더 말이 되네요. 하지만 우리는 실제로 그룹을 사용하지 않아요. 계정만 사용하고, 토픽으로 티켓을 추적합니다.

이전에는 이 방법으로 잘 작동했습니다. 방금 다시 시도해 봤는데, 다음과 같은 팝업 메시지가 표시됩니다:
An error occurred: You must select a valid user.

다시 작동하게 만드는 방법에 대해 혹시 아는 분이 있을까요?

관리자나 모더레이터, 또는 Send email messages allowed groups 사이트 설정에 지정된 그룹에 속해 계신가요? 해당하지 않는다면, 그 오류는 자연스러운 것입니다.

그렇다면 다른 오류가 표시될 것입니다.

이 오류는 수신자 필드에 입력된 사용자 이름, 그룹 또는 이메일 주소를 확인하는 다른 검사 때문에 발생하는 것으로 보입니다.

@tknospdr 수신자 필드에 정확히 무엇을 입력하셨나요? 해당 이메일 주소에 특별히 이상한 점이 있었나요?

이 오류가 발생할 때 저는 사이트 관리자 계정으로 로그인되어 있습니다.

플러스 어드레싱을 사용해 테스트하고 있지만, 이 오류는 이전에 해왔던 것처럼 새 사용자를 생성하려고 했을 때 처음 발생했으며, 동일한 결과가 나타났습니다.

개인 메시지를 이메일로 보내는 방식은 저한테는 확실히 잘 작동합니다. 왜 당신에게는 작동하지 않는지 이해가 안 되네요. 예를 들어 녹화해서 보여주면 도움이 될지도 모르겠어요. discourse@example.com과 같은 주소를 입력하면 실제 이메일 주소를 공개하지 않아도 됩니다.


글쎄요, 정말 이상하네요. 방금 example@example.com으로 시도해 봤는데 잘 동작했습니다.

그러니까 "+"가 포함된 주소에서는 작동하지 않는 거고, 아마 원래 클라이언트의 주소에 뭔가 특이한 점이 있어서 이 문제가 처음 발생했던 것 같습니다.
이미 우회적으로 시스템에 등록하는 과정을 거쳤기 때문에 정확히 무슨 일이 있었는지는 잘 모르겠습니다.

결국 문제없던 일이었지만, 도움을 주셔서 다시 한번 감사합니다!

혹시 사이트에 Normalize emails 기능이 활성화되어 있나요?

정규화된 이메일이 고유한지 확인합니다. 정규화된 이메일은 사용자 이름에서 모든 마침표를 제거하고 +와 @ 기호 사이의 모든 내용을 삭제합니다.

이 설정을 활성화하면 + 기호가 포함된 이메일 주소를 사용할 때 다음과 같은 오류 메시지가 표시됩니다.

오류가 발생했습니다: 이 메시지를 보낼 대상 사용자 중 한 명을 찾을 수 없습니다.

설정을 비활성화하면 PM이 생성되고, 대기 중인 사용자가 생성되어 이메일을 받게 됩니다.

네, 정규화된 이메일이 확인되었는지 체크해 보았는데, 해당 옵션을 꺼두자 이제 플러스 어드레싱을 사용한 단계별 사용자를 생성할 수 있습니다.

추가 테스트를 해보니, 정규화된 버전의 주소를 이미 사용 중인 다른 사용자(예: 저)가 있을 때만 플러스 주소를 생성할 수 있었습니다.

해당 옵션이 체크되어 있는 상태에서도 랜덤한 플러스 주소, 예를 들어 test+this@thing.com은 생성할 수 있었지만, david@example.com이 이미 존재하기 때문에 david+test@example.com은 생성할 수 없었습니다.

예상된 동작인 것 같습니다.

그 부분을 눈치채지 못했지만, 의도적인 것이라면 정말 영리한 기능이네요. 이것이 바로 그 기능의 핵심이죠. 하나의 이메일 주소를 사용해 수많은 테스트 사용자 계정을 만들 수 있도록 하기 위해서입니다.