jbrains
(J. B. Rainsberger)
9월 8, 2023, 12:21오후
1
안녕하세요, 여러분. 특정 이메일을 특정 주제(topic)로 자동 전달하거나, 지정된 카테고리에서 새 주제를 생성하는 방법을 설정하려고 합니다. 테스트를 해보려는데, 기존 주제나 카테고리의 "답글 키(reply key)"를 필요할 때 생성할 수 있으면 큰 도움이 될 것 같습니다. 이메일 알림을 보내지 않고 답글 키를 생성할 수 있는 Rails 콘솔 마법이 있을까요? 아니면 이 문제를 해결하기 위해 끝에서 끝까지(end-to-end) 테스트를 해야 하는 건가요? (가짜 주제를 만들고, 이메일 알림을 기다리는 식으로요.)
감사합니다.
pfaffman
(Jay Pfaffman)
9월 8, 2023, 2:53오후
2
지정된 카테고리에서 새 토픽을 생성하려면, 카테고리 설정의 Custom incoming email address: 항목에서 설정하면 됩니다. Configuring incoming email to create new topics or group messages 링크를 참고해 보세요.
토픽에 대해서는 그렇게 할 수 있는 방법이 없다고 생각합니다. 각 회신 키(reply key)는 특정 토픽과 사용자 이름에 연결되어 있기 때문입니다.
jbrains
(J. B. Rainsberger)
9월 9, 2023, 11:45오전
3
사실, 새 토픽을 생성하는 기능은 이미 작동하고 있고 제 용도에는 충분하지만, 더 나아갈 수 있으면 좋겠습니다.
주어진 토픽과 사용자를 바탕으로 응답 키(reply key)를 가져오는 함수가 정말 없는 걸까요? 그렇게는 좀 아쉽네요. 직접 파고 들어가서 찾아내서 추출할 에너지는 없어요. 어딘가에서 이미 추출되어 있을 거라고 생각하면 놀라지 않을 텐데요…
혹시 다른 분 중에 아시는 분이 있을까요?
renato
(Renato Atilio)
9월 9, 2023, 12:44오후
4
솔직히 시스템의 이 부분은 잘 모르고 있었지만, 충분히 간단해 보입니다. 특정 게시물과 사용자를 위해 이메일을 전송할 때 사용할 회답 키를 생성하거나 가져오는 위치는 다음과 같습니다:
end
def get_reply_key(post_id, user_id)
# ALLOW_REPLY_BY_EMAIL_HEADER is only added if we are _not_ sending
# via group SMTP and if reply by email site settings are configured
if !user_id || !post_id ||
!header_value(Email::MessageBuilder::ALLOW_REPLY_BY_EMAIL_HEADER).present?
return
end
PostReplyKey.create_or_find_by!(post_id: post_id, user_id: user_id).reply_key
end
def self.bounceable_reply_address?
SiteSetting.reply_by_email_address.present? && SiteSetting.reply_by_email_address["+"]
end
def self.bounce_address(bounce_key)
SiteSetting.reply_by_email_address.sub("%{reply_key}", "verp-#{bounce_key}")
end
pfaffman
(Jay Pfaffman)
9월 9, 2023, 12:51오후
5
생성될 때 이메일로 그들에게 전송됩니다. 이는 단일 사용자 및 단일 게시물을 위한 것입니다. 그것을 찾으면 무엇을 할 건가요? 원한다면 새 것을 생성하는 것이 더 쉽다고 생각합니다. 하지만 그러면 그걸로 무엇을 할 건가요?
jbrains
(J. B. Rainsberger)
9월 9, 2023, 12:56오후
6
이 카테고리의 새 주제에 대한 이메일 알림을 받기 위해 이틀 동안 간간이 시도해 보았지만, 알림을 받지 못하고 있습니다. 어떤 마법 같은 설정 옵션이 잘못되었는지 알아내는 것에 지쳐 있습니다. 실제로 달성하려는 것, 즉 주제에 답장을 보낼 수 있는 이메일을 보내는 일을 더 직접적으로 수행하길 바랐습니다.
pfaffman
(Jay Pfaffman)
9월 9, 2023, 2:09오후
7
카테고리 설정을 '감시 중(watching)'으로 변경해야 합니다(카테고리로 이동하여 오른쪽의 작은 아이콘을 클릭하세요). 또한 프로필 설정에서 ‘enroll me when’ 옵션이 '항상(always)'으로 설정되어 있는지 확인하세요. 그렇지 않으면 Discourse는 이미 확인한 게시글에 대해 이메일을 보내지 않습니다.
jbrains
(J. B. Rainsberger)
9월 11, 2023, 3:28오후
9
그리고 마침내 제가 기대했던 대로 동작합니다. 분명히 사이트 관리자로서 활성화하는 것 외에도 사용자 프로필에서 메일링 리스트 모드를 활성화해야 했습니다.
문서 곳곳에 충분히 명시되어 있지 않아서인지, 아니면 제가 읽긴 읽었는데 놓친 건지 솔직히 잘 모르겠습니다.
"이렇게 해보세요"라고 말해주고 실제로 작동하는 걸 확인해야만 했습니다. 정확히 그렇게 해주셔서 감사합니다.
그래도, 생성될 때 제가 구독(Watching)하지 않던 기존 주제에 대해 답변 키를 생성할 수 있으면 매우 편리할 것 같습니다. 그러면 이메일을 보내서 바로 답변을 시작할 수 있으니까요. 제 생각에 이것은 직관적이지는 않지만 도움이 되는 시나리오입니다.
pfaffman
(Jay Pfaffman)
9월 11, 2023, 4:30오후
10
모든 메시지가 이메일로 수신되기를 원하신다면 그렇게 설정하시면 됩니다. 또한 특정 카테고리를 관찰(watch)하고, 웹 브라우저에서 이미 읽은 메시지에 대해서도 Discourse가 이메일을 보내도록 설정을 변경한 것을 확인할 수 있습니다.
웹 인터페이스를 사용하여 키를 생성한 후 메일 클라이언트로 이동하여 메시지를 작성하려는 경우에만 유용할 것입니다. 그렇다면 단순히 회신을 보내는 것보다 어떻게 더 편리한가요? (아마도 작성하는 모든 내용이 메일 클라이언트에 존재하기를 원하시는 걸까요?)