개인 텔레 그램 채널의 chat_id를 얻는 방법은 무엇입니까?
curl을 사용하여 공개 채널을 업데이트합니다. 이런 종류의 구문 :
>curl -X POST "https://api.telegram.org/bot144377327:AAGqdElkZ-77zsPRoAXXXXXXXXXX/sendMessage" -d "chat_id=@MyChannel&text=my sample text"
그러나 chat_id
개인 채널은 무엇입니까? 비공개 초대에있는 사람이 아닙니다.
이제 모든 메소드의 chat_id 대신 (forwardMessage의 from_chat_id 대신) 채널 사용자 이름 (@channelusername 형식)을 전달할 수 있기 때문입니다. 하지만 내가 관리하는 비공개 채널의 @channelusername은 무엇입니까?
비공개 채널에 글을 쓰는 방법을 찾았습니다.
- @channelName을 사용하여 공개로 변환해야합니다.
Bot API를 통해이 채널에 메시지 보내기
https://api.telegram.org/bot111:222/sendMessage?chat_id=@channelName&text=123
응답으로 채널의 chat_id 정보를 받게됩니다.
{ "ok": true, "result": { "chat": { "id": -1001005582487, "title": "Test Private Channel", "type": "channel"}, "date": 1448245538, " message_id ": 7,"text ":"123ds "}}
이제 채널을 다시 비공개로 전환하고 (채널의 링크를 삭제하여)이 chat_id "-1001005582487"로 직접 메시지를 보낼 수 있습니다.
https://api.telegram.org/bot111:222/sendMessage?chat_id=-1001005582487&text=123
5 개 이상의 공개 그룹 / 채널이 존재하는 사용자는 채널 공개를 수행 할 수 없으므로 문제가 해결되지 않았습니다. 예, 그중 하나를 취소 할 수 있지만 현재로서는 다른 방법으로 채팅 ID를 검색 할 수 없습니다.
아무도 그 사건에 대한 해결책을 찾았습니까?
최신 정보
미친 해결책을 찾았습니다.
- Telegram 웹 버전에서 귀하의 계정으로 로그인하십시오 : https://web.telegram.org
- 채널을 찾으십시오. URL을 확인하십시오. https://web.telegram.org/#/im?p=c 1055587116 _11052224402541910257 과 같아야합니다.
- 여기에서 "1055587116"을 잡고 "-100"을 접두사로 추가합니다.
따라서 채널 ID는 "-1001055587116"이됩니다. 마법이 일어난다 :)
여기에서 해결책을 찾을 수 있습니다 : https://github.com/GabrielRF/telegram-id#web-channel-id
가장 쉬운 방법은 채팅에 @get_id_bot을 초대하고 다음을 입력하는 것입니다.
/my_id@get_id_bot
채팅 내용
당신도 할 수있는 일 :
1 단계) 비공개 채널을 공개 채널로 변환
2 단계)이 채널의 ChannelName 설정
3 단계) 그런 다음이 채널을 비공개로 변경할 수 있습니다.
4 단계) 이제 3 단계에서 설정 한 @ChannelName을 사용하여 메시지 보내기
note:For Step 1 You Can Change One of Your Public Channel To Private For a short time.
No need to convert the channel to public then make it private.
find the id of your private channel. (There are numerous methods to do this, for example see this SO answer)
curl -X POST "https://api.telegram.org/botxxxxxx:yyyyyyyyyyy/sendMessage" -d "chat_id=-100CHAT_ID&text=my sample text"
replace xxxxxx:yyyyyyyyyyy with your bot id, and replace CHAT_ID with the channel id found in step 1. So if channel id is 1234 it would be chat_id=-1001234.
All done!
Open the private channel, then:
on web client:
- look at the URL in your browser:
if
it's for example https://web.telegram.org/#/im?p=c1192292378_2674311763110923980then
1192292378 is the channel ID
on mobile and desktop:
- copy the link of any message of the channel:
if
it's for example https://t.me/c/1192292378/31then
1192292378 is the channel ID (bonus: 31 is the message ID)
on Plus Messenger for Android:
- open the infos of the channel:
- the channel ID appears above, right under its name
WARNING
be sure to add -100 prefix when using Telegram Bot API:
if
the channel ID is for example 1192292378then
you should use -1001192292378
- Open Telegram Web at https://web.telegram.org
- search you private channel
- Look at the URL. It's like: https://web.telegram.org/#/im?p=cXXXXXXXXXX_578236787445474833
The id of your private channel is the XXXXXX part (between the "p=c" and the underscore). To use it, just add "-100" in front of it. So if "XXXXXX" is "4785444554" your private channel id id "-1004785444554".
The option that I do is by using the popular Plus Messenger on Android. The play store link is: https://play.google.com/store/apps/details?id=org.telegram.plus&hl=en
You can click on the Channel and in Channel info below the group name, you can find Channel Id.
수퍼 그룹 및 채널 ID는 플러스 메신저에서 1068773197처럼 보입니다. API 사용을 위해 접두사 -100을 사용하면 -1001068773197이됩니다.
참고 URL : https://stackoverflow.com/questions/33858927/how-to-obtain-the-chat-id-of-a-private-telegram-channel
'developer tip' 카테고리의 다른 글
자바에서 완성 된 미래를 만드는 방법 (0) | 2020.11.09 |
---|---|
모델을 가져올 때 1을 true로 또는 0을 false로 변환하는 방법 (0) | 2020.11.09 |
MacOS 앱이 Xcode 시뮬레이터에서 실행되지 않습니다. (0) | 2020.11.09 |
여러 줄을 편집하는 IntelliJ IDEA 방법 (0) | 2020.11.09 |
경로가 주어진 파일 크기를 얻는 방법은 무엇입니까? (0) | 2020.11.09 |