Example #1
0
    def __is_previous_msg_cmp_makeable(cls, user_id):
        try:
            previous_msg = models.Message.fetch_previous_msg(user_id)
            if len(previous_msg) == 0:
                return False

            w_toks = WordFormatter.SToks2WToks([previous_msg])

            message_normalizer = MessageNormalizer()
            df = message_normalizer(w_toks, None, from_preprocessor=False)

            target_pos = Nlp_util.pos_VERBs + Nlp_util.pos_ADVERBs + Nlp_util.pos_ADJECTIVEs
            target_word_df = df[df.pos.isin(target_pos)]

            if any(target_word_df.base_form.isin(WORD_LIST_FOR_CMP.word.tolist())):
                return True
            else:
                return False
        except:
            logging.exception('')
            return False
Example #2
0
    def __call__(self):
        try:
            previous_msg = models.Message.fetch_previous_msg(self.user.id)
            w_toks = WordFormatter.SToks2WToks([previous_msg])

            message_normalizer = MessageNormalizer()
            df = message_normalizer(w_toks,
                                    self.user.sender_id,
                                    from_preprocessor=False)
            text_kw_df_gengerator = TextKwDFGenerator()
            text_kw_df = text_kw_df_gengerator(df)

            sentiment_score_df_generator = SentimentScoreDFGenerator()
            sentiment_score_df = sentiment_score_df_generator(df, text_kw_df)

            responses = self.create_cmp(df, sentiment_score_df,
                                        self.response_data)
            self.response_data['regular'] = responses

            return self.response_data
        except:
            logging.exception('')
            return self.response_data