본문 바로가기
README/한줄코딩

[Python] 라인(LINE) 메신저로 알림봇 만들기

by 100sang 2022. 3. 22.

대부분 알림을 받는 모니터링 채널로
Slack Webhook, 카카오톡, 텔레그램등을 활용하고 있는데요.

이번에는 주로 사용하는 메신저인 'LINE'으로
알림봇 서비스를 만들 수 있는지 궁금해서 찾아봤는데
LINE Notify를 활용하여 Notification 서비스를 구현할 수 있다고 해서
이번 기회에 한번 테스트 해볼까 합니다 : )



1. LINE 계정 확인하기

- 우선 LINE 앱에서 [더보기] > [설정] > [계정]을 선택합니다.
- 계정에 [이메일]과 [비밀번호]를 설정합니다. (비밀번호를 잊은 경우 다시 등록해주시면 됩니다)



2. LINE Notify 로그인하기

- LINE Notify 사이트 접속(https://notify-bot.line.me)합니다.
- 1번에서 설정한 [이메일] 계정과 [비밀번호]로 로그인해주시면 됩니다.



3. 그룹 채팅방 만들기

- LINE 메신저에 아래와 같이 알림 메시지를 받을 [그룹채팅방]을 생성한 후
- LINE Notify를 친구로 초대합니다.



- 혹시 친구로 선택할 수 없다면 모바일 브라우저에서 LINE Notify 사이트 접속 후
- [Add as a friend] 버튼을 클릭하면 공식 계정이 자동으로 추가됩니다.





4. Access Token 생성하기

- 모바일 메신저 내 '그룹 채팅방 생성' 및 'LINE Notify' 친구 초대가 완료되었다면
- 다시 웹사이트로 접속하여 우측 상단의 아이디를 클릭합니다.
- [My page]를 클릭한 후 'Generate access token'을 생성해줍니다.

- Token명을 입력한 후 메세지가 전송될 '그룹 채팅방' 채널명을 선택합니다.


- 아래와 같이 정상적으로 'Token'이 생성이 완료된 것을 확인할 수 있습니다.
- 창을 종료하기 전에 꼭 [Copy] 버튼을 클릭한 후 별도로 저장해 주세요!!




5. 서비스 연결 확인

- 'Connected services' 영역 내 '100SANGBOT'이 '알림봇' 그룹 채팅방에 정상적으로 연결 완료된 것을 확인할 수 있습니다.




6. API 메시지 전송 테스트

- 아래 notification API를 참고하여 메시지 전송 테스트를 진행합니다.

- 간단하게 아래와 같이 Python 코드를 활용하여 테스트 하였습니다.

[line-notify-bot.py]

import requests

def main():
    try:
        api_url = 'https://notify-api.line.me/api/notify'
        token = 'access token'

        response = requests.post(
            api_url,
            headers = {
                'Authorization':'Bearer ' + token
            },
            data = {
                'message' : '모니터링 테스트입니다'
            }            
        )

    except Exception as ex:
        print(ex)

if __name__ == "__main__":
     main()


- 파일 실행 후 '100SANGBOT'으로 그룹 채팅방에 정상적으로 메세지가 전송된 것을 확인할 수 있습니다.



* 참고로, Access Token(ex.100SANGBOT)은 한번 생성 후 수정이 불가능하기 때문에
DISCONNECT 후 4번의 과정을 다시 진행해 주셔야 합니다. 당연히 Token 값도 바뀌겠죠?!


LINE Notify API 가이드는 아래 페이지를 참고해주세요.
https://notify-bot.line.me/doc/en/

LINE Notify

LINE Notify allows you to send web notifications from GitHub, IFTTT, Mackerel, and more directly to your LINE chats.

notify-bot.line.me

728x90

'README > 한줄코딩' 카테고리의 다른 글

[GitHub] Jekyll 블로그 테마 설치하기 - Just The Docs  (0) 2022.03.20

댓글