나에게 카톡 메시지 보내기 (1)
내가 아침에 일어나서 꼭 핸드폰으로 확인하는 두가지가 있다.
'오늘의 날씨' , '코로나확진자 수'
매일 아침 이 두가지를 검색하지 않고 나한테 알려줄수있다면
얼마나 좋을까? 해서 이 프로젝트를 해보았다.
오늘 다룰 것
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