Set up Telegram integration using the discourse-chat-integration plugin

안녕하세요! 정말 멋진 플러그인입니다!

새로 생성된 주제와 새 응답에 대한 알림을 받는 그룹에 성공적으로 추가했습니다.

하지만 같은 봇을 다른 그룹에도 추가할 수 있을까요?..다른 설정을 변경하지 않고 봇이 두 그룹 모두에 동일한 정보를 게시할까요?

같은 봇이라도 그룹마다 채팅 ID가 다를 것 같은데…여기 있는 전문가들의 의견을 듣고 싶습니다!:smiling_face_with_sunglasses:

맞습니다. 여러 그룹에서 작동하도록 설계되어 있습니다 :slight_smile:

그러면 채팅 ID를 변경하지 않고 다른 그룹(또는 여러 그룹)에 추가하면, 어떤 경우에도 작동할까요?

각 그룹별로 Discourse에 새로운 "채널"을 생성해야 합니다.

그렇게 하면 각 채널마다 다른 채팅 ID를 입력할 수 있습니다.

2개의 좋아요

정말 감사합니다! 지금 바로 테스트해 볼게요!! 여기 지원 서비스 최고네요!!:flexed_biceps:

1개의 좋아요

누구 있나요? 전혀 감이 안 잡혀요 :<

저도 같은 문제를 겪고 있습니다. 봇이 응답이 없어요. 채팅 ID를 전혀 가져올 수 없네요 :frowning:


@kuba-orlik 마침 해결했습니다!

브라우저에 다음 명령어를 입력해 보세요.

https://api.telegram.org/bot<token>/getUpdates

다음과 같은 JSON 응답이 반환되어야 합니다.

{"ok":true,"result":{"id":**xxxxxxxxxx**,"is_bot":true,"first_name":"forumbot","username":"mappy_forum_bot","can_join_groups":true,"can_read_all_group_messages":false,"supports_inline_queries":false}}

채팅 ID는 id 키의 값입니다. 성공을 기원합니다!

3개의 좋아요

감사합니다!

얼마 전 채팅에 /rant만 단독으로 입력했는데, 봇이 ID도 함께 응답하더라고요 :man_shrugging:

2개의 좋아요

여기서 막혔어요. 플러그인을 설치하고 토큰을 추가했는데, 어디를 봐도 “채널 추가” 버튼을 찾을 수가 없어요.

주 플러그인 설명서(main plugin instructions)를 순서대로 따르는지 확인해 주세요. 플러그인과 텔레그램 제공자를 활성화했나요? 그 후면 다음과 같은 UI를 확인하실 수 있습니다:

플러그인과 텔레그램 제공자를 활성화했습니다. 하지만 탭이 보이지 않습니다:

(포르투갈어로 되어 있지만 UI는 동일합니다)

Digital Ocean / Ubuntu에서 2.5.0.beta7을 실행 중입니다.

네, 제가 거기서 왔습니다.

discourse-chat-integration 오른쪽의 “설정”을 클릭하면 여기로 이동합니다:

죄송합니다. 여기 인터페이스가 이상적이지 않습니다. 첫 번째 스크린샷의 왼쪽에 있는 "채팅 통합"을 클릭해야 합니다. “설정” 버튼을 클릭하지 마세요.

1개의 좋아요

아,太好了! 좀 이상하긴 하지만 드디어 찾았어요. 도움 주셔서 감사합니다.

1개의 좋아요

텔레그램 채널 목록과 텔레그램 그룹에서 채팅 ID를 가져올 수 없습니다.

봇을 생성하고 채팅 통합 플러그인(Chat Integration Plugin)을 사용하여 그 토큰을 Discourse 설정에 입력했습니다. 그런 다음 해당 봇을 텔레그램 채널 목록에도, 텔레그램 그룹에도(관리자로) 추가했습니다.

이제 https://bathindahelper.com/admin/plugins/chat/telegram 에서 채널을 생성하기 위해 채널 ID를 가져와야 합니다. [getchatid 명령어는 어디에서도 작동하지 않습니다.]

텔레그램 봇/채널/그룹에서 채팅 ID를 전혀 가져올 수 없는 이유가 무엇인지 안내해 주십시오. 봇을 통해 이 브라우저 명령어로만 채팅 ID를 하나만 가져올 수 있습니다:
https://api.telegram.org/bot1379583420:ASOMELETTERSVQHVc/getupdates

또한 혼란스럽습니다. 텔레그램에서 서로 다른 ‘채팅 ID’ 두 개를 가져와야 하는 건가요? 아니면 봇용, 채널용, 그룹용으로 총 3개의 채팅 ID를 가져오는 건가요?

잘못된 곳에 게시한 것 같아 죄송합니다. 하지만 현재 이 기능이 실제로 작동하지 않는 것 같습니다. 통합 플러그인을 설치하고 봇을 설정하는 과정은 문제없이 진행되지만, 알림이 절대 전송되지 않고 채팅 명령에도 응답이 없습니다.

텔레그램 API를 조회하여 봇에 현재 설정된 웹훅을 확인해 보면 URL이 없는 웹훅이 반환됩니다. 그래서 해당 작업이 실패하고 있는 건 아닐까요?

텔레그램의 getWebhookInfo 엔드포인트에서 받은 응답은 다음과 같습니다:

{
  "ok": true,
  "result": {
    "url": "",
    "has_custom_certificate": false,
    "pending_update_count": 17
  }
}

수정: rails 셸에서 DiscourseChat::Provider::TelegramProvider.setup_webhook()를 수동으로 실행하여 웹훅을 설정했는데, 이게 어느 정도 작동은 하지만 텔레그램의 훅이 Discourse를 호출할 때 404 오류가 발생합니다:

POST /chat-integration/telegram/command/<redacted> HTTP/1.1" "-" "telegram_command/command" 404 3329 "-" 0.020 0.019 "-"

확인해 보니 토큰의 마스킹된 부분이 데이터베이스의 chat_integration_telegram_secret 설정값과 일치합니다.

Telegram 봇에 테스트 메시지를 보내기 위해 사용할 메시지를 찾을 수 없습니다. 최신 업데이트 이후에 이런 문제가 발생한 것 같습니다.

내 사이트에는 해당 게시글들이 존재하는데도 말이죠.

오래 기다리게 해서 죄송합니다! 이 문제들을 해결하는 데 도움이 될 수정 사항을 방금 적용했습니다:

이미 플러그인을 설정해 두셨다면, chat_integration_telegram_enabled 설정을 비활성화했다가 다시 활성화해야 올바르게 재구성됩니다.

3개의 좋아요

감사합니다.
해당 설정을 비활성화했다가 다시 활성화했습니다. 이제 이것만으로 충분할 것 같습니다.