forked from littlecodersh/ItChat
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
210 additions
and
34 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
#!/usr/bin/python | ||
# -*- coding: UTF-8 -*- | ||
# coding:utf-8 | ||
|
||
|
||
class Core(object): | ||
def __init__(self): | ||
self.gGroupMsgBuffer = {} | ||
return | ||
def receive(self, xMsg): | ||
# 1. 找到群 | ||
# 2. 对话记录到群对话记录里 | ||
key = xMsg['GroupUserName'] | ||
if not self.gGroupMsgBuffer.has_key(key) : | ||
self.gGroupMsgBuffer[key] = [xMsg] | ||
else : | ||
self.gGroupMsgBuffer[key].append(xMsg) | ||
|
||
print self.gGroupMsgBuffer | ||
|
||
return | ||
|
||
def process(self, itchat): | ||
result = {"msg" : "Local module handler"} | ||
while True self.gGroupMsgBuffer: | ||
(groupUserName, batchMsg) = self.gGroupMsgBuffer.popitem() | ||
batch_process_group_msg(itchat, groupUserName, batchMsg) | ||
|
||
|
||
def batch_process_group_msg(itchat, groupUserName, batchMsg) : | ||
ep_resp = {"msg" : "Local module handler"} | ||
|
||
print "batch process group %s, which has %d msg" % (groupUserName, len(batchMsg)) | ||
|
||
if None != ep_resp : | ||
if ep_resp.has_key('blacklist') and ep_resp['blacklist']: | ||
update_local_black_list(ep_resp['blacklist']) | ||
chatroom = itchat.search_chatrooms(userName = groupUserName) | ||
if chatroom: | ||
remove_blacklist_member(chatroom, ep_resp['blacklist']) | ||
|
||
if ep_resp.has_key('msg') and ep_resp['msg'] : | ||
itchat.send(u'%s' % (ep_resp['msg']), toUserName = groupUserName) | ||
|
||
if ep_resp.has_key('image') and ep_resp['image'] : | ||
print "send image to QQ", ep_resp['image'] | ||
# msg.user.send_image(ep_resp['image']); | ||
|
||
|
||
|
||
def new_instance(): | ||
newInstance = Core() | ||
return newInstance | ||
|
||
originInstance = new_instance() | ||
|
||
process = originInstance.process |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
#!/usr/bin/python | ||
# -*- coding: UTF-8 -*- | ||
# coding:utf-8 | ||
|
||
|
||
from . import content | ||
|
||
class Core(object): | ||
def __init__(self): | ||
return | ||
def send(self, msg, toUserName): | ||
print "[to %s ] : %s" % (toUserName, msg) | ||
return | ||
def delete_member_from_chatroom(self, toUserName, users): | ||
print "delete_member_from_chatroom" | ||
return | ||
def search_chatrooms(self, userName) : | ||
print "search chatroom %s" % userName | ||
return None | ||
def msg_register(self, types, isGroupChat) : | ||
print "msg register" | ||
def _msg_register(fn): | ||
return fn | ||
return _msg_register | ||
|
||
|
||
|
||
def new_instance(): | ||
newInstance = Core() | ||
return newInstance | ||
|
||
originInstance = new_instance() | ||
|
||
search_chatrooms = originInstance.search_chatrooms | ||
delete_member_from_chatroom = originInstance.delete_member_from_chatroom | ||
send = originInstance.send | ||
msg_register = originInstance.msg_register |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
TEXT = 'Text' | ||
MAP = 'Map' | ||
CARD = 'Card' | ||
NOTE = 'Note' | ||
SHARING = 'Sharing' | ||
PICTURE = 'Picture' | ||
RECORDING = VOICE = 'Recording' | ||
ATTACHMENT = 'Attachment' | ||
VIDEO = 'Video' | ||
FRIENDS = 'Friends' | ||
SYSTEM = 'System' | ||
|
||
INCOME_MSG = [TEXT, MAP, CARD, NOTE, SHARING, PICTURE, | ||
RECORDING, VOICE, ATTACHMENT, VIDEO, FRIENDS, SYSTEM] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters