~ubuntu-branches/ubuntu/utopic/gozerbot/utopic

« back to all changes in this revision

Viewing changes to debian/gozerbot/usr/lib/python2.5/site-packages/gozerbot/jabberpresence.py

  • Committer: Bazaar Package Importer
  • Author(s): Jeremy Malcolm
  • Date: 2009-09-14 09:00:29 UTC
  • mfrom: (1.1.4 upstream) (3.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20090914090029-uval0ekt72kmklxw
Tags: 0.9.1.3-3
Changed dependency on python-setuptools to python-pkg-resources
(Closes: #546435) 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# gozerbot/jabberpresence.py
2
 
#
3
 
#
4
 
 
5
 
""" jabber presence definition """
6
 
 
7
 
__copyright__ = 'this file is in the public domain'
8
 
 
9
 
from gozerbot.generic import rlog
10
 
from gozerbot.ircevent import makeargrest
11
 
import xmpp, time
12
 
 
13
 
class Jabberpresence(xmpp.Presence):
14
 
 
15
 
    """ jabber presence object """
16
 
 
17
 
    def __init__(self, msg=None):
18
 
        if msg:
19
 
            xmpp.Presence.__init__(self, node=msg)
20
 
        else:
21
 
            xmpp.Presence.__init__(self)
22
 
        self.jabber = True
23
 
        self.id = self.getID()
24
 
        rlog(1, 'jabberpresence', str(self))
25
 
 
26
 
    def toirc(self, bot):
27
 
        """ set ircevent compatible attributes """
28
 
        self.cmnd = 'Presence'
29
 
        self.conn = None
30
 
        self.prefix = ""
31
 
        self.postfix = ""
32
 
        self.target = ""
33
 
        self.arguments = []
34
 
        self.nick = str(self.getFrom().getResource())
35
 
        self.user = ""
36
 
        self.jid = self.getAttr('jid') or self.getFrom()
37
 
        self.ruserhost = self.jid
38
 
        self.userhost = str(self.jid)
39
 
        self.resource = self.getFrom().getResource()
40
 
        self.stripped = str(self.jid.getStripped())
41
 
        self.channel = str(self.getFrom().getStripped())
42
 
        self.printto = self.channel
43
 
        self.txt = ""
44
 
        self.origtxt = self.txt
45
 
        self.to = str(self.getTo())
46
 
        self.time = time.time()
47
 
        self.msg = None
48
 
        self.args = []
49
 
        self.rest = ' '.join(self.args)
50
 
        self.usercmnd = 0
51
 
        self.bot = bot
52
 
        self.sock = None
53
 
        self.inqueue = None
54
 
        self.queues = []
55
 
        self.printto = None
56
 
        self.speed = 5
57
 
        self.options = []
58
 
        self.groups = None
59
 
        self.type = self.getType()
60
 
        self.cc = ""
61
 
        self.alias = ""
62
 
        if self.type == 'groupchat':
63
 
            self.groupchat = True
64
 
        else:
65
 
            self.groupchat = False
66
 
        if self.txt:
67
 
            makeargrest(self)
68
 
        self.joined = False
69
 
        self.denied = False
70
 
 
71
 
    def copyin(self, jmsg):
72
 
        """ copy in another jabber presence """
73
 
        self.cmnd = str(jmsg.cmnd)
74
 
        self.conn = jmsg.conn
75
 
        self.prefix = str(jmsg.prefix)
76
 
        self.postfix = str(jmsg.postfix)
77
 
        self.target = str(jmsg.target)
78
 
        self.arguments = str(jmsg.arguments)
79
 
        self.nick = str(jmsg.nick)
80
 
        self.user = str(jmsg.user)
81
 
        if not jmsg.jid:
82
 
            self.jid = xmpp.JID(jmsg.userhost)
83
 
        else:
84
 
            self.jid = jmsg.jid
85
 
        self.ruserhost = str(jmsg.ruserhost)
86
 
        self.userhost = str(jmsg.userhost)
87
 
        self.resource = str(jmsg.resource)
88
 
        self.stripped = jmsg.stripped
89
 
        self.channel = str(jmsg.channel)
90
 
        self.printto = str(jmsg.printto)
91
 
        self.txt = str(jmsg.txt)
92
 
        self.origtxt = str(jmsg.origtxt)
93
 
        self.to = str(jmsg.to)
94
 
        self.time = jmsg.time
95
 
        self.msg = jmsg.msg
96
 
        self.args = list(jmsg.args)
97
 
        self.rest = str(jmsg.rest)
98
 
        self.usercmnd = jmsg.usercmnd
99
 
        self.bot = jmsg.bot
100
 
        self.sock = jmsg.sock
101
 
        self.inqueue = jmsg.inqueue
102
 
        self.queues = list(jmsg.queues)
103
 
        self.printto = jmsg.printto
104
 
        self.speed = int(jmsg.speed)
105
 
        self.options = jmsg.options
106
 
        self.groups = jmsg.groups
107
 
        self.groupchat = jmsg.groupchat
108
 
        self.cc = str(jmsg.cc)
109
 
        self.alias = str(jmsg.alias)
110
 
        self.joined = jmsg.joined
111
 
        self.denied = jmsg.denied
112
 
 
113
 
    def ircstr(self):
114
 
        """ return ircevent repr compatible string """
115
 
        return "cmnd=%s printto=%s arguments=%s nick=%s user=%s \
116
 
userhost=%s channel=%s txt=%s args=%s rest=%s speed=%s" % (self.cmnd, \
117
 
self.printto, self.arguments, self.nick, self.user, \
118
 
self.userhost, self.channel, self.txt, self.args, self.rest, self.speed)