from django.conf import settings
from django.http import HttpResponse, HttpResponseBadRequest, HttpResponseForbidden
from django.views.decorators.csrf import csrf_exempt
from linebot import LineBotApi, WebhookHandler
from linebot.exceptions import InvalidSignatureError, LineBotApiError
from linebot.models import MessageEvent, TextSendMessage, TextMessage, FollowEvent
line_bot_api = LineBotApi('Channel access token')
handler = WebhookHandler('Channel secret')
# member_ids_res = line_bot_api.get_group_member_ids(group_id)
@handler.add(MessageEvent, message=TextMessage)
def handle_text_message(event):
# print('room_id: {}'.format(event.room_id))
print('text: {}'.format(event.message.text))
text =event.message.text.lower()
user = event.source.user_id
print('user_id: {}'.format(user))
line_bot_api.reply_message(
event.reply_token,
TextSendMessage(text=user)
)
@handler.add(FollowEvent)
def handle_follow(event):
line_bot_api.reply_message(
event.reply_token,
TextSendMessage(text='感謝這位兄長加我')
)
@handler.default()
def default(event):
print(event)
line_bot_api.reply_message(
event.reply_token,
TextSendMessage(text='Currently Not Support None Text Message')
)
@csrf_exempt
def callback(request):
if request.method == 'POST':
signature = request.META['HTTP_X_LINE_SIGNATURE']
body = request.body.decode('utf-8')
try:
handler.handle(body, signature)
except InvalidSignatureError:
return HttpResponseForbidden()
except LineBotApiError:
return HttpResponseBadRequest()
return HttpResponse()
else:
return HttpResponseBadRequest()
def send_message(request):
line_bot_api.multicast(['to1', 'to2','to3'], TextSendMessage(text='各位都是帥哥!'))
# line_bot_api.push_message('to1', TextSendMessage(text='Hello World!'))
return HttpResponse()
沒有留言:
張貼留言