author | franky |
Sat, 18 May 2019 20:41:52 +0200 | |
changeset 2347 | db8de1b464d3 |
parent 1147 | fcef5d34b7d4 |
permissions | -rwxr-xr-x |
1147
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
1 |
#!/usr/bin/python |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
2 |
# Version 0.05 |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
3 |
# |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
4 |
# Copyright (C) 2007 Adam Wolk "Mulander" <netprobe@gmail.com> |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
5 |
# Slightly updated by Mikael Berthe |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
6 |
# |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
7 |
# To use this script, set the "events_command" option to the path of |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
8 |
# the script (see the mcabberrc.example file for an example) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
9 |
# |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
10 |
# This script is provided under the terms of the GNU General Public License, |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
11 |
# see the file COPYING in the root mcabber source directory. |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
12 |
# |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
13 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
14 |
import sys |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
15 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
16 |
#CMD_MSG_IN="/usr/bin/play /home/mulander/sound/machine_move.ogg" |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
17 |
CMD_MSG_IN="" |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
18 |
SHORT_NICK=True |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
19 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
20 |
if len(sys.argv) == 5: |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
21 |
event,arg1,arg2,filename = sys.argv[1:5] |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
22 |
else: |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
23 |
event,arg1,arg2 = sys.argv[1:4] |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
24 |
filename = None |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
25 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
26 |
if event == 'MSG' and arg1 == 'IN': |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
27 |
import pynotify,os,locale |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
28 |
encoding = (locale.getdefaultlocale())[1] |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
29 |
msg = 'sent you a message.' |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
30 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
31 |
if SHORT_NICK and '@' in arg2: |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
32 |
arg2 = arg2[0:arg2.index('@')] |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
33 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
34 |
if filename is not None: |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
35 |
f = file(filename) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
36 |
msg = f.read() |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
37 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
38 |
pynotify.init('mcnotify') |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
39 |
msgbox = pynotify.Notification(unicode(arg2, encoding),unicode(msg, encoding)) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
40 |
msgbox.set_timeout(3000) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
41 |
msgbox.set_urgency(pynotify.URGENCY_LOW) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
42 |
msgbox.show() |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
43 |
if (CMD_MSG_IN): |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
44 |
os.system(CMD_MSG_IN + '> /dev/null 2>&1') |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
45 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
46 |
if filename is not None and os.path.exists(filename): |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
47 |
os.remove(filename) |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
48 |
pynotify.uninit() |
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
49 |
|
fcef5d34b7d4
Add a few sample event scripts
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
50 |
# vim:set noet sts=8 sw=8: |