Mungkin pada bingung ya apa si Bot Click Bot wkwkwk, Sebenarnya ini hanya penamaan iseng dari saya sendiri karena bot ini untuk Click task / button yang ada pada bot yang orang lain buat.
Misal ada orang membuat sebuah bot penghasil bitcoin nah tapi kalian harus menyelesaikan task terlebih dahulu sebelum mendapatkan bitcoin tersebut nah untuk menyelesaikan task tersebut kalian harus meng klik sebuah button / command yang sudah disediakan oleh bot penghasil bitcoin tadi nah setiap click kalian cuman dapet sekitar 1 satoshi wah pasti kesel kan kalau manual ? wkkwkw. Disinilah fungsi tulisan ini jadi untuk membuat kalian tidak meng klik secara manual task tersebut, untuk contoh botnya bisa lihat screenshot dibawah ini :
Nah untuk button/command yang udah saya bicarakan diatas itu seperti Visit Sites, Message bots, Join chats, Balance dll.
Jadi tugas bot yang akan kita buat adalah untuk meng klik button/command tersebut secara otomatis. Ok langsung aja ke tutorialnya!!!
Apa sih yang digunakan dan diperlukan ?
- Python ( disini saya memakai python 3 )
- pip3 ( python package manager )
- Text Editor
- Cewe
- Kopi!!!
Pertama buat sebuah folder project misal disini saya buat dengan nama tele-bot
Lalu untuk membuat bot ini kita membutuhkan library untuk python ini namanya telethon, telethon ini seperti api atau apa disebutnya yang dapat membuat kita berinteraksi langsung dengan telegram seperti membaca pesan, melihat list pesan, membalas pesan, mengirim pesan dll.
documentasi :
https://telethon.readthedocs.io/
Lalu kita install library ini dengan command
pip install telethon
kalau sudah lalu kita buat script pythonnya
pertama yang harus dilakukan ssetelah membuat script adalah mengimport modules telethon nya
from telethon import TelegramClient, events, sync
from telethon.tl.functions.messages import GetHistoryRequest, GetBotCallbackAnswerRequest#buat variable id api dan hash api api_id = xxxxx #intapi_hash = 'xxxxxxx' #longclient = TelegramClient('session_name', api_id, api_hash)
Disini saya tidak akan menjelaskan satu satu tentang script / fungsi secara terperinci karena keadaan sedang tidak mood dan takut ada salah salah kata.
lalu tambahkan
client.start()channel_username='username bot'channel_entity=client.get_entity(channel_username)print(channel_entity)
client.disconnect()
jadi pertama yang kita lakukan adalah get / mengambil informasi si bot telegram yang akan kita bot nantinya.
lalu selanjutnya tambahkan
posts = client(GetHistoryRequest(peer=channel_entity,limit=1, #ini dimaksud kita hanya mengambil 1 pesan terakhiroffset_date=None,offset_id=0,max_id=0,min_id=0,add_offset=0,hash=0))
nah di variable posts ini nanti ada informasi chat kita dengan bot yang dituju ada jumlah chat, isi pesan dll.
Setelah tadi kita buat variable post sekarang kita buat variable messageId, nah divariable ini kita mengambil id dari messages untuk kebutuhan menentukan messages yang ada custom button nya.
buat variablenya :
messageId = posts.messages[0].id
untuk example resultnya :
Message(id=34385, to_id=PeerUser(user_id=285431595), date=datetime.datetime(2019, 5, 12, 8, 58, 13, tzinfo=datetime.timezone.utc), message='Sorry, there are no new ads available. 😟\n\nYou have not enabled alerts for new click tasks.', out=False, mentioned=False, media_unread=False, silent=False, post=False, from_scheduled=False, from_id=850081470, fwd_from=None, via_bot_id=None, reply_to_msg_id=None, media=None, reply_markup=ReplyInlineMarkup(rows=[KeyboardButtonRow(buttons=[KeyboardButtonCallback(text='🔔 Turn on alerts', data=b'{"name":"Subscribe","type":"click"}')])]), entities=[MessageEntityBold(offset=79, length=5)], views=None, edit_date=None, post_author=None, grouped_id=None)
nah disitu ada attribute reply_markup disitulah letak para command / button berada lalu kita tinggal masukan script
client(GetBotCallbackAnswerRequest(channel_username,messageId,data=posts.messages[0].reply_markup.rows[0].buttons[0].data))
discipt ini berarti kita mengklik button pertama, dari message id yang sudah kita dapatkan dari bot.
full script.
from telethon import TelegramClient, events, syncfrom telethon.tl.functions.messages import GetHistoryRequest, GetBotCallbackAnswerRequestapi_id = xxxxxapi_hash = 'xxxx'client = TelegramClient('session_name', api_id, api_hash)client.start()channel_username='xxxxxx'channel_entity=client.get_entity(channel_username)posts = client(GetHistoryRequest(peer=channel_entity,limit=1,offset_date=None,offset_id=0,max_id=0,min_id=0,add_offset=0,hash=0))messageId = posts.messages[0].idclient(GetBotCallbackAnswerRequest(channel_username,messageId,data=posts.messages[0].reply_markup.rows[0].buttons[0].data))client.disconnect()
tinggal kreasikan se asiknya kalian :D
terimakasih maaf bila ada salah salah kata ^_^