Discourse를 WeChat 미니 프로그램에 연결하기

중국에는 위챗(WeChat)이라는 인스턴트 메신저 도구가 있습니다. 이 도구에는 (미니 프로그램)이라는 기능이 있는데, 실제로는 내장 브라우저입니다. Discourse를 미니 프로그램에 추가할 수 있다면, 이는 Discourse가 중국으로 확장할 수 있는 큰 기회가 될 것입니다. 저는 이를 시도하고 있지만, 중국의 콘텐츠 심사로 인해 위챗 관계자가 그들의 콘텐츠 심사에 접근할 것을 요구하고 있으며, 이는 제 능력 범위를 벗어납니다. 도움을 주실 수 있기를 바랍니다. 위챗 미니 프로그램 공식 고객센터에서 제공한 관련 스크린샷과 요구사항은 다음과 같습니다:

안녕하세요, 고객님의 미니 프로그램은 UGC 기반의 사용자 정의 콘텐츠 게시 기능을 포함하고 있으나, 서비스 경험 과정에 특정 제한이 있습니다. 현재 링크로는 미니 프로그램 기능을 정상적으로 체험할 수 없으며, 미니 프로그램에 콘텐츠 보안 식별 기능이 있는지 확인할 수 없습니다. 고객님의 미니 프로그램이 악용되는 것을 방지하기 위해, 위챗 공개 플랫폼의 콘텐츠 보안 API(imgSecCheck, msgSecCheck, mediaCheckAsync) 기능에 참조 문서에 따라 접근하시기를 권장합니다. 접근 후에는 문서의 [사용 사례] 지침에 따라 인터페이스 반환값의 화면 녹화를 저장해 주세요. 인터페이스 호출 성공 화면 녹화와 미니 프로그램 서비스 스크린샷을 업로드한 후 코드를 제출해 주시기 바랍니다.

정말 능력 있는 누군가가 도와주기를 바랍니다. 중국에서는 이 시장이 매우 광범위합니다. 중국에서 WeChat을 사용하는 인구가 약 14억 명에 달합니다. Discourse가 WeChat 미니 프로그램과 호환된다면 정말 훌륭할 것입니다.

중국에 있는 누군가가 이 프로그램에 세부 정보를 제출하는 데 도움을 주길 원하신다는 말씀이신가요?

선생님, 저희가 선생님의 도움을 받을 수 있다면 더 좋을 것 같습니다. 중국에서는 위챗 미니 프로그램의 사용자 기반이 매우 크니까요.

도움을 드리고 싶지만, 문제점에 대해 좀 더 정확한 설명이 필요합니다. 2024년에 작성된 원본 게시물에서 JS 오류를 확인했는데, 현재도 동일한 문제인가요?

미니 프로그램에 내장하는 것은 좋은 사용자 경험을 제공하지 않으므로, 이 방안을 포기하세요.

구체적으로 어떤 도움이 필요하신가요?

"[Use Case] 문서"가 실제로 문서라면, 구체적인 링크나 PDF 파일 등이 필요합니다.

질문 내용을 다시 한번 확인해 보았습니다:

정확한 요구사항이 명확하지 않고, 저는 Discourse에 대해 잘 알지 못하지만, 현재 상황으로 보아 WeChat API를 기반으로 게시물을 검열하기 위해 Discourse의 로직을 재구성해야 할 것 같습니다. 필요한 WeChat openid, token 등을 확보하여 API 호출을 수행할 수 있다면(문서에 나와 있듯이, API는 일반 HTTP로도 호출 가능합니다), 플러그인을 통해 이를 구현할 수 있을 것입니다.

여기서도 논의가 이루어지고 있습니다: Do you have any plan developing a plugin of "Sign in with WeChat"? WeChat이 이메일을 노출하지 않는다는 등의 주의사항이 언급되어 있습니다.

Discourse 플러그인을 작성하려는 경우, 이 사이트에서 튜토리얼을 참고할 수 있습니다.

P.S. 어떤 도움이 필요한지 이해하는 데 어려움을 겪고 있다면, WeChat 개발자 포럼에 질문을 게시하는 것을 권장합니다.

다른 애플리케이션 내의 브라우저에 Discourse를 임베딩하는 것이 어떤 이점이 있나요? 그냥 링크를 공유하고 기본 브라우저에서 여는 것이 나을까요?

질문자(OP)는 아니지만, 바로 이점이 떠오르는 것 같습니다. 예를 들어 미니 프로그램에 10가지 기능이 있고 그중 하나가 Discourse를 사용한다면, 사용자는 그 기능 하나만 위해 브라우저로 이동해야 하며 이는 사용자에게 방해가 될 수 있습니다(특히 나중에 다시 미니 프로그램으로 돌아와야 하는 경우라면 더더욱).

다만 제가 질문자라면 그만한 가치가 없다고 생각할 것 같습니다. 특히 WeChat으로 로그인하는 것(사용자 openid를 얻는 유일한 방법일 것 같으니) 외에도 사용자가 이메일을 제공해야 하므로 의심스러워 보일 수 있고, 이로 인해 잠재적 사용자를 잃을 수 있기 때문입니다.

(WeChat 로그인을 사용하지 않기로 결정하는 경우 WeChat 검열을 우회해야 하는지, 만약 우회하지 않는다면 어떻게 openid를 얻을 것인지 등 다른 복잡성들도 있습니다. 근본적인 해결책은 포럼을 WeChat 로그인 전용으로 잠가두고, WeChat 사용자들이 WeChat 계정을 어떻게 얻을지 알아내도록 두는 것 같습니다 :collision:)

중국인으로서 제 관점에서 배경을 설명하자면: 안타깝게도 중국에서는 많은 사람들이 브라우저와 웹사이트가 무엇인지 잊고 있습니다. 우리는 어디에서든 위챗 미니 프로그램(그리고 Electron 앱)을 사용하죠. 브라우저를 열라고 해도 거의 모든 사람이 화웨이 브라우저, 샤오미 브라우저, 360 브라우저 등을 사용하는데, 이 브라우저들은 내부에 오래된 Chromium/WebKit를 탑재하고 있습니다. 사람들은 Chrome, Edge, Firefox를 인식하지 못합니다 :cry: 이는 중국 고객층을 보유한 다국적 앱들이 자주 간과하는 문제 중 하나이기도 합니다.

저는 이것이 Discourse가 중국에서 알려지지 않은 이유 중 하나라고 생각합니다.

Discourse는 그저 웹사이트일 뿐입니다. WeChat이 http 링크를 열기 위해 전용 앱이 필요한 이유는 무엇일까요?

(백리스트 및 블랙리스트 가능성을 제외하고)

제 생각엔 OP의 질문은 OP가 그걸 할 수 없다는 것을 시사하는 것 같은데, 정확히 왜 그런지는 나에게 명확하지 않습니다. 하지만 콘텐츠 검토 요구사항 때문인 것으로 느껴집니다.

(수정: "링크를 열기 위해 특별한 앱이 필요하다"는 것에 대해 묻고 계신 거라면, 이 토론에서 이전에 그런 언급이 있었는지 기억나지 않습니다. 또한 위챗 미니 프로그램은 처음 게시물의 링크를 통해 처음 알게 된 것이라 잘 모르겠습니다. 죄송합니다)

이는 단순히 사용자들의 습관 때문에 발생하는 문제입니다. 중국 사용자는 이미 위챗과 같은 거대 앱 내에서 모든 것을 처리하는 데 익숙해져 있습니다(위챗은 사실상 브라우저를 대체하고 있습니다). 물론, Discourse는 브라우저에서 완전히 정상적으로 열려 사용할 수 있으며, 저 역시 그렇게 사용하고 있습니다.

개발자의 관점에서 보면, 위챗 생태계의 심사 과정이 때로는 매우 답답하게 느껴질 때가 있지만, 그 막대한 사용자 트래픽 덕분에 이를 참고 넘어갈 수밖에 없습니다. 어쩔 수 없는 상황입니다.