[Linux-programlama] SquirrelMail Takvim (Calendar) eklentisi için Python ile yazılmış hatırlatıcı

---------

[Linux-programlama] SquirrelMail Takvim (Calendar) eklentisi için Python ile yazılmış hatırlatıcı

From: Mucibirahman Ä°LBUÄžA <mucip.ilbuga_at_gmail.com>
Date: Mon, 16 Mar 2009 20:11:44 +0200
Message-ID: <49BE9660.7000602@gmail.com>

Merhabalar,
Squirrelmail'in Takvim (Calendar) eklentisini Hatýrlatýcý (reminder)
olarak kullanýlabilmesi için Python ile bir koda yazdým. Programlarý
netde sunacak herhangi bir yerim olmadýðý için mesaj olarak göndermek
camiaya daha faydalý olur diye düþündüm...

Programý her dakikada çalýþmak üzere cron'a eklemeniz gerekiyor. Zaten
Takvim eklentisinde kullanýlan zaman deðerleri 5'in katlarý olarak
verilebildiðinden program her 5 dakikada bir tüm takvim kayýtlarýný
kontrol ediyor ve anlýk zaman ile uyuþan takvim kayýtlarýný oluþturan
kiþiye e-posta gönderiyor... Umarým faydasý olur... Yeni fikirlere açýðým :)

*********************************************************
#!/usr/bin/python
# -*- coding: utf8 -*-

#Mucibirahman ÝLBUÐA
#mucip.ilbuga_at_gmail.com
#16/03/2009

import string, os, codecs, fnmatch, time, random

def IslemYap(GelenDosya,Kime):
    global AnlikZaman
    print GelenDosya
    f=open(GelenDosya,"r")
    for line in f:
    Okunan=line
    Bilgi=Okunan.split("|")
    Tarih=Bilgi[0]
    TarihAy=Tarih[0:2]
    TarihGun=Tarih[2:4]
    TarihYil=Tarih[4:8]
    Saat=Bilgi[1]
    SaatSaat=Saat[0:2]
    SaatDakika=Saat[2:4]
    Sure=Bilgi[2]
    Durum=Bilgi[3]
    Baslik=Bilgi[4]
    Aciklama=Bilgi[5]
    #********************************
    t=(int(TarihYil), int(TarihAy),
int(TarihGun),int(SaatSaat),int(SaatDakika),0,0,0,0)
    BaslangicZaman=time.mktime(t)
    BitisZaman=BaslangicZaman+(int(Sure)*60)
   
    if BaslangicZaman<=AnlikZaman and AnlikZaman<=BitisZaman:
        Sayac=str(random.random())
        Sayac=Sayac[-5:]
        HedefDosya="/root/GidenPosta"+ Sayac + ".txt"
        cmd ='echo To:'+ Kime + '>'+ HedefDosya
        os.system(cmd)
        cmd ='echo From:'+ "HATIRLATMA_at_XXXYYY.com" + '>>'+ HedefDosya
        os.system(cmd)
        cmd ='echo Subject:'+ Baslik + " Konulu Hatirlatmaniz var!" +
'>>'+ HedefDosya
        os.system(cmd)
        cmd ='echo Hatirlatma Tarihi: '+ TarihGun + "/" + TarihAy + "/"
+ TarihYil + '>>' + HedefDosya
        os.system(cmd)
        cmd ='echo Hatirlatma Zamani: '+ SaatSaat + ':' + SaatDakika +
'>>'+ HedefDosya
        os.system(cmd)
        cmd ='echo Hatirlatma Suresi: '+ Sure + ' dakika >>'+ HedefDosya
        os.system(cmd)
        cmd ='echo
----------------------------------------------------------- >>'+ HedefDosya
        os.system(cmd)
        cmd ='echo '+ Aciklama + '>>'+ HedefDosya
        os.system(cmd)
        cmd='cat ' + HedefDosya + ' |/var/qmail/bin/qmail-inject'
        os.system(cmd)
        cmd='rm -f ' + HedefDosya
        os.system(cmd)
           
   
    f.close()
       
   
def Basla():
    DizinAdi="/var/lib/squirrelmail/prefs"
    Yil =time.strftime("%Y",time.localtime())
    Kriter = "*." + Yil + ".cal"
    os.listdir(DizinAdi)
    dirname = DizinAdi
    os.listdir(dirname)
    for file in os.listdir(DizinAdi):
    if fnmatch.fnmatch(file, Kriter):
        Kime=file[:-9]
            IslemYap(DizinAdi + '/' + file,Kime)

AnlikZaman = time.time()
AnlikDakika = int(time.strftime("%M",time.localtime()))

if AnlikDakika%5 == 0:
    Basla()

*********************************************************

-- 
Kolay gelsin,
Mucip:)
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Sat 14 Mar 2009 - 18:56:04 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.