파이썬으로 카카오톡 챗봇 만들기
1. Django 설치
pip3 install --upgrade pip
pip3 install django
2. 프로젝트 생성
django-admin startproject myproject(프로젝트이름)
python manage.py startapp mybot(어플리케이션이름)
python manage.py migrate
3. 설정
[ settings.py 수정 ]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'mybot' <- 추가
]
TIME_ZONE = 'Asia/Seoul' <- 수정
[ urls.py ]
urlpatterns = [
url(r'^keyboard/', views.keyboard),
url(r'^message', views.message),
]
4. 코드 작성 (views.py 수정)
def keyboard(request):
return JsonResponse({
'type':'buttons',
'buttons':['안녕', '날씨']
})
-> 카카오톡 플러스 친구 버튼 정보
@csrf_exempt // Django에서 제공하는 POST에 대한 보안 기능
def message(request):
message = ((request.body).decode('utf-8'))
request_data = json.loads(message)
userMessage = request_data['content'] // 유저로 부터 온 응답메시지
userType = request_data['type'] // 유저로 부터 온 응답메시지 타입
if userMessage == '안녕':
return JsonResponse({
'message': {
'text': '안녕 반가워!',
'photo': {
'url': 'https://cdn.pixabay.com/photo/2014/04/13/20/49/cat-323262_960_720.jpg',
'width': 640,
'height': 480
},
},
'keyboard': {
'type':'buttons',
'buttons':['안녕','날씨']
}
})
-> 각 버튼에 대한 응답 내용
5. 카카오톡 플러스 친구 생성
- 카카오톡 플러스 친구 관리자센터 가입
- 스마트 채팅 API형 선택
- 앱 URL
python manage.py runserver 0.0.0.0:8000(포트번호)
http://ip:포트번호/디렉토리
- 시작하기