pyPhonelog – laden mehrerer Instanzen verhindern

Thursday, 17. September 2009

wer shr-unstable bzw. mein image welches auf diesem basiert verwendet (link) hat sicherlich schon bemerkt dass “notifier” bei einem missed call auf klick den phonelog öffnet.. und zwar jedesmal einen neuen, selbst wenn dieser bereits offen ist..

da der phonelog seine tabellen refreshed wenn man zwischen diesen hin und her klickt ist aber ein langsamer neustart der applikation völlig zeitraubend und vorallem überflüssig!!  wie bekomm ich “phonelog” dazu sich nicht mehrmals zu starten? so zb.: —>

import os
from subprocess import Popen, PIPE

pids = Popen("/bin/ps -e x | /bin/grep /usr/bin/phonelog | /bin/grep -v grep | /bin/sed -e 's/.*bin.//'", shell=True, stdout=PIPE).communicate()[0].splitlines().count("phonelog")

if pids == 2:
 pidoflog = os.getpid()
 pidoflog = str(pidoflog)
 print "pyphonelog is already running!"
 os.system("kill " +pidoflog)

diesen code einfach ganz zu beginn der datei /usr/bin/phonelog einfügen .. das wars.. (vorsicht mit den indents.. da ist python happig)

eine version meiner “phonelog” datei gibt es hier : phonelog
diese datei müsste ausführbar gemacht und in das verzeichnis /usr/bin verschoben werden.

viel spass allen neo fans mit dem freien telefon!!

Comments are closed.