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
#[email protected]
#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:'+ "[email protected]" + '>>'+ 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
[email protected]
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap