Raspberry Pi sentiasa menyeronokkan dan mudah untuk membina projek. Senibina ARM yang kuat dan Sistem Operasi berasaskan Linux sumber terbuka telah banyak membantu kami dalam membuat projek kami dalam talian dalam masa yang singkat. Dalam tutorial ini kita akan mempelajari cara menarik lain untuk berkongsi data (fail / foto / video / audio / teks) antara Raspberry Pi dan telefon bimbit kami melalui aplikasi sembang popular yang disebut Telegram.
Bagi mereka yang baru menggunakan Telegram, ini adalah aplikasi berasaskan sembang yang tersedia di play store untuk Android (juga tersedia untuk Iphone dan windows) yang sangat mirip dengan Whatsapp. Ia mempunyai lebih dari 100 juta muat turun (seperti pada 5-10-2017) di play store dan orang mendakwa ia lebih pantas dan lebih berfungsi daripada Whatsapp (jari dilintasi). Salah satu ciri khas aplikasi ini ialah mereka menyokong bot. Maksudnya aplikasi telefon pintar ini bukan sahaja dapat digunakan oleh Manusia tetapi juga oleh mesin. Dalam kes kami mesin itu akan menjadi Raspberry Pi. Sebaik sahaja anda melatih Raspberry Pi mengenai cara bertindak sebagai bot, sesiapa sahaja (jika anda memaklumkannya kepada umum) boleh berbual dengan Raspberry Pi anda seperti berbual dengan orang biasa dan juga berkongsi Dokumen Gambar Foto dan fail Audio. Anda bahkan boleh melatihnya untuk menjadi pembantu Peribadi anda sendiri, terdengar keren bukan? Mari belajar bagaimana membina aBot telegram Raspberry pi.
Bahan yang Diperlukan:
- Mana-mana Raspberry Pi yang disambungkan ke Internet
- Aplikasi Telegram yang bergerak dengan mudah alih.
Tidak banyak perkakasan yang terlibat dalam projek ini, jadi berehatlah di kerusi anda dengan Pi anda dan ikuti langkah-langkah di bawah. Sekiranya anda baru menggunakan Raspberry Pi, ikuti artikel Pengenalan Raspberry Pi kami dan Tutorial Raspberry Pi kami yang lain.
Langkah 1: Memasang Telegram di Telefon bimbit anda
Langkah pertama ialah memasang Telegram di Telefon bimbit anda. Telegram tersedia untuk Android, IOS dan bahkan untuk platform Windows, jadi teruskan dan muat turun aplikasi Telegram anda. Sama seperti semua aplikasi, akan ada prosedur Pendaftaran kecil untuk mula menggunakan Telegram, teruskan sehingga anda sampai di skrin utama anda.
Langkah 2: Bercakap dengan Bot Father
Langkah seterusnya adalah meminta Bot Father untuk membuat kita Bot baru. Di sudut kanan atas layar Utama akan ada ikon pencarian, klik di atasnya untuk mencari nama "botfather". Botfather adalah Bot dengan sendirinya, ia akan membimbing anda membuat bot baru untuk anda. Klik mula dan pilih / newbot seperti yang ditunjukkan dalam gambar di bawah. Sekarang, bot akan meminta beberapa butiran seperti nama Bot anda dan nama pengguna bot tersebut. Isi butiran tersebut dan ingat nama pengguna kerana kami akan memerlukannya pada masa akan datang.
Langkah 3: Mendapatkan token anda untuk diakses
Saya telah menamakan bot sebagai circuitdigest dan nama pengguna sebagai circuitdigestBot. Selepas proses ini, botfather akan memberi anda Token untuk diakses. Ini seperti kata laluan untuk bot anda, orang dapat mengawal program bot anda menggunakan kunci token ini. Oleh itu, selamatkan dan jangan kongsikan kepada sesiapa. Setelah anda menerima kunci token ini, inilah masanya untuk beralih ke Raspberry Pi.
Langkah 4: Telepot untuk memasang Telegram pada Raspberry Pi
Menggunakan Telegram Bot di Raspberry Pi dimungkinkan oleh python package yang dipanggil Telepot. Kita perlu memasang pakej ini di Raspberry Pi dengan menggunakan perintah berikut di terminal Lx
sudo apt-get install python-pip sudo pip pasang telepot
Setelah Telepot diimport ke Raspberry kita dapat menggunakan pakej ini dalam program python kita untuk berkomunikasi dengan Telegram Bot kita.
Langkah 5: Memprogramkan Raspberry Pi anda
Bot yang baru kami buat di Telegram sama seperti bayi, ia tidak boleh melakukan apa-apa kecuali kita mengajarnya apa dan bagaimana melakukan sesuatu. Pengajaran ini dapat dilakukan melalui skrip Raspberry Pi dan Python. Dalam tutorial ini saya telah memprogramkan bot untuk melakukan beberapa tindakan dasar seperti mengirim pesan, Foto, Audio dan Dokumen. Oleh itu, apabila anda mengatakan perintah tertentu, ia akan bertindak balas dengan tindakan tertentu, arahan dan tindakan disenaraikan dalam jadual di bawah
Perintah dari Telegram |
Respons oleh Raspberry Pi |
/ hai |
Balas dengan rentetan "Hai! LitarDigest ” |
/masa |
Balasan dengan masa semasa |
/ logo |
Balasan dengan Imej (logo CircuitDigest) |
/ fail |
Balasan dengan fail (yang mengandungi program semasa) |
/ audio |
Balasan dengan fail audio demo |
Program lengkap untuk membuat tindakan di atas diberikan di bahagian bawah halaman ini. Tetapi di bawah ini, saya telah menerangkan coretan penting dalam program untuk membantu anda memahami bagaimana program ini berfungsi.
Langkah pertama adalah mengimport semua perpustakaan, di sini kita pasti memerlukan perpustakaan teleport untuk menggunakan bot Telegram. Kami juga menggunakan perpustakaan waktu, jadual waktu untuk membaca waktu semasa untuk Raspberry pi. Kemudian kami membuat objek sekarang di mana nilainya disimpan.
masa import, telepot import datetime dari telepot.loop import MessageLoop sekarang = datetime.datetime.now ()
Langkah selanjutnya adalah membuat fungsi untuk mengambil tindakan berdasarkan perintah masuk dari aplikasi Telegram di Mobile. Di sini nama fungsi adalah tindakan. Di dalam fungsi inilah bot menghidupkan. Bot kami tidak dapat memulakan perbualan dengan sendiri, ia hanya dapat membalas jika kami bertanya sesuatu. Jadi setiap kali kita bertanya sesuatu akan ada id chat. Id sembang ini serupa dengan alamat, hanya menggunakan id sembang ini bot dapat membalas kembali kepada kami. Jadi langkah pertama adalah membaca id sembang dan mesej yang cuba disampaikan kepada kami. Kami juga mencetak mesej yang diterima untuk tujuan debug.
tindakan def (msg): chat_id = msg command = msg print 'Received:% s'% command
Lebih jauh ke bawah fungsi kita membandingkan perintah ini dengan teks yang telah ditentukan dan melakukan tugas-tugas tertentu. Perintah pertama ini adalah / hai yang kami balas "Hai! LitarDigest ”
jika perintah == '/ hi': telegram_bot.sendMessage (chat_id, str ("Hi! CircuitDigest"))
Perintah seterusnya adalah / waktu , yang mana kita membalas waktu semasa. Kita sudah mempunyai masa dan tarikh sekarang, di sini hanya membaginya berdasarkan jam dan minit dan menambahkannya sebagai menggunakan fungsi str .
perintah elif == '/ time': telegram_bot.sendMessage (chat_id, str (now.hour) + str (":") + str (now.minute))
Perintah seterusnya adalah / logo , yang mana bot akan mengambil gambar dari url dan mengirimkannya kepada kami. Gambar boleh dihantar sama ada dari URL atau dari cakera keras. Di sini saya baru sahaja menggunakan URL yang memaparkan logo CircuitDigest.
perintah elif == '/ logo': telegram_bot.sendPhoto (chat_id, foto = "https://i.pinimg.com/avatars/circuitdigest_1464122100_280.jpg")
Perintah seterusnya adalah / file , yang akan menghantar fail bernama Aisha.py dari cakera keras. Anda boleh menghantar fail yang anda inginkan dengan menukar alamat direktori
perintah elif == '/ file': telegram_bot.sendDocument (chat_id, document = open ('/ home / pi / Aisha.py'))
Perintah terakhir adalah / audio . Ini boleh menghantar fail mp3 dari cakera keras, saya baru sahaja menggunakan fail audio yang dipanggil test.mp3 sebagai demo di sini
perintah elif == '/ audio': telegram_bot.sendAudio (chat_id, audio = terbuka ('/ home / pi / test.mp3'))
Baiklah sekarang datang langkah yang paling penting, di sinilah kita memberi akses bot Telegram kita ke skrip Python. Di sini kami menamakan bot sebagai telegram_bot dan memberikannya alamat token yang diberikan oleh bapa bot kami pada langkah 3. Pada baris di bawah ini saya telah membuang beberapa digit terakhir token saya sebagai masalah privasi. Kami juga menggunakan cetakan mendapatkan saya untuk memaparkan perincian Bot di skrin cengkerang, ini akan membantu kami memperhatikan perkara-perkara yang berfungsi.
telegram_bot = telepot.Bot ('468382312: AAFhURMxpVlMWEdFzbIQLszBPFEUpXXXXXX') cetakan (telegram_bot.getMe ())
Harap anda memahami bagaimana program ini berfungsi, sekarang mari kita melangkah ke langkah seterusnya.
Langkah 6: Menjalankan Program di Raspberry Pi anda
Seperti yang telah disebutkan sebelumnya, program lengkap diberikan di akhir halaman ini, anda juga boleh memuat turunnya dari sini. Setelah anda membuka kod, pastikan anda menukar alamat token program ke alamat token anda.
Sekarang jalankan kod python dan anda akan melihat perincian bot anda di tingkap shell seperti ini
Di sini, nama pengguna bot saya adalah circuitdigestBot. Sekiranya anda mendapat nama bot anda di sini, ini bermakna semuanya berjalan lancar.
Sebaik sahaja anda melihat " berjalan dan berjalan ", itu berarti bot anda sudah siap untuk bertindak dan kini dapat membalas perintah anda.
Langkah 7: Menikmati Hasilnya
Sekarang, yang tinggal hanyalah untuk memeriksa seberapa baik bot anda bertindak balas untuk program anda. Cari nama bot anda sekiranya saya adalah "circuitdigestBot". Cari nama pengguna dan bukan atau nama Bot, nama pengguna anda harus diakhiri dengan bot.
Sebaik sahaja anda membuka bot anda, klik start dan ketik perintah seperti / hi, / time, / file, / logo, atau / audio dan anda harus dijawab dengan sewajarnya.
Anda boleh menggunakan skrip shell untuk melihat skrip anda saat ini. Karya yang lengkap boleh didapati di video yang diberikan di hujung halaman ini.
Langkah 8: Beri saya Lima Tinggi
Harap anda memahami tutorial dan sekarang dapat membuat bot telegram Raspberry pi ini dan berkomunikasi dengan Raspberry Pi menggunakan Telegram App. Malangnya! Sekiranya anda mempunyai masalah, beritahu saya melalui bahagian komen dan saya akan cuba menghubungi anda. Juga, beritahu saya bagaimana anda menyukai projek ini atau apa yang anda mahu saya bina menggunakan ini dalam projek yang akan datang.
Juga, dalam tutorial seterusnya. Kami akan menjadikan penampilan ini lebih sejuk dengan mengubah cara kami menghantar arahan dan sesuatu yang lebih berkaitan dengan perkakasan pada Raspberry Pi.