Używam telegram_bot , i staramy się w pokoju konferencyjnym id do wysyłania powiadomień do czatu grupowego, ale nie wiem jakie metody muszę używać dla niego.
Aby uzyskać identyfikator czatu, używam do message.chat.id, gdy bot uczestniczył w czacie, ale którego muszę użyć do uzyskania identyfikatora czatu grupowego, nie może znaleźć /
telegram
telegram-bot
Roman Podpryatov
źródło
źródło
Odpowiedzi:
Aby uzyskać identyfikator czatu grupowego, wykonaj następujące czynności:
Dodaj Telegram BOT do grupy.
Uzyskaj listę aktualizacji swojego BOTa:
Dawny:
Poszukaj obiektu „chat”:
To jest próbka odpowiedzi, gdy dodajesz swojego BOTa do grupy.
źródło
getUpdates
żądanie zwrotu{"ok":true,"result":[]}
nawet jeśli próbuję wysłać kilka wiadomości do grupy I wspomnij poprzez bota@
i kilka przypadkowych „polecenia”/my_id
,/start
,/help
. Jakieś pomysły, co robić? - AKTUALIZACJA: OK, usunięcie bota z grupy i dodanie bota z powrotem naprawiło ten problem (również wyświetlał identyfikator czatu w grupie) --- wygląda na to, że nie można dodać bota podczas tworzenia grupy.Oto sekwencja, która zadziałała dla mnie po kilku godzinach walki:
Załóżmy, że nazwa bota to my_bot .
1- Dodaj bota do grupy.
Przejdź do grupy, kliknij nazwę grupy, kliknij Dodaj członków, w polu wyszukiwania wyszukaj swojego bota w ten sposób: @my_bot, wybierz swojego bota i kliknij dodaj.
2- Wyślij fałszywą wiadomość do bota.
Możesz skorzystać z tego przykładu:
/my_id @my_bot
(Wypróbowałem kilka wiadomości, nie wszystkie działają. Przykład powyżej działa dobrze. Może wiadomość powinna zaczynać się od /)
3- Przejdź do następującego adresu URL:
https://api.telegram.org/botXXX:YYYY/getUpdates
zamień XXX: YYYY na swój token bota
4- Poszukaj „czatu”: {„id”: - zzzzzzzzzz,
-zzzzzzzzzz to Twój identyfikator czatu (ze znakiem minus).
5- Testowanie: Możesz przetestować wysyłanie wiadomości do grupy z zawinięciem:
Jeśli pominiesz krok 2, nie będzie aktualizacji dla szukanej grupy. Jeśli istnieje wiele grup, możesz poszukać nazwy grupy w odpowiedzi („tytuł”: „ nazwa_grupy ”).
Mam nadzieję że to pomoże.
źródło
/
like/test something
sprawia, że getUpdates jest szczęśliwe.Od marca 2020 r. Po prostu:
Po dołączeniu wyświetli plik JSON, w którym identyfikator czatu będzie znajdować się pod adresem message.chat.id .
Pamiętaj, aby później wyrzucić @RawDataBot ze swojej grupy.
źródło
Po połowie 2018 r .:
1 :) Zaproś @getidsbo lub
@RawDataBot
do swojej grupy i uzyskaj identyfikator grupy w polu wysłanego identyfikatora czatu.2 :) użyj nieoficjalnego komunikatora, takiego jak Plus Messenger i zobacz swój identyfikator grupy w informacjach o grupie / kanale.
Przed połową 2018 r .: (nie używaj)
1: Idź do ( https://web.telegram.org )
2: Idź do swojego Gorupa i znajdź swój link do Gorupa ( https://web.telegram.org/#/im ? p = g154513121 )
3: Skopiuj ten numer po g i wstaw (-) Wcześniej
-154513121
4: Wyślij wiadomość do Gorup
bot.sendMessage(-154513121, "Hi")
Testowałem teraz i działam jak urok
źródło
After mid-2018
metody.W ten sposób możesz uzyskać identyfikator czatu.
Na prywatnym czacie ze swoim botem wyślij losową wiadomość. Przeszukasz tę wiadomość później.
Uzyskaj swój token API od bot_father:
XXXXXXXXX:YYYYYYY-YYYYYYYYYYYYYYYYY_YY
Następnie w przeglądarce wyślij żądanie z tym adresem URL:
Żądanie zwraca odpowiedź json, w tekście json wyszukaj swój
random message
i uzyskaj identyfikator czatu w tym obiekcie.źródło
Używając Pythona i Telethona, bardzo łatwo jest uzyskać identyfikator czatu. To rozwiązanie jest najlepsze dla tych, którzy pracują z telegramowym API.
Jeśli nie masz telethona, uruchom to:
Jeśli nie masz zarejestrowanej aplikacji z telegramem, zarejestruj ją: Link jest następujący: https://my.telegram.org/
Następnie uruchom następujący kod:
Możesz wysłać wiadomość do swojej grupy, aby pojawiła się ona na górze listy.
źródło
W ten sam sposób możesz pobrać identyfikator grupy. Pojawia się w treści wiadomości jako
message.chat.id
i zwykle jest liczbą ujemną, gdzie normalne rozmowy są pozytywne.Identyfikatory grup i identyfikatory czatów można pobrać tylko z otrzymanej wiadomości, nie ma dostępnych połączeń, aby pobrać aktywne grupy itp. Musisz zapamiętać identyfikator grupy po otrzymaniu wiadomości i zapisać go w pamięci podręcznej lub w podobnym miejscu.
źródło
utwórz bota lub jeśli już został utworzony ustaw w następujący sposób:
ma dostęp do wiadomości
najwyraźniej niezależnie od tego, jak stara / nowa jest grupa Telegram:
dodaj bota ponownie do grupy
utwórz plik skryptu i uruchom
getUpdates
przykładową metodę:"chat":{"id":-1001202656383,"title"
Mam nadzieję, że to pomoże (HTH)
źródło
bot otrzymuje następującą wiadomość pochodzącą z grupy Telegram, w której współistnieje bot:
wyodrębnij wymagane dane
/ * zawartość
źródło
IMHO najlepszy sposób, aby to zrobić jest użycie Telethonu, ale biorąc pod uwagę, że odpowiedź przez Apadana jest nieaktualne poza naprawy, będę pisać roztwór roboczy tutaj:
ten fragment umożliwi Ci pierwsze
10
rozmowy w telegramie.Założenia:
telethon
inest_asyncio
zainstalowałeśapi_id
iapi_hash
z my.telegram.orgźródło
źródło
Jeśli implementujesz swojego bota, zachowaj nazwę grupy -> tablicę id i zapytaj ją poleceniem. Następnie możesz również wysłać według nazwy.
źródło