1
|
|
|
|
2
|
|
|
|
3
|
|
|
class Message(object): |
4
|
|
|
msgtype = 'message' |
5
|
|
|
|
6
|
|
|
def __init__(self): |
7
|
|
|
self.args = dict() |
8
|
|
|
self.args['safe'] = 0 |
9
|
|
|
self.args['msgtype'] = self.msgtype |
10
|
|
|
|
11
|
|
|
def setreceiver(self, **kwargs): |
12
|
|
|
self.args.update(kwargs) |
13
|
|
|
|
14
|
|
|
def setagentid(self, agentid): |
15
|
|
|
self.args['agentid'] = agentid |
16
|
|
|
|
17
|
|
|
def setmsgsafe(self): |
18
|
|
|
self.args['safe'] = 1 |
19
|
|
|
|
20
|
|
|
|
21
|
|
|
class TextMessage(Message): |
22
|
|
|
msgtype = 'text' |
23
|
|
|
|
24
|
|
|
def setcontent(self, msg): |
25
|
|
|
self.args[self.msgtype] = {"content": msg} |
26
|
|
|
|
27
|
|
|
|
28
|
|
|
class ResourceMessage(Message): |
29
|
|
|
def setcontent(self, mediaid): |
30
|
|
|
self.args[self.msgtype] = {"media_id": mediaid} |
31
|
|
|
|
32
|
|
|
|
33
|
|
|
class ImageMessage(ResourceMessage): |
34
|
|
|
msgtype = 'image' |
35
|
|
|
|
36
|
|
|
|
37
|
|
|
class VoiceMessage(ResourceMessage): |
38
|
|
|
msgtype = 'voice' |
39
|
|
|
|
40
|
|
|
|
41
|
|
|
class FileMessage(ResourceMessage): |
42
|
|
|
msgtype = 'file' |
43
|
|
|
|
44
|
|
|
|
45
|
|
|
class VideoMessage(Message): |
46
|
|
|
msgtype = 'video' |
47
|
|
|
|
48
|
|
|
def setcontent(self, mediaid, title, description): |
49
|
|
|
self.args[self.msgtype] = {'media_id': mediaid, 'title': title, 'description': description} |
50
|
|
|
|
51
|
|
|
|
52
|
|
|
class NewsMessage(Message): |
53
|
|
|
msgtype = 'news' |
54
|
|
|
|
55
|
|
|
def setcontent(self, *articles): |
56
|
|
|
self.args[self.msgtype] = {"articles": articles} |
57
|
|
|
|
58
|
|
|
|
59
|
|
|
class MpNewsMessage(Message): |
60
|
|
|
msgtype = 'mpnews' |
61
|
|
|
|
62
|
|
|
def setcontent(self, *articles): |
63
|
|
|
self.args[self.msgtype] = {"articles": articles} |
64
|
|
|
|
65
|
|
|
|
66
|
|
|
class MpNewsResourceMessage(ResourceMessage): |
67
|
|
|
msgtype = 'mpnews' |
68
|
|
|
|