Saya telah menggunakan telegram_bot , dan mencoba untuk mendapatkan id groupChat untuk mengirim pemberitahuan ke obrolan grup, tetapi tidak tahu metode mana yang harus saya gunakan untuk itu.
Untuk mendapatkan id obrolan saya gunakan untuk message.chat.id ketika bot berpartisipasi dalam obrolan tetapi yang harus saya gunakan untuk mendapatkan id obrolan grup tidak dapat menemukan /
telegram
telegram-bot
Roman Podpryatov
sumber
sumber
Jawaban:
Untuk mendapatkan id obrolan grup, lakukan hal berikut:
Tambahkan BOT Telegram ke grup.
Dapatkan daftar pembaruan untuk BOT Anda:
Ex:
Cari objek "obrolan":
Ini adalah contoh respons ketika Anda menambahkan BOT ke dalam grup.
sumber
getUpdates
permintaan pengembalian{"ok":true,"result":[]}
bahkan jika saya mencoba mengirim banyak pesan kepada kelompok dan menyebutkan bot via@
dan beberapa acak "perintah"/my_id
,/start
,/help
. Ada ide apa yang harus dilakukan? - PEMBARUAN: OK, menghapus bot dari grup, dan menambahkan bot kembali memperbaiki masalah ini (juga mencetak id obrolan dalam grup) --- sepertinya bot tidak dapat ditambahkan selama pembuatan grup.Berikut adalah urutan yang bekerja untuk saya setelah berjuang selama beberapa jam:
Asumsikan nama bot adalah my_bot .
1- Tambahkan bot ke grup.
Pergi ke grup, klik nama grup, klik Tambah anggota, di kotak pencarian cari bot Anda seperti ini: @my_bot, pilih bot Anda dan klik tambahkan.
2- Kirim pesan dummy ke bot.
Anda dapat menggunakan contoh ini:
/my_id @my_bot
(Saya mencoba beberapa pesan, tidak semua pesan berfungsi. Contoh di atas berfungsi dengan baik. Mungkin pesan harus dimulai dengan /)
3- Buka url berikut:
https://api.telegram.org/botXXX:YYYY/getUpdates
ganti XXX: YYYY dengan token bot Anda
4- Cari "obrolan": {"id": - zzzzzzzzzz,
-zzzzzzzzzz adalah id obrolan Anda (dengan tanda negatif).
5- Pengujian: Anda dapat menguji pengiriman pesan ke grup dengan ikal:
Jika Anda melewatkan langkah 2, tidak akan ada pembaruan untuk grup yang Anda cari. Juga jika ada beberapa grup, Anda dapat mencari nama grup dalam respons ("title": " group_name ").
Semoga ini membantu.
sumber
/
like/test something
make getUpdates happy.Pada Maret 2020, cukup:
Setelah bergabung, akan dihasilkan file JSON di mana id obrolan Anda akan berlokasi di message.chat.id .
Pastikan untuk menendang @RawDataBot dari grup Anda sesudahnya.
sumber
Setelah pertengahan 2018:
1 :) Undang @getidsbo atau
@RawDataBot
ke grup Anda dan dapatkan id grup Anda di bidang id chat yang dikirim.2 :) gunakan Messenger tidak resmi seperti Plus Messenger dan lihat id grup Anda di info grup / saluran.
Sebelum pertengahan 2018: (jangan Gunakan)
1: Goto ( https://web.telegram.org )
2: Goto Gorup Anda dan Temukan tautan Gorup Anda ( https://web.telegram.org/#/im ? p = g154513121 )
3: Salin nomor itu setelah g dan letakkan (-) Sebelum Itu
-154513121
4: Kirim Pesan Anda ke Gorup
bot.sendMessage(-154513121, "Hi")
Saya Tes Sekarang dan Bekerja seperti Pesona
sumber
After mid-2018
metode ini.Anda bisa mendapatkan ID Obrolan dengan cara ini.
Pada obrolan pribadi dengan bot Anda, kirim pesan acak. Anda akan mencari pesan ini nanti.
Dapatkan token API Anda dari bot_father:
XXXXXXXXX:YYYYYYY-YYYYYYYYYYYYYYYYY_YY
Kemudian, di browser Anda buat permintaan dengan url itu:
Permintaan mengembalikan respons json, dalam pencarian teks json Anda
random message
dan dapatkan id obrolan di objek itu.sumber
Menggunakan python dan telethon, sangat mudah untuk mendapatkan id obrolan. Solusi ini terbaik bagi mereka yang bekerja dengan API telegram.
Jika Anda tidak memiliki telethon, jalankan ini:
Jika Anda tidak memiliki aplikasi terdaftar dengan telegram, daftarkan satu: Tautannya adalah ini: https://my.telegram.org/
Kemudian jalankan kode berikut:
Anda mungkin ingin mengirim pesan ke grup Anda sehingga grup tersebut muncul di bagian atas daftar.
sumber
Anda dapat mengambil ID grup dengan cara yang sama. Muncul di badan pesan sebagai
message.chat.id
dan biasanya nomor negatif, di mana obrolan normal positif.ID grup dan ID Obrolan hanya dapat diambil dari pesan yang diterima, tidak ada panggilan yang tersedia untuk mengambil grup yang aktif, dll. Anda harus mengingat ID grup ketika Anda menerima pesan dan menyimpannya dalam cache atau sesuatu yang serupa.
sumber
buat bot, atau jika sudah dibuat set sebagai berikut:
memiliki akses ke pesan
rupanya, terlepas dari berapa lama / baru grup Telegram adalah:
tambahkan bot lagi ke grup
buat file skrip dan jalankan
getUpdates
contoh metode:"chat":{"id":-1001202656383,"title"
Semoga Ini Membantu (HTH)
sumber
bot menerima pesan berikut yang berasal dari grup Telegram yang memiliki bot bersama:
ekstrak data sesuai kebutuhan
/ * isinya
sumber
IMHO cara terbaik untuk melakukannya adalah dengan menggunakan telethon, tetapi mengingat bahwa jawaban oleh Apadana sudah usang diperbaiki, saya akan menulis solusi yang bekerja di sini:
cuplikan ini akan memberi Anda
10
obrolan pertama di Telegram Anda.Asumsi:
telethon
dannest_asyncio
menginstalapi_id
danapi_hash
dari my.telegram.orgsumber
sumber
Jika Anda menerapkan bot Anda, simpan nama grup yang tersimpan -> tabel id, dan tanyakan dengan perintah. Kemudian Anda juga dapat mengirim per nama.
sumber