Skip to main content

xchat-exaile eklentisi

XChat Resim Göndericisinden sonra ikinci eklentimi de yaptım. Exaile‘de çalan şarkı türkü ne varsa bulunduğunuz kanalda gösteriyor.

#!/usr/bin/python
# -*- coding: utf-8 -*-

import xchat
import commands
import random

__module_name__ = "Exaile"
__module_version__ = "0.1"
__module_description__ = "Exailede çalan şarkıyı türküyü şeyeder."

def exa(word, word_eol, userdata):
        turkucu = commands.getoutput("exaile --get-artist")
        album = commands.getoutput("exaile --get-album")
        parca = commands.getoutput("exaile --get-title")

        xchat.command("me %s - %s albümünden "%s" dinliyor. (Exaile)" % (turkucu, album, parca))

xchat.hook_command('exa', exa)
xchat.prnt(__module_name__ + ' v' + __module_version__ + ' loaded..')

Bu dosyayı bir yere kaydedip xchat’te XChat » Load Plugin or Script menüsünden dosyayı göstererek çalıştırabilirsiniz. /exa komutu ile o an dinlediğiniz şeyi gösterirsiniz.

XChat Resim Göndericisi

IRC’ye şipşak ekran görüntüsü göndermek için bir xchat eklentisi yaptım. Aşağıda:

#!/usr/bin/python
from os import system
import xchat, httplib, urllib, base64, sys

__module_name__ = "Resim Gonderici"
__module_version__ = "0.1"
__module_description__ = "Ekran goruntusunu gonderir."

def ss(words, word_eol, userdata):
        system("import /tmp/xchat-ss.jpg")
        cnn     = httplib.HTTPConnection('s.tugrul.org:80')
        gonder  = cnn.request('POST',
                                '/r/remoteUpload.php',
                                urllib.urlencode({'image': base64.b64encode(open('/tmp/xchat-ss.jpg').read())}),
                                {'Content-type': 'application/x-www-form-urlencoded', 'Accept': 'text:plain'})
        xchat.command("me screenshot: " + cnn.getresponse().read())
        cnn.close
xchat.hook_command("ss", ss, help="/ss")

Bu dosyayı bir yere kaydedip xchat’te XChat » Load Plugin or Script menüsünden dosyayı göstererek çalıştırabilirsiniz.
/ss komutunu verdikten sonra fare imleci + şeklini alır. Göndermek istediğiniz alanı seçip bırakarak komutu tamamlarsınız. Alan seçmeyip yalnızca tıklarsanız, seçtiğiniz pencerenin tümünü gönderir.
Sonucu /me [link] şeklinde komutu verdiğiniz IRC penceresine yazar.

İki önemli şey:
* import komutunun çalışması için imagemagick paketinin yüklü olması gerekir.
* Resimler 3 saatte bir rm -f komutuyla silinir. Bu yüzden yalnızca anlık işleriniz için kullanın.