Project/생활데이터 분석

나에게 카톡 메시지 보내기 (1)

하나719 2020. 10. 1. 18:35
반응형

내가 아침에 일어나서 꼭 핸드폰으로 확인하는 두가지가 있다.

'오늘의 날씨' , '코로나확진자 수'

 

매일 아침 이 두가지를 검색하지 않고 나한테 알려줄수있다면

얼마나 좋을까? 해서 이 프로젝트를 해보았다.

 

오늘 다룰 것

1) 카카오톡 OpenAPI 활용하는 방법 

2) Python으로 나에게 카카오톡 기본 메시지 보내보기

 

카카오 Open API 활용

아래 링크에 매우 자세히 나와있기 때문에, 링크만 남겨두고 내가 오류 났던 부분만 추가하려고 한다.

이 블로그 이후에 카카오 개발자 사이트가 좀 바뀐거같아서 UI가 좀 다르긴 한 점 참고!

 👉🏻 카카오 개발자 사이트 바로가기 

https://ai-creator.tistory.com/23

 

카카오 OpenAPI 활용 - 나에게 카톡 메시지 보내기

[목차] 1. 학습목표 2. 들어가기 3. 사전 준비 4. 사전 지식 쌓기 5. 구현 ㅁ Trouble Shooting ㅁ 요약정리 ㅁ 보충 자료 1. 학습목표 카카오에서 제공하는 OpenAPI를 이용해서 "나에게 카카오톡 메시지"를 �

ai-creator.tistory.com

오류

나에게 메시지 발송하는 부분에서 아래와같은 에러메시지가 발생했다.

오류메시지 : {‘msg’: ‘this user does not have any scope.’, ‘code’: -402}

 

동의 항목에서 카카오톡 메시지 전송 동의하지 않았을 때 발생하는 오류라고 하는데, 나는 동의 해놓았는데도 계속 오류가 발생했다.

오류 해결

이 글을 보고 오류를 해결했다.

사용자 Token 을 얻을 때 주소 마지막에 &scope=talk_message 이 코드를 추가해서 문제를 해결했다.

 

 * 사용자 Token key 얻는 방법

주소창에 다음의 주소 입력
https://kauth.kakao.com/oauth/authorize?client_id={REST_API_KEY}&redirect_uri={REDIRECT_URI}&response_type=code&scope=talk_message

https://kauth.kakao.com/oauth/authorize?client_id={REST_API_KEY}&redirect_uri={REDIRECT_URI}&response_type=code&scope=talk_message

나에게 카카오톡 기본 메시지 보내기

import requests
import json

url = "https://kapi.kakao.com/v2/api/talk/memo/default/send"

# 사용자 토큰
headers = {
    "Authorization": "Bearer " + '{발급받은 사용자 token 넣기}'


data = {
    "template_object" : json.dumps({ "object_type" : "text",
                                     "text" : "하나의 첫 카카오톡 메시지입니다.",
                                     "link" : {
                                                 "web_url" : "www.naver.com"
                                              }
    })
}

response = requests.post(url, headers=headers, data=data)
print(response.status_code)
if response.json().get('result_code') == 0:
    print('메시지를 성공적으로 보냈습니다.')
else:
    print('메시지를 성공적으로 보내지 못했습니다. 오류메시지 : ' + str(response.json()))

 

발송된 화면

다음에 할 것

- 카카오톡 메시지 다른 템플릿으로 더 예쁜 메시지 보내보기

- 파이썬으로 매일 코로나 확진자 수, 오늘의 날씨 긁어오는 코드 짜기

- 매일 나한테 코로나 확진자 수, 오늘의 날씨 보내주는 카카오톡 메시지 만들기

 

 

 

 

카카오 메시지 보내기 api 문서 참고

https://developers.kakao.com/docs/latest/ko/message/rest-api

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

반응형