コード例 #1
0
ファイル: cmddo.py プロジェクト: xixitalk/xixiguys
def CmdJoinDo(from_name,msg):
	if funcs.isInBalckList(from_name):
		return 'you are in black list,contact administrator'
	if funcs.isHavePassword() and not funcs.isInWhiteList(from_name):
		if GetCmdNum(msg) != 3:
			if not funcs.isInGroupUser(from_name):
				ret_str = '%s was trying to join group' % from_name
				funcs.sendMsgToAdminUsers(ret_str)
			return 'ERROR:this group need password!'
		passwd = GetCmdByNum(msg,3)
		if not funcs.checkPassword(passwd):
			if not funcs.isInGroupUser(from_name):
				ret_str = '%s was trying to join group' % from_name
				funcs.sendMsgToAdminUsers(ret_str)
			return 'ERROR:group password not correct!'

	if GetCmdNum(msg) < 2:
		return 'need nickname'
	nickname = GetCmdByNum(msg,2)
	user = funcs.getUserByNickname(nickname)

	if user:
		return 'nickname:%s is taken by somebody' % nickname
	user = funcs.getUserByName(from_name)
	if user:
		return 'you have been joined already'
	funcs.userJoin(from_name,nickname)
	ret_msg = u'welcome %s joined this group' % nickname
	funcs.Broadcast(ret_msg)
	return 'you join successfully'
コード例 #2
0
ファイル: cmddo.py プロジェクト: jn7163/xixiguys
def CmdJoinDo(from_name, msg):
    if funcs.isInBalckList(from_name):
        return 'you are in black list,contact administrator'
    if funcs.isHavePassword() and not funcs.isInWhiteList(from_name):
        if GetCmdNum(msg) != 3:
            if not funcs.isInGroupUser(from_name):
                ret_str = '%s was trying to join group' % from_name
                funcs.sendMsgToAdminUsers(ret_str)
            return 'ERROR:this group need password!'
        passwd = GetCmdByNum(msg, 3)
        if not funcs.checkPassword(passwd):
            if not funcs.isInGroupUser(from_name):
                ret_str = '%s was trying to join group' % from_name
                funcs.sendMsgToAdminUsers(ret_str)
            return 'ERROR:group password not correct!'

    if GetCmdNum(msg) < 2:
        return 'need nickname'
    nickname = GetCmdByNum(msg, 2)
    user = funcs.getUserByNickname(nickname)

    if user:
        return 'nickname:%s is taken by somebody' % nickname
    user = funcs.getUserByName(from_name)
    if user:
        return 'you have been joined already'
    funcs.userJoin(from_name, nickname)
    ret_msg = u'welcome %s joined this group' % nickname
    funcs.Broadcast(ret_msg)
    return 'you join successfully'
コード例 #3
0
ファイル: xmpp_msg.py プロジェクト: xixitalk/xixiguys
 def post(self):
     # sender = self.request.get('from').split('/')[0]
     sender = xmpp_api.get_mail_name(self.request.get("from")).lower()
     if funcs.isInGroupUser(sender):
         funcs.delUserFromOnlineUserList(sender)
     else:
         logging.error("error sender %s incoming offline" % sender)
コード例 #4
0
ファイル: xmpp_msg.py プロジェクト: jn7163/xixiguys
 def post(self):
     #sender = self.request.get('from').split('/')[0]
     sender = xmpp_api.get_mail_name(self.request.get('from')).lower()
     if funcs.isInGroupUser(sender):
         funcs.delUserFromOnlineUserList(sender)
     else:
         logging.error('error sender %s incoming offline' % sender)
コード例 #5
0
ファイル: cmddiv.py プロジェクト: xixitalk/xixiguys
def MsgCheckCmd(from_name,msg):
	if msg[0:1] not in config.CMD_PREFIX:
		return 'NOTCMD'
	if msg[1:5] != "join" and msg[1:5] != "help" and not funcs.isInGroupUser(from_name):
		return 'u r NOT in this group,pls join first,see more http://is.gd/xixiguys_start'
	msg = msg.strip()
	cmdret =  CmdProcess(from_name,msg)

	if not cmdret:
		if msg[0:1] in config.CMD_PREFIX:
			return 'error command'
		else:
			return 'NOTCMD'
	else:
		return cmdret
コード例 #6
0
def MsgCheckCmd(from_name, msg):
    if msg[0:1] not in config.CMD_PREFIX:
        return 'NOTCMD'
    if msg[1:5] != "join" and msg[1:5] != "help" and not funcs.isInGroupUser(
            from_name):
        return 'u r NOT in this group,pls join first,see more http://is.gd/xixiguys_start'
    msg = msg.strip()
    cmdret = CmdProcess(from_name, msg)

    if not cmdret:
        if msg[0:1] in config.CMD_PREFIX:
            return 'error command'
        else:
            return 'NOTCMD'
    else:
        return cmdret
コード例 #7
0
ファイル: xmpp_msg.py プロジェクト: xixitalk/xixiguys
 def post(self):
     # sender = self.request.get('from').split('/')[0]
     sender = xmpp_api.get_mail_name(self.request.get("from")).lower()
     if funcs.isInGroupUser(sender):
         funcs.addUserToOnlineUserList(sender)
コード例 #8
0
ファイル: xmpp_msg.py プロジェクト: xixitalk/xixiguys
            logging.error("Invalid XMPP request: %s", e[0])
            logging.error(self.request.body)
            logging.error(self.request.POST)
            return
        except:
            # from_name=m2ggg_core.get_mail_name(self.request.get('from')).lower()
            # m2ggg_core.activeresouce_record(from_name,4);
            from_name = self.request.get("from")
            logging.error(sys.exc_info()[0])
            raise "under attack:" + from_name.encode("UTF-8")
            return
        from_name = xmpp_api.get_mail_name(self.request.get("from")).lower()
        msgbody = funcs.MsgBlankClean(message.body)
        e = cmddiv.MsgCheckCmd(from_name, msgbody)
        if e == "NOTCMD":
            if not funcs.isInGroupUser(from_name):
                message.reply(
                    "u r NOT in this group,pls join first,see more http://code.google.com/p/twpost/wiki/xixiguys_start"
                )
                return
            if len(msgbody) > 1024:
                message.reply("error:msg too long(<=1024)")
                return
            e = funcs.broastcastMsg(msgbody, from_name, False)
            funcs.updateUserCount(from_name)
            # funcs.Add2OnlineList(from_name)
        else:
            message.reply(str(e))


class OnlineHandler(webapp.RequestHandler):
コード例 #9
0
ファイル: xmpp_msg.py プロジェクト: jn7163/xixiguys
 def post(self):
     #sender = self.request.get('from').split('/')[0]
     sender = xmpp_api.get_mail_name(self.request.get('from')).lower()
     if funcs.isInGroupUser(sender):
         funcs.addUserToOnlineUserList(sender)
コード例 #10
0
ファイル: xmpp_msg.py プロジェクト: jn7163/xixiguys
            logging.error("Invalid XMPP request: %s", e[0])
            logging.error(self.request.body)
            logging.error(self.request.POST)
            return
        except:
            #from_name=m2ggg_core.get_mail_name(self.request.get('from')).lower()
            #m2ggg_core.activeresouce_record(from_name,4);
            from_name = self.request.get('from')
            logging.error(sys.exc_info()[0])
            raise "under attack:" + from_name.encode("UTF-8")
            return
        from_name = xmpp_api.get_mail_name(self.request.get('from')).lower()
        msgbody = funcs.MsgBlankClean(message.body)
        e = cmddiv.MsgCheckCmd(from_name, msgbody)
        if e == 'NOTCMD':
            if not funcs.isInGroupUser(from_name):
                message.reply(
                    'u r NOT in this group,pls join first,see more http://code.google.com/p/twpost/wiki/xixiguys_start'
                )
                return
            if len(msgbody) > 1024:
                message.reply('error:msg too long(<=1024)')
                return
            e = funcs.broastcastMsg(msgbody, from_name, False)
            funcs.updateUserCount(from_name)
            #funcs.Add2OnlineList(from_name)
        else:
            message.reply(str(e))


class OnlineHandler(webapp.RequestHandler):