def create_carousel(cls, offset: int = 0): news_list = cls.get_news_list(offset=offset) carousel_list = [ CarouselColumn(thumbnail_image_url=news_list[r]["url_screen_shot"], title=news_list[r]["title"], text=news_list[r]["day"], actions=[ MessageTemplateAction(label="画像を見る", text="宮大" + str(offset + r + 1)), URITemplateAction(label="URLを開く", uri=news_list[r]["url_news"]) ]) for r in range(4) ] column_text = str(offset + 1) + "〜" + str(offset + 4) + "ページです" carousel_list.append( CarouselColumn( thumbnail_image_url= "https://www.kuaskmenkyo.necps.jp/miyazaki/UnivImages/宮崎大学画像.jpg", title="宮大支援課お知らせBot", text=column_text, actions=[ MessageTemplateAction(label='次のページ', text='過去宮大' + str(offset + 4)), URITemplateAction( label='支援課のサイトはこちら♪', uri='http://gakumu.of.miyazaki-u.ac.jp/gakumu/') ])) send_carousel = TemplateSendMessage( alt_text="宮大お知らせ", template=CarouselTemplate(columns=carousel_list)) return send_carousel
def get_Technology_news(): content = getTechnologynews() title_list = content[0] #文章標題 url_list = content[1] #連結網址 img_list = content[2] #新聞圖片 carousel_template_message = TemplateSendMessage( alt_text='Carousel template', template=CarouselTemplate(columns=[ CarouselColumn(thumbnail_image_url=content[2][0], title=content[0][0], text="科技業", actions=[ URIAction(label="全文瀏覽", uri=content[1][0]), ]), CarouselColumn(thumbnail_image_url=content[2][1], title=content[0][1], text="科技業", actions=[ URIAction(label="全文瀏覽", uri=content[1][1]), ]), CarouselColumn(thumbnail_image_url=content[2][2], title=content[0][2], text="科技業", actions=[ URIAction(label="全文瀏覽", uri=content[1][2]), ]), CarouselColumn(thumbnail_image_url=content[2][3], title=content[0][3], text="科技業", actions=[ URIAction(label="全文瀏覽", uri=content[1][3]), ]), CarouselColumn(thumbnail_image_url=content[2][4], title=content[0][4], text="科技業", actions=[ URIAction(label="全文瀏覽", uri=content[1][4]), ]) ])) return carousel_template_message
def generate_carousel_message_for_item(items): """ param items: Item Object """ columns = [] for i in range(len(items)): item = items[i] data = {'message_type': 'edit', 'edit_item_index': i} column = CarouselColumn(text=item.description, thumbnail_image_url=item.image_url, actions=[ PostbackTemplateAction(label='edit', data=str(data)), ]) columns.append(column) carousel_template = CarouselTemplate(columns=columns) template_message = TemplateSendMessage(alt_text='Carousel alt text', template=carousel_template) return (template_message)
def handle_postback(event): if event.postback.data == 'ping': line_bot_api.reply_message( event.reply_token, TextSendMessage(text='pong')) elif event.postback.data == 'edit': edit_menu = CarouselTemplate( columns=[ CarouselColumn( thumbnail_image_url='https://stat.ameba.jp/user_images/20161210/17/dsgkomatsu2/e4/8e/j/o0860121713818171577.jpg?caw=800', title='A Shop', text='Hello!', actions=[ PostbackTemplateAction( label='menu1', text='postback text1', data='action=buy&itemid=1'), MessageTemplateAction( label='menu2', text='message text1'), URITemplateAction( label='Calling', uri='tel:090-6118-6328' )]), CarouselColumn( thumbnail_image_url='https://s3-us-west-2.amazonaws.com/lineapitest/hamburger_240.jpeg', title='Tadano Restraunt', text='Welcome!', actions=[ PostbackTemplateAction( label='menu1', text='postback text1', data='action=buy&itemid=1'), MessageTemplateAction( label='menu2', text='message text1'), URITemplateAction( label='uri1', uri='http://example.com/1' )]), CarouselColumn( thumbnail_image_url='https://s3-us-west-2.amazonaws.com/lineapitest/hamburger_240.jpeg', title='this is menu2', text='description2', actions=[ PostbackTemplateAction( label='postback2', text='postback text2', data='action=buy&itemid=2'), MessageTemplateAction( label='message2', text='message text2'), URITemplateAction( label='uri2', uri='http://example.com/2')]) ]) template_message = TemplateSendMessage( alt_text='Carousel text', template=edit_menu) line_bot_api.reply_message(event.reply_token, template_message) # elif event.postback.data == 'confirm': else: line_bot_api.reply_message( event.reply_token, TextSendMessage(text=event.postback.data))
def recommend(): db = connectDB() sql_2 = "select Code,if(LENGTH (jobName)>15,left(jobName,15),jobName) as jobName,if(LENGTH (companyName)>15,left(companyName,15),companyName) as companyName,salary,latitude,longitude from recom_2 order by id desc limit 3" fake_data = pd.read_sql(sql_2, db) print('與網頁版終極推薦一致:', fake_data) carousel_template_message = TemplateSendMessage( alt_text='Carousel template', template=CarouselTemplate(columns=[ CarouselColumn( thumbnail_image_url='https://imgur.com/8pBiwX5.jpg', title=fake_data['jobName'][0] + " " + fake_data['companyName'][0], text=fake_data['salary'][0], actions=[ URIAction( label="地圖導覽", uri="http://maps.google.com/maps?q={}{}{}".format( fake_data['latitude'][0], ",", fake_data['longitude'][0]) # Google Map 範例:http://maps.google.com/maps?q=24.197611,120.780512 # 利用變更經緯度秀出各公司在Google Map地圖上的位置 ), URIAction( label='詳細資訊', uri="https://www.104.com.tw/jobs/apply/analysis/" + fake_data["Code"][0]), ]), CarouselColumn( thumbnail_image_url='https://imgur.com/K9cyKVj.jpg', title=fake_data['jobName'][1] + " " + fake_data['companyName'][1], text=fake_data['salary'][1], actions=[ URIAction(label="地圖導覽", uri="http://maps.google.com/maps?q={}{}{}". format(fake_data['latitude'][1], ",", fake_data['longitude'][1])), URIAction( label='詳細資訊', uri="https://www.104.com.tw/jobs/apply/analysis/" + fake_data["Code"][1]), ]), CarouselColumn( thumbnail_image_url='https://imgur.com/yFjNbB8.jpg', title=fake_data['jobName'][2] + " " + fake_data['companyName'][2], text=fake_data['salary'][2], actions=[ URIAction(label="地圖導覽", uri="http://maps.google.com/maps?q={}{}{}". format(fake_data['latitude'][2], ",", fake_data['longitude'][2])), URIAction( label='詳細資訊', uri="https://www.104.com.tw/jobs/apply/analysis/" + fake_data["Code"][2]), ]) ])), return carousel_template_message
def yooka_template(event): a = event.message.text b = a.lower() if (b == "test"): line_bot_api.reply_message(event.reply_token, TextSendMessage(text=a)) elif (b == "image carousel"): line_bot_api.reply_message( event.reply_token, TemplateSendMessage( alt_text='Image carousel template', template=ImageCarouselTemplate(columns=[ ImageCarouselColumn(image_url='https://example.com/' 'item1.jpg', action=PostbackAction( label='postback1', data='action=buy&itemid=1')), ImageCarouselColumn(image_url='https://example.com' '/item2.jpg', action=MessageAction( label='message2', text='message text2')), ImageCarouselColumn(image_url='https://example.com/' 'item3.jpg', action=URIAction( label='uri1', uri='https://example.com/1')) ]))) elif (b == "lokasi unsada"): line_bot_api.reply_message( event.reply_token, LocationSendMessage(title='Universitas Darma Persada', address='Jakarta Timur', latitude=35.65910807942215, longitude=139.70372892916203)) elif (b == "konfirmasi"): line_bot_api.reply_message( event.reply_token, TemplateSendMessage(alt_text='Confirm template', template=ConfirmTemplate( text='Are you sure?', actions=[ PostbackAction( label='postback', text='postback text', data='action=buy&itemid=1'), MessageAction(label='message', text='message text') ]))) elif (b == "carousel"): line_bot_api.reply_message( event.reply_token, TemplateSendMessage( alt_text='Carousel template', template=CarouselTemplate(columns=[ CarouselColumn( thumbnail_image_url='https://example.com/item1.jpg', title='this is menu1', text='description1', actions=[ PostbackAction(label='postback1', text='postback text1', data='action=buy&itemid=1'), MessageAction(label='message1', text='message text1'), URIAction(label='uri1', uri='http://example.com/1') ]), CarouselColumn( thumbnail_image_url='https://example.com/item2.jpg', title='this is menu2', text='description2', actions=[ PostbackAction(label='postback2', text='postback text2', data='action=buy&itemid=2'), MessageAction(label='message2', text='message text2'), URIAction(label='uri2', uri='http://example.com/2') ]) ]))) elif (b == "siapa kamu"): line_bot_api.reply_message(event.reply_token, TextSendMessage(text="Yooka")) elif (b == "question"): line_bot_api.reply_message(event.reply_token, TextSendMessage(text="answer")) else: line_bot_api.reply_message( event.reply_token, TextSendMessage( text= "Wah, keliatannya aku kurang paham. Coba cek Quick Menu dibawah." ))