yakut özcan kişisel blog: Kasım 2016

23 Kasım 2016 Çarşamba

NodeMcu web server ve Android,Python uygulaması

NodeMcu maceramıza kaldığımız yerden devam ediyoruz arkadaşlar. Bu örneğimiz de nodemcu'ya web server olarak kullanıp dijital pinin durumunu yine html çıktısı olacak alıp android ve python ile yazdığım iki uygulama ile güzelleştirdim diyebiliriz. 



Python uygulaması çalışması için "notify-send" kurulu olması gerekli (sudo apt-get install notify-osd)

Python uygulamasına ait görüntüler



 Python uygulamasına ait görüntüler



Android uygulaması da aynı mantıkla web sayfasını görüntüleyip "acik" ise sesli ve titreşimli bildirim veriyor telefon üzerinde. Bildirimi açıp okuyana kadar bildirim gelmeye devam edecektir.




 Android uygulamasına ait görüntüler

 Android uygulamasına ait görüntüler

Yazılar için geri dönüşler oldukça benim de yazma hevesim bir o kadar artıyor. İyi çalışmalar.

16 Kasım 2016 Çarşamba

RaspberryPi telegram botu ile hareket sensörü kullanımı

Merhaba arkadaşlar daha önce duyduğum ve kurcalamaya vakit bulamadığım teknolojiler ile daha çok vakit geçirmeye başladım.  "python yardımı için Umut'a teşekkürler."


Uzatmadan projeyi tanıtıyorum. Elimde önceden alınma PIR sensörum vardı bunu raspberry pi ile denemek istedim işin içine birde telegram botu girdi güzel oldu.
Elimde ki PIR ı şu görsele göre bağladım. Şurada anlatlılıyor
"https://www.raspberrypi.org/learning/parent-detector/worksheet/"


Telegram botunun nasıl oluşturulacağı ise 
https://core.telegram.org/bots#6-botfather" bu adreste anlatılmış.

Bot ve raspberry pi



Proje github:


14 Kasım 2016 Pazartesi

NodeMCU TCP sunucu ve istemci haberleşmesi

Sosyal medyadan aldığım destek ile denediklerimi ve yaptığım basit örnekleri artık daha korkusuzca paylaşabiliyorum :)
Çok uzatmadan uygulamamıza geçelim.
NodeMCU ESP8266 kullanan bir geliştirme kartı Aliexpress'den temin edebilirsiniz daha ucuz. Lua ve arduino programlama dili ile kullanabilirsiniz ben arduino tercih ettim erişebileceğim kaynak sayısı daha çok olduğunu bildiğim ve aşina olduğum bir dil olduğu için.

 Arduino IDE kullanabilmek için kartı eklemeniz gerekiyor bunun nasıl yapılacağı şurada anlatılmış.


Evet bunun içinde ufak bir python scripti var :)


Örnek ekran görüntüsü

13 Kasım 2016 Pazar

Yerel ağda ki raspberry pi bulmanın yolları

Merhaba arkadaşlar raspberry pi ile başımdan bir macera geçti ve bu maceranın sonunda da bir sorun ile karşılaştım ve çözüm yolları aramaya başladım :) 
Sorun: Üniversiteye götürdüğüm RPi lokal ağda bulmam gerekiyordu.
Sorunun cevabından önce diğer yolları da yazayım istedim.
  1. NMap(Zenmap)

sudo nmap -sP 22 192.168.1.0/24
 
sudo nmap -p 22 192.168.1.0/24
Zenmap
Neyse nmap uzmanı değilim bu şekilde değişik komutlar ile ağı tarayıp RPi bulabilirsiniz.
Hatta burada da biraz değinilmiş
Windows kullanıcıları içinde zenmap mevcut ve bir kaç tane daha araç mevcut
Angry ip scanner
Mobil olarak fing.io var ios ve android desteklemekte.

Şimdi asıl sorunumuza dönecek olursak üniversite ağı çok kalabalık ağı öyle her istediğimizde de taramak sıkıntı çıkarabilir. Bende bir tane python scripti ile işi çözebileceğimi düşündüm :) 

Ve şöyle bir python kodu var

Kısaca açıklamak gerekirse UDP den 1907 portunu dinliyor ve "haydut_rpi" yazanlara ip adresim bu deyip gönderiyor. Kullanmak için raspberry pi açılışına eklemek yeterli. ("nano /etc/rc.local") 
Birde java arayüz yaptım. 
Mobil uygulama da var aslında ama tam istediğim gibi olmadı ileride belki onuda paylaşırım.

12 Kasım 2016 Cumartesi

Facebook messenger bot başlangıç rehberi

Merhaba arkadaşlar uzun bir süredir blog yazısı yazamıyordum, yazmayı unuttum galiba cümlelerim karmaşık gelebilir dalgınlıktan olabilir. Şimdi sizlere facebook messenger bot kurulumunu heroku üzerinde anlatacağım.


İlk önce heroku üzerinde yeni uygulamayı oluşturuyoruz.  

Çok basit bir işlem uygulamayı oluşturduktan sonra "Deploy" sekmesine geliyoruz.


Deploy sekmesinde "Deployment method" "Github" seçip Github depomuzu seçiyoruz.



Github depomuzu seçtikten sonra "Deployment method" aşağıda ki gibi "Github Connected" diyor.
Daha sonra heroku uygulamamızın en altında "Manuel Deploy" içerisinde "Deploy a GitHub branch" dan "master" branch seçip deploy diyoruz ve bir sorun olmazsa uygulama çalışmaya başlayacaktır.
Şimdi uygulamamızın "Settings" sekmesine gelip değişikliklerimizi tanımlayıp facebook messenger botu için gerekli ayarları tanımlayacağız. Bu kısım heroku ya özel bir durum istersek github üzerinde ki kaynak kodunda ayarlama yapabiliriz.
"PAGE_ACCESS_TOKEN" ve "VERIFY_TOKEN"

Sunucu taraflı kurulum ve ayarlarımız bitti şimdi facebook üzerinde ki işlemlerimize geçelim.
Ben uygulamamın adını "Blog­g­e­r­Test" olarak belirledim. Ardından bir tane de facebook sayfası oluşturmamız gerekiyor.
Uygulama için bir adet api "Jeton" oluşturuyoruz. Sonra bu Jetonu herokuda oluşturduğumuz "PAGE_ACCESS_TOKEN" değişkeni içerisine yazacağız.
Son olarak facebook üzerinde "Web Kancaları" tıklayarak uygulamamızı buraya yönlendireceğiz. Benim verdiğim izinler aşağıda ki gibi.
"Page Aboneliği" > "Geri Dönüş URL'si" > "Düzenle" diyerek https destekli url ve geri dönüş url yazarak işlemimizi bitiriyoruz.

Unutmadan heroku da dolduracak olduğumuz alanların son hali aşağıda ki gibi olacaktır.
Son olarak değişiklikleri ve ayarları yaptıktan sonra heroku içerisinde "Manual deploy" de bulunan "Deploy Branch" seçilerek proje yeniden çalıştırılır.  Sağ üst köşeden "Open App" dediğinizde aşağıda ki gibi bir web sayfası sizi karşılar. 
Son olarak toparlayacak olursak uzun süredir yazı yazmadığım için hitap şeklim ve yazım yanlışlarım olduysa özür dilerim. Heroku üzerinde ki logları aşağıda ki ekran görüntüsünde belirttiğim yerden bakabilirsiniz.
Uygulama Github Deposuhttps://github.com/yakutozcan/bloggermessengerbot

 
Facebook messenger bot uygulamanızı arkadaşlarınız ile test etmek isterseniz aşağıda ki görüntüde gördüğünüz üzere "Test Görevlileri">"Test Görevlileri Ekle" diyerek arkadaşlarınız üzerinde deneme yapabilirsiniz.
Uygulamayı herkese açık bir şekilde kullanabilmek için değerlendirmeye girmesi gerekiyormuş..
"Messenger platformunu kullanmak için, uygulamanın Gönder/Al API'si (pages_messaging) için onaylanmış olması gerekir. Gönder/Al API'si sadece organik içerikler için kullanılmalı ve pazarlama veya diğer tanıtım iletişimleri göndermek için kullanılmamalıdır. Telefon numaralarını kullanarak mevcut kişilerini Messenger hesaplarıyla eşleştirmek için, Müşteri Eşleştirmesine (pages_messaging_phone_number) ihtiyacın olacak."