示例#1
0
 def get_group3(message):
     mongodb.update_byid(uid, {'ready': 0}, 'users')
     global msg2, fgroup3
     bins = [0, 19, 21, 23, 33, 41, 101]
     fgroup3 = 0
     transex(message)
     if msg2 == 'error':
         remessage = TextSendMessage(text='資料輸入錯誤')
         line_bot_api.reply_message(event.reply_token, remessage)
     else:
         try:
             group = MTF.insert_trans(msg2, bins)
             if msg2[1] == 0:
                 sug = MTF.tar_recommand(df_group_cb_res, 'group', group,
                                         ['category', 'brand'])
             elif msg2[1] == 1:
                 sug = pd.read_csv(path[1] + res_file2[2] + '.csv',
                                   encoding='utf8').head(3)
             remessage = TextSendMessage(text='推薦%s歲%s客戶的商品:\n%s-%s\n%s-%s\n%s-%s' % \
                                         (msg2[0], sex, sug.brand[sug.index[0]], sug.category[sug.index[0]], \
                                          sug.brand[sug.index[1]], sug.category[sug.index[1]], \
                                          sug.brand[sug.index[2]], sug.category[sug.index[2]] ))
             line_bot_api.reply_message(event.reply_token, remessage)
         except:
             errorinput()
示例#2
0
 def choose_group():
   # 設定使用者下一句話要群廣播
   mongodb.update_byid(uid,{'ready':1},'users')
   remessage = TextSendMessage(text="請輸入客戶年齡及性別(age, gender)\n女性請填'0',男性請填'1'\n如女性25歲=25,0")
   line_bot_api.reply_message(
                   event.reply_token,
                   remessage)
示例#3
0
 def choose_id():
   # 設定使用者下一句話要群廣播
   mongodb.update_byid(uid,{'ready':1},'users')
   remessage = TextSendMessage(text='請輸入客戶編號')
   line_bot_api.reply_message(
                   event.reply_token,
                   remessage)
示例#4
0
 def postscore(message):
     mongodb.update_byid(uid, {'ready': 0}, 'users')
     message = int(message)
     text = corwler.google(message)
     # 包裝訊息
     remessage = TextSendMessage(text=text)
     # 回應使用者
     line_bot_api.reply_message(event.reply_token, remessage)
示例#5
0
 def get_id2(message):
     mongodb.update_byid(uid, {'ready': 0}, 'users')
     global msg1, fid2
     fid2 = 0
     msg1 = str(message)
     if msg1 in id_list:
         remessage = TextSendMessage(text='推薦客戶編號%s的類別:\n%s、%s、%s' % \
                                     (msg1, df_id_cate_res.loc[msg1][0], df_id_cate_res.loc[msg1][1], \
                                      df_id_cate_res.loc[msg1][2]) )
         line_bot_api.reply_message(event.reply_token, remessage)
     else:
         remessage = TextSendMessage(text='無此客戶')
         line_bot_api.reply_message(event.reply_token, remessage)
示例#6
0
 def get_id3(message):
     mongodb.update_byid(uid, {'ready': 0}, 'users')
     global msg1, fid3
     fid3 = 0
     msg1 = str(message)
     if msg1 in id_list:
         remessage = TextSendMessage(text='推薦客戶編號%s的商品:\n%s-%s\n%s-%s\n%s-%s' % \
                                     (msg1, eval(df_id_cb_res.loc[msg1][0])[1], eval(df_id_cb_res.loc[msg1][0])[0], \
                                      eval(df_id_cb_res.loc[msg1][1])[1], eval(df_id_cb_res.loc[msg1][1])[0], \
                                      eval(df_id_cb_res.loc[msg1][2])[1], eval(df_id_cb_res.loc[msg1][2])[0]) )
         line_bot_api.reply_message(event.reply_token, remessage)
     else:
         remessage = TextSendMessage(text='無此客戶')
         line_bot_api.reply_message(event.reply_token, remessage)
示例#7
0
def handle_message(event):
    '''
    當收到使用者訊息的時候
    '''
    profile = line_bot_api.get_profile(event.source.user_id)
    name = profile.display_name
    uid = profile.user_id
    message = event.message.text

    print(name)
    print(uid)
    print(message)

    if mongodb.get_ready(uid, 'users') == 1:
        mongodb.update_byid(uid, {'ready': 0}, 'users')
        casttext = name + ' 對大家說: ' + message
        remessage = TextSendMessage(text=casttext)
        userids = mongodb.get_all_userid('users')
        line_bot_api.multicast(userids, remessage)
        return 0

    if message == '群體廣播':
        # 設定使用者下一句話要群廣播
        mongodb.update_byid(uid, {'ready': 1}, 'users')
        remessage = TextSendMessage(text='請問要廣播什麼呢?')
        line_bot_api.reply_message(event.reply_token, remessage)
        return 0

    if re.search('Hi|hello|你好|ha', message, re.IGNORECASE):
        line_bot_api.reply_message(event.reply_token,
                                   TextSendMessage(text=event.message.text))

        return 0

    if re.search('新聞|news', event.message.text, re.IGNORECASE):
        dic = corwler.udn_news()

        columns = []
        for i in range(0, 3):
            carousel = CarouselColumn(
                thumbnail_image_url=dic[i]['img'],
                title=dic[i]['title'],
                text=dic[i]['summary'],
                actions=[URITemplateAction(label='點我看新聞', uri=dic[i]['link'])])
            columns.append(carousel)

        remessage = TemplateSendMessage(
            alt_text='Carousel template',
            template=CarouselTemplate(columns=columns))

        line_bot_api.reply_message(event.reply_token, remessage)
        return 0

    if re.search('Dcard|dcard', event.message.text, re.IGNORECASE):
        text = corwler.Dcard()
        line_bot_api.reply_message(event.reply_token,
                                   TextSendMessage(text=text))
        return 0

    if message == 'googlemap':
        # 取得最新評價
        text = corwler.google()
        # 包裝訊息
        remessage = TextSendMessage(text=text)
        # 回應使用者
        line_bot_api.reply_message(event.reply_token, remessage)
        return 0

    line_bot_api.reply_message(event.reply_token,
                               TextSendMessage(text=event.message.text))
    return 0
示例#8
0
文件: app.py 项目: Cobra30621/sheila
def handle_message(event):
    '''
    當收到使用者訊息的時候
    '''
    profile = line_bot_api.get_profile(event.source.user_id)
    name = profile.display_name
    uid = profile.user_id
    message = event.message.text
    print(name)
    print(uid)
    print(message)

    dic = {
        'userid': uid,
        'username': name,
        'creattime': datetime.now(),
        'mess': message
    }
    mongodb.insert_one(dic, 'message')

    if mongodb.get_ready(uid, 'users') == 1:
        mongodb.update_byid(uid, {'ready': 0}, 'users')
        casttext = name + ' 對大家說: ' + message
        remessage = TextSendMessage(text=casttext)
        userids = mongodb.get_all_userid('users')
        line_bot_api.multicast(userids, remessage)
        return 0
#關鍵評論網

    if re.search('theNewLens', event.message.text, re.IGNORECASE):

        columns = []
        img = 'https://image3.thenewslens.com/assets/web/cover-photo-medium.png'

        carousel = CarouselColumn(thumbnail_image_url=img,
                                  title='關鍵評論網新聞',
                                  text='點擊觀看類型',
                                  actions=[
                                      MessageTemplateAction(label='科學',
                                                            text='關鍵評論科學'),
                                      MessageTemplateAction(label='商業',
                                                            text='關鍵評論商業'),
                                      MessageTemplateAction(label='職場',
                                                            text='關鍵評論職場')
                                  ])
        columns.append(carousel)

        remessage = TemplateSendMessage(
            alt_text='Carousel template',
            template=CarouselTemplate(columns=columns))

        line_bot_api.reply_message(event.reply_token, remessage)
        return 0

    if re.search('關鍵評論科學', event.message.text, re.IGNORECASE):
        dic = corwler.theNewLens('science')

        makeCard(dic, event)
        return 0

    if re.search('關鍵評論商業', event.message.text, re.IGNORECASE):
        dic = corwler.theNewLens('business')

        makeCard(dic, event)

        return 0

    if re.search('關鍵評論職場', event.message.text, re.IGNORECASE):
        dic = corwler.theNewLens('career')

        makeCard(dic, event)
        return 0

#科技報橘

    if re.search('科技報橘ai', event.message.text, re.IGNORECASE):
        #人工智慧
        dic = corwler.techorangeAi()
        makeCard(dic, event)

    if re.search('科技報橘全部', event.message.text, re.IGNORECASE):
        #全部
        dic = corwler.techorange()
        makeCard(dic, event)


#泛科學
    if re.search('泛科學', event.message.text, re.IGNORECASE):
        dic = corwler.Pansci()
        makeCard(dic, event)
示例#9
0
 def choosebank():
     # 設定使用者下一句話要群廣播
     mongodb.update_byid(uid, {'ready': 1}, 'users')
     remessage = TextSendMessage(text='請選擇銀行編號(120,142)?')
     line_bot_api.reply_message(event.reply_token, remessage)