Bu yazımda nasıl bir telegram botu oluşturulur ve bu botun bize cevap vermesi nasıl sağlanır bunu öğreneceğiz.
Adım 1 'BotFather' botundan yeni bir bot isteği yapmakTelegram üzerinden 'BotFather' botu ekliyoruz bütün botların babası olarak geçer ve yeni bir bot yaratılacağı zaman bu bottan yardım alırız.
İlk önce 'BotFather'a yeni bir bot oluşturma isteği yolluyoruz
/newbotBurada bizim bota koyacağımız ismi soruyor sonu '_bot' ile bitmek zorunda
icoreport_bot
Ben botun ismini icoreport seçtim
Ardından bu bot bize API'a ulaşmamız için bir anahtar veriyor bu token ile botu kontrol edebiliyoruz bu aldığımız anahtara bundan sonra 'TOKEN' diyeceğim.
Adım 2 Gereksinimlerin Yüklenmesi
Botumuzu kodlarken telepot isimli bir python kütüphanesinden yardım alacağız.
https://github.com/nickoala/telepotpip:
$ pip install telepot
$ pip install telepot --upgrade # UPGRADE
easy_install:
$ easy_install telepot
$ easy_install --upgrade telepot # UPGRADE
Kullancağımız kütüphaneyi pip,easy_install veya kendimiz derleyerek kuruyoruz.
Adım 3 Kendi ID'mizi Öğrenmekİlk önce botumuzu telegramda ismiyle buluyoruz ve kendisine bir test mesajı yolluyoruz.
'Merhaba Guven Test 123' gibi.
Ardından python konsoluna düşelim.
(Unix tabanlı bilgisayarlar komut satırına python yazmanız yeterli)
>>> import telepot
>>> bot = telepot.Bot('TOKENİ BURAYA YAZIN')
>>> from pprint import pprint
>>> response = bot.getUpdates()
>>> pprint(response)
[{u'message': {u'chat': {u'first_name': u'Ali G\xfcven',
u'id': 989898989,
u'type': u'private'},
u'date': 1517112420,
u'from': {u'first_name': u'Ali G\xfcven',
u'id': 989898989,
u'is_bot': False,
u'language_code': u'tr'},
u'message_id': 794,
u'text': u'Merhaba Guven Test 123'},
u'update_id': 442190839}]
Yukarıdaki '989898989' yazan yerlerde sizin telegram hesabızın idsi olacaktır
Adım 4 Kendimize Mesaj YollayalımPython konsolunu hiç kapatmadan komutumuzu girelim
>>> bot.sendMessage(989898989,'Merhaba Ben Bot')
{u'date': 1517112673, u'text': u'Merhaba Ben Bot', u'from': {u'username': u'icoreport_bot', u'first_name': u'icoreport', u'is_bot': True, u'id': 355918951}, u'message_id': 795, u'chat': {u'first_name': u'Ali G\xfcven', u'type': u'private', u'id': 274359781}}
76bf5c2894b93260cce7dab9803458db.png
Gönderdiğimiz mesaj bize geldiyse eğer buraya kadar herşeyi doğru yapmışız demektir.
Adım 5 Artık Kendi Botumuzu Faaliyete Geçirelim
https://github.com/addtelegram/icoreport/blob/master/main.pybir tane main.py adlı bir dosya açıyoruz ve python ile bunu çalıştırınca botumuz aktif hale geliyor
>>>python main.py
Bu yazıyı oluştururken
http://telepot.readthedocs.io/en/latest/kaynağından yararlandım.
SON
Halihazır ben bu yaptığımız botun biraz daha geliştirilmiş halini kullanmaktayım kodlar biraz karmaşık olduğu için github üzerinde yayınlamadım ama önümüzdeki günler içerisinde hem yeni özellikler ekleyip hemde var olan özellikleri ile paylaşmayı düşünüyorum.
Var olan özellikler
Hava Durumu
Borsa Sorgulamaları
Eklenecekler
Bitcoin Sorgulamaları
Bot oluşturamayan arkadaşlar benimle iletişime geçebilirler.
Kaynak:
https://steemit.com/utopian-io/@overmedia/let-s-make-telegram-bot-with-python-tuerkce