[ekg2-commit] ekg2: sample.py (NEW) [darkjames]
CVS commit
cvs w toxygen.net
Czw, 3 Maj 2007, 15:38:28 CEST
Module name: ekg2
Changes by: darkjames 2007-05-03 15:38:26
Added files:
sample.py
Log message:
sample.py from plugins/python/doc.xml
--- NEW FILE: sample.py ---
import ekg
import time
def status_handler(session, uid, status, desc):
for sesja in ekg.sessions():
if sesja.connected():
ekg.echo("sesja '%s' poĹÄ
czona" % (name,))
ekg.echo("status: "+sesja['status'])
else:
ekg.echo("sesja '%s' nie jest poĹÄ
czona" % (name,))
ekg.echo("DostaĹem status!")
ekg.echo("Sesja : "+session)
ekg.echo("UID : "+uid)
ekg.echo("Status: "+status)
if desc:
ekg.echo("Opis : "+desc)
sesja = ekg.session_get(session)
ekg.echo('Lista userĂłw sesji: '+", ".join(sesja.users()))
user = sesja.user_get(uid)
if user.last_status:
ekg.echo(str(user.last_status))
stat, des = user.last_status
ekg.echo("Ostatni status: "+stat)
if user.last_status[1]:
ekg.echo("Ostatni opis : "+des)
else:
ekg.echo("Nie ma poprzedniego stanu - pewnie dopiero siÄ ĹÄ
czymy...")
ekg.echo("IP: "+user.ip)
ekg.echo("Grupy: "+", ".join(user.groups()))
if status == ekg.STATUS_AWAY:
ekg.echo("Chyba go nie ma...")
if status == ekg.STATUS_XA:
ekg.echo("Chyba bardzo go nie ma, to na grzyb mi taki status?. PoĹykam. *Ĺlurp*")
return 0
return 1
def message_handler(session, uid, type, text, sent_time, ignore_level):
ekg.debug("[test script] some debug\n")
ekg.echo("DostaĹem wiadomoĹÄ!")
ekg.echo("Sesja : "+session)
ekg.echo("UID : "+uid)
if type == ekg.MSGCLASS_MESSAGE:
ekg.echo("Typ : msg")
elif type == ekg.MSGCLASS_CHAT:
ekg.echo("Typ : chat")
ekg.echo("Czas : "+time.strftime("%a, %d %b %Y %H:%M:%S %Z", time.gmtime(sent_time)))
ekg.echo("Ign : "+str(ignore_level))
ekg.echo("TxtLen: "+str(len(text)))
if len(text) == 13:
ekg.echo("Oj, ale pechowa liczba, nie odbieram")
return 0
return 1
def own_message_handler(session, target, text):
ekg.debug("[test script] some debug\n")
ekg.echo("WysyĹam wiadomoĹÄ!")
ekg.echo("Sesja : "+session)
ekg.echo("Target: "+target)
ekg.echo("TxtLen: "+str(len(text)))
return 1
def connect_handler(session):
ekg.echo("PoĹÄ
czono! Ale super! MoĹźna gadaÄ!")
ekg.echo("Sesja : "+session)
if session[:3] == 'irc':
struct = time.gmtime()
if struct[3] >= 8 and struct[3] < 17:
ekg.echo('Ĺadnie to tak ircowaÄ w pracy? ;)')
sesja = ekg.session_get(session)
if sesja.connected():
ekg.echo('PoĹÄ
czony!')
else:
ekg.echo('W tym miejscu jeszcze nie poĹÄ
czony')
ekg.echo('Lista userĂłw sesji: '+", ".join(sesja.users()))
# def keypress(key):
# ekg.echo('nacisnales #"+ str(key));
def disconnect_handler(session):
ekg.echo("Ĺo, sesja %s nam padĹa" % (session,))
ekg.echo("WysyĹamy smsa Ĺźe nam cuĹ padĹo...")
def foo_command(name, args):
ekg.echo("WywoĹane polecenie foo!")
def varchange(name, newval):
ekg.echo("Zmienna %s zmieniĹa wartoĹÄ na %s" % (name, newval) )
ekg.command_bind('foo', foo_command)
ekg.handler_bind('protocol-message-received', message_handler)
ekg.handler_bind('protocol-message-sent', own_message_handler)
ekg.handler_bind('protocol-status', status_handler)
ekg.handler_bind('protocol-connected', connect_handler)
ekg.handler_bind('protocol-disconnected', disconnect_handler)
ekg.handler_bind('ui-keypress', keypress)
ekg.variable_add('zmienna_testowa', 'wartoĹÄ', varchange)
Więcej informacji o liście dyskusyjnej ekg2-commit