Cihat Altıparmak

Bu blogta yazılarımı yayınlıyorum.\ I'm publishing my articles here.

Merhabalar, bu bölümde dbus modülünün kullanımından bahsedeceğiz.Lafı uzatmadan işe koyulalım.

Uyarı: d-feet yazılımını kurun,zorunlu olmasa bile olmazsa olmazlardan.

KURULUM

apt install d-feet

DBUS İLE BİLDİRİM GÖSTERELİM

İlk olarak d-feet yazılımını çalıştıralım.

dbus1

Daha sonra en üstte SystemBus ve SessionBus yazan iki buton var.Bunlardan Session Bus olanına basın.

Daha sonra arama çubuğuna notifi yazın ve org.freedesktop.notifications olana tıklayın.Aşağıda bir resim göreceksiniz.Ben orada tıkladım.

dbus2

Sağ tarafta /org/Cinnamon gibi ifadeler var.O ifadelerden /org/freedesktop/Notifications olana tıklayın.

Orada Interfaces bölümü altında bir takım seçenekler daha var.Oradan da org.freedesktop.Notifications a tıklayın.

Karşınıza Methods ve Signals diye iki menu çıkacak.Biz Methods menusu altındaki Notify ye tıklayacağız.Karşınıza aşağıdaki gibi bir şey çıkacak.

dbus3

Çıkan o popup menudeki yöntem girdisi alanına aşagıdakileri yazın.Ve çalıştır butonuna tıklayın.Ve sonucu görün.

"",1,"", "Bildirimlerin Başlık Kısmı","Buyrun size bildirim kutucuğu.Güle güle notifications baloncuğunu görün : )",[],{},2

Buyrun ben yaptım ve sonuç:

dbus4

İçinizden programlama diliyle bunu yap dediğinizi duyar gibiyim. Merak etmeyin. Asıl şimdi başlıyoruz.

ilk olarak denemeNotify.py dosyası oluşturup aşağıdakileri yazın.

import dbus
bus = dbus.SessionBus() #d-feet de ilk yaptıgımız şeyi hatırlayın
obje = bus.get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications") #İkinci ve üçüncü adımları hatırlayın.
iface = dbus.Interface(obje, "") #Hani hatırlıyor musunuz,Interface menusu demiştik...
iface.Notify("",1,"", "Bildirimlerin Başlık Kısmı","Buyrun size bildirim kutucuğu.Güle güle notifications baloncuğunu görün : )",[],{},2)

Bu kodları çalıştırdığınızda da aynı sonucu alacaksınız.

DBUS İLE EKRAN KİTLEYELİM

İlk olarak yine d-feet i çalıştıralım.

dbus5

Hangi servisi kullanmalıyım?

- org.cinnamon.ScreenSaver(ben linux mint cinnamon kullanıyorum.Sizde başka türlü çıktı olabilir.)
- org.freedesktop.ScreenSaver

Cinnamon lu olanı tercih edin.(Çünkü nedense org.freedesktoplu olanı çalıştıramadım.)

Oradan cinnamon lu olanı seçtikten sonra sağdaki menuye gelecek olan /org/cinnamon/ScreenSaver seçerseniz karşınıza aşağıdaki gibi bir resim peyda olacak.

dbus6

Tabi çaktırmayın.Ben orada sağ menude bulunan Interface adlı menunun altındaki org.cinnamon.ScreenSaver a da tıkladım ve kullanabileceğim methodları görmüş oldum.

İşte o methodlar arasında Lock adlı bir method var. Ona çift tıklayın. Aşağıdaki gibi bir resim görünecek.

dbus7

İşte şimdi tek yapacağınız şey, Yöntem Girdisi Bölümüne

"Bu Ekran Kitlendiğinde Gösterilecek Olan Mesaj"

yazmak ve alt sağda bulunan çalıştır butonuna basmak. Sonucu bilgisayarınızda görebilirsiniz.

Gelin bunu koda dökelim.

import dbus

bus = dbus.SessionBus()
obje = bus.get_object("org.cinnamon.ScreenSaver", "/org/cinnamon/ScreenSaver")
iface = dbus.Interface(obje, "/org/cinnamon/ScreenSaver")
iface.Lock("Bu Ekran Kitlendiğinde Gösterilecek Olan Mesaj")

Sonraki yazılarda görüşmek üzere …

<– geri