Selain proyek klien, kami sangat suka membuat proyek internal - untuk kesenangan dan kenyamanan. Ini keren ketika Anda dan kolega Anda dapat membuat aplikasi super atau bot untuk stand-up . Bot internal juga muncul untuk membuka pintu dan melihat kamera, yang akan saya bahas di posting ini.
Penafian : Jika Anda mencari kasus teknis yang rumit, sayangnya saya tidak punya sesuatu untuk menyenangkan Anda. Saya memberi tahu Anda sebelumnya agar Anda tidak memiliki harapan palsu. Kami memiliki solusi sederhana namun efektif yang dapat dilakukan dengan mudah dalam beberapa jam dan mendapatkan banyak nilai.
Bagaimana bot bekerja
Botnya sangat sederhana: dua tombol untuk pintu (buka pintu, buka gerbang) + beberapa tombol untuk kamera.
Pada saat yang sama, pada saat peluncuran, efeknya berubah menjadi gila - mereka segera mulai menggunakan bot, dan begitu saja, karena keren untuk mengubah sesuatu dengan satu ketukan pada tombol.
Bot menghemat waktu
Bot itu nyaman. Terutama ketika Anda lupa kunci Anda atau ketika Anda terlalu malas untuk mengambilnya saat Anda pergi merokok. Tampaknya ini hal sepele - baik, ambil sekumpulan kunci dengan gantungan kunci dari Paris atau kartu pas dari saku Anda dan taruh di pintu. Tetapi seluruh hidup kita terdiri dari hal-hal kecil - tampaknya jika Anda menghemat 10-15 detik setiap hari, Anda dapat menikmati kenyataan selama 5-10 hari lagi. Lihat infografik yang indah ini tentang ke mana tahun-tahun kehidupan kita pergi.
Tetapi alasan utama bot adalah kurir. Kami memiliki kantor dua lantai seluas 800m², tetapi dengan satu pintu masuk untuk kurir. Jika Anda bekerja di lantai dasar, maka tidak ada masalah, tetapi akan butuh waktu lama untuk berpindah dari departemen DevOps ke pintu masuk.
Bertemu dengan kurir setelah bertahun-tahun mengembara
Pada saat yang sama, bertemu dengan kurir tidak masuk akal: Anda melihat seorang pria dengan pakaian terusan, membuka pintu untuknya dengan kancing, menunggu dia datang, membuka peti yang didambakan, mengambil paket dan membuka pintu lagi dengan tombol. Dan kemudian - jauh kembali.
Semuanya akan lebih mudah dengan bot. Anda bekerja dengan tenang, kurir menelepon, Anda memintanya menekan tombol bel dan meninggalkan pesanan di depan pintu, Anda mendengar bel. Dia menekan tombol - membuka pintu gerbang, menekan tombol kedua - membuka pintu. Kurir meninggalkan makanan - Untung!
Hal utama adalah menekan dua tombol - pintu dan gerbang. Jika tidak, kurir akan terjebak di halaman dan akan bersumpah dalam bahasa yang tidak bisa dimengerti, seperti karakter "Sims", ngeri, tidak tahu harus berbuat apa.
Bagaimana bot memantau kantor
Dengan pintu disortir, tetapi kemudian masalah lain muncul - orang luar dapat mengetuk kantor. Jika semuanya jelas dengan orang-orang di overall, maka jika klien, mitra, atau seseorang yang tidak dikenal telah tiba, semuanya tidak sesederhana itu. Untuk kasus seperti itu, integrasi dengan kamera sangat berguna. Akan lebih mudah jika Anda dapat mengetuk satu tombol dan memahami siapa yang ada di balik pintu.
Ada beberapa kamera dan jika Anda mengklik masing-masing kamera, Anda dapat memeriksa apakah semuanya beres di kantor, apakah Anda lupa mematikan lampu dan jika Anda meninggalkan barang-barang Anda. Jelas bahwa jika Anda lupa ponsel Anda di toilet, maka tidak ada bot yang akan membantu. Tetapi jika di sudut kebugaran, maka cukup.
Apa yang ada di dalam bot
Kami telah menulis layanan khusus, karena berbahaya jika dilakukan tanpanya - saya tidak ingin seseorang secara tidak sengaja menemukan bot untuk mencari bot dan dapat membuka pintu di kantor kami. Orang seperti itu duduk di Pereslavl-Zalessky dan menimbulkan kebingungan dalam produksi ponsel Moskow.
Dan ini Pereslavl-Zallesky. Tampak hebat!
Oleh karena itu, kami membuat mekanisme untuk mengonfirmasi dan melarang pengguna - seseorang memasukkan nomor telepon untuk pendaftaran, dan bot admin mengonfirmasinya dengan sebuah perintah.
Kami bahkan tidak berpikir tentang peretasan. Bot berjalan di jaringan internal, jadi tidak perlu perlindungan tambahan apa pun. Tidak ada cara eksternal untuk mengakses aplikasi yang menjalankan perintah, kecuali melalui bot. Satu-satunya cara bagi orang asing untuk membuka pintu adalah dengan menemukan salah satu karyawan kami di jalan, mengambil telepon dan membuka pintu.Bahkan, kami mempercayakan semuanya kepada Telegram.
Bot dan kamera
Ceritanya mirip dengan kamera. Ada jaringan internal yang secara otomatis menghasilkan pratinjau. Yang diperlukan hanyalah merujuk ke tautan yang dijamin selalu memiliki gambar yang segar - bingkai terakhir dari kamera. Itu selalu disimpan dalam "RAM" - itu tidak terus-menerus diperbarui, tetapi yang pasti diperbarui. Justru dalam "operasi" panggilan dilakukan sesuai dengan skema otorisasi yang cerdas.
Ketika saya mengatakan "rumit" yang saya maksud adalah permintaan non-standar, yang hampir tidak digunakan di mana pun selain kamera. Anda perlu menentukan nama pengguna dan kata sandi langsung di domain, seperti mailto. Maka semuanya sederhana - Java mengakses URL, menyimpan file dan mengunggahnya ke Telegram. Bot tidak membuat bingkai baru, tetapi menimpa yang sudah ada. Dia tidak tertarik dengan siapa yang datang untuk bekerja, dia hanya tertarik pada keadaan saat ini. Setiap gambar memiliki berat sekitar 200-300 KB, tidak ada pembicaraan tentang beban tinggi. Namun agar tidak ada yang bisa "meletakkan" bot, dan agar bot tidak diblokir oleh Telegram karena spam, kami menambahkan interval 10 detik antara pengiriman permintaan.
Satu-satunya hal yang tidak kita ketahui adalah bagaimana gambar disimpan - ada gagasan bahwa solusi sharding digunakan untuk memindahkan file yang telah lama digunakan ke server terpisah. Jika Anda tahu cara kerjanya, beri tahu kami di komentar.
Hal terakhir yang perlu diperhatikan adalah notifikasi setiap malam. Kami terkadang mengadakan pesta kantor, ditambah lagi selalu ada orang yang meninggalkan kantor lebih lambat dari yang lain. Oleh karena itu, kami membuatnya agar jika seseorang menggunakan bot dari pukul 00:00 hingga 09:00, maka pengguna dan orang yang ditandai secara khusus menerima pemberitahuan.
Siapa pun yang menggunakan bot akan menerima pemberitahuan dengan permintaan untuk mematikan lampu, AC, dan menutup jendela. Untuk orang yang ditandai secara khusus - pemberitahuan biasa bahwa pengguna seperti itu telah menggunakan bot, ini perlu dipahami bahwa semuanya baik-baik saja dan tidak ada orang asing di kantor.
Hasilnya, ternyata kami memiliki database dengan peran sebagai berikut:
- admin yang mengonfirmasi dan melarang;
- pengguna yang menggunakan;
- peringatan yang menerima pemberitahuan.
Sebelumnya, hal-hal tidak berjalan dengan baik dengan kecepatan secara umum - berkat pemblokiran Telegram. Perintah yang seharusnya memakan waktu 2-3 milidetik membutuhkan waktu satu detik untuk diselesaikan. Dan untuk semua tautan yang menggunakan proxy (menerima dan mengirim), ping meningkat berkali-kali.
Terkadang hal ini menyebabkan crash dan crash. Orang-orang terbiasa menusuk tombol "buka" sebanyak 50 kali. Dan kemudian, dengan jeda, Anda bisa mendengar simfoni bel pintu. Kami harus mengubah port dan proxy, sementara kami tidak melakukan hardcode, sehingga kami dapat dengan aman mengubah satu digit voila.
Jalur bonus: munculkan ide tentang hal lain yang dapat Anda hasilkan untuk kantor. Datang juga denganmu
- . , «FINCH ». , , (, ).
- : , , « ?» «» «». , .
- CO2. , . «», , .
- . , . , . , . , — — .
— ? , , , . , , ?
Faktanya, tidak ada kasus yang tidak dapat diterapkan secara teknis di bot. Itu selalu bermuara pada UX, ergonomi dan imajinasi. Telegram memungkinkan Anda membuat keyboard sebaris dengan tombol dalam berbagai ukuran, bahkan matriks 50 x 50. Tetapi tombol-tombol ini ada: tidak ada kaset, layar, burger, kotak centang.
Pada saat yang sama, membuat bot individu bahkan lebih buruk, karena Anda harus mencarinya, dan ini sangat banyak klik sehingga mengapa bot seperti itu, jika lebih cepat untuk melakukan semuanya secara manual (bahkan jika Anda duduk di departemen DevOps dan Anda perlu bertemu dengan kurir).
Namun, tidak ada yang melarang bermimpi. Beri tahu kami tentang ide paling gila untuk bot Telegam, dan kami akan mendistribusikan kaos FINCH eksklusif kepada pembuat yang paling keren. Kami akan mengirim ke mana saja di dunia
Terima kasih!