def get_reply_data(self, keyword, kw_type=word_type.TEXT):
"""Return none if nothing found, else return result in pair_data class"""
data_result = self.find_one({
pair_data.KEYWORD: keyword,
pair_data.PROPERTIES + '.' + pair_data.DISABLED: False,
pair_data.PROPERTIES + '.' + pair_data.KEYWORD_TYPE: int(kw_type)
}, sort=[(pair_data.PROPERTIES + '.' + pair_data.PINNED, pymongo.DESCENDING),
(pair_data.SEQUENCE, pymongo.DESCENDING)])
if data_result is not None:
data_result = pair_data(data_result)
if data_result.last_call is None or data_result.last_call < datetime.now() - timedelta(seconds=self._repeat_call_cd_secs):
self.update({ pair_data.SEQUENCE: data_result.seq_id }, {
'$inc': { pair_data.STATISTICS + '.' + pair_data.CALLED_COUNT: 1 },
'$set': { pair_data.STATISTICS + '.' + pair_data.LAST_CALL: datetime.now() }
})
return pair_data(data_result)
评论列表
文章目录