Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot
F8 컨퍼런스: 페이스북이 메신저 채팅봇 플랫폼 출시
Facebook의 F8 컨퍼런스에서 Messenger의 채팅봇 플랫폼을 발표했습니다.
그렇다면 조속히 앵무새 반환 Bot을 만들어 보겠습니다.
공식 문서는
Messenger Platform - 참고 자료 - 개발자용 Facebook
여기입니다.
1 Facebook 개발자 페이지에서 앱 또는 페이지 만들기(또는 기존 앱 사용)
채팅봇을 게시하려면 Facebook 앱 또는 페이지가 필요합니다.
Quick Starts - 개발자용 Facebook
2 앱 페이지의 왼쪽 사이드 바 아래에서 두 번째 Messenger를 선택하고 "Get Started"버튼을 누릅니다.
Messenger라는 항목이 새로 추가되었습니다.
3 Webhook 등록하기
약간 까다롭지만 먼저 Webhook을 설정해야합니다. 여기에서 콜백 URL을 등록하기 위해서는 먼저 URL을 준비하고, 적절한 토큰을 입력하고, 등록 시 Facebook이 수행하는 검증을 통과해야 합니다.
이를 위한 샘플 코드를 설명합니다. (heroku의 경우)
다시 전화 요청할 URL htps : // 에어 mpぇ. 어리석은 p. 코 m / 아피 / 굵은 CK
토큰 hogehoge
※토큰은 각자 적당한 것을 입력해 주세요.
를 입력합니다.
그리고 검증을 위해 callback을 받아들이기 위한 처리를 준비합니다.
Rails의 예를 적습니다.
def callback
if params["hub.verify_token"] == "hogehoge"
render json: params["hub.challenge"]
else
render json: "Error, wrong validation token"
end
end
그런 다음 '확인 및 저장' 버튼을 누르면 Facebook이 콜백 URL에 확인 요청을 보내고 통과하면 등록이 완료됩니다.
4 액세스 토큰을 발행합시다.
Facebook 페이지를 이용하여,
5 채팅봇 시작
4에서 얻은 액세스 토큰을 사용하여 curl 명령에서 채팅 봇을 시작합니다. YOUR_TOKEN을 교체하고 콘솔에서 다음을 치십시오.
curl -ik -X POST "htps // g 등 ph. 후세보오 k. 이 m/v2.6/메/스 bsc 리베 d_아니 ps? 아세스 s_와 켄 = R_와 켄"
6 테스트해 봅시다.
Facebook Messenger 앱의 '친구 및 그룹 검색'에서 등록한 앱(또는 페이지)을 검색하여 친구에게 추가하고 적당히 말해 보세요. 그러면 콜백 URL에 요청이 전송됩니다.
7 앵무새를 돌려 보자.
글쎄, 마지막이지만 앵무새 반환을 시도합니다.
Bot이 발언을 해도, 같은 콜백에 돌아오므로, 적당하게 「hoge」라든지 돌려주는 샘플을 쓰고 있으면 무한 루프가 되어 빠졌습니다. . . Bot인지 유저의 발언인지를 판정하고, 경우 나누고 있습니다.
def callback
token = "<TOKEN>"
message = params["entry"][0]["messaging"][0]
if message.include?("message")
#ユーザーの発言
sender = message["sender"]["id"]
text = message["message"]["text"]
endpoint_uri = "https://graph.facebook.com/v2.6/me/messages?access_token=" + token
request_content = {recipient: {id:sender},
message: {text: text}
}
content_json = request_content.to_json
RestClient.post(endpoint_uri, content_json, {
'Content-Type' => 'application/json; charset=UTF-8'
}){ |response, request, result, &block|
p response
p request
p result
}
else
#botの発言
end
end
홍보
아래와 같이 2개를 운영하고 있으므로, 꼭 팔로우해 주세요!
Bot에 관한 뉴스 미디어 "BotEgg 뉴스"htp // // ws. 흐릿한 g. 코m/
Facebook Bot 연구회 htps //w w. 후세보오 k. 이 m/g 납 ps/1684644661776706/? f f = ts
Reference
이 문제에 관하여(Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fuji_syan/items/85723cb5e53ec6dc9e95
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Messenger라는 항목이 새로 추가되었습니다.
3 Webhook 등록하기
약간 까다롭지만 먼저 Webhook을 설정해야합니다. 여기에서 콜백 URL을 등록하기 위해서는 먼저 URL을 준비하고, 적절한 토큰을 입력하고, 등록 시 Facebook이 수행하는 검증을 통과해야 합니다.
이를 위한 샘플 코드를 설명합니다. (heroku의 경우)
다시 전화 요청할 URL htps : // 에어 mpぇ. 어리석은 p. 코 m / 아피 / 굵은 CK
토큰 hogehoge
※토큰은 각자 적당한 것을 입력해 주세요.
를 입력합니다.
그리고 검증을 위해 callback을 받아들이기 위한 처리를 준비합니다.
Rails의 예를 적습니다.
def callback
if params["hub.verify_token"] == "hogehoge"
render json: params["hub.challenge"]
else
render json: "Error, wrong validation token"
end
end
그런 다음 '확인 및 저장' 버튼을 누르면 Facebook이 콜백 URL에 확인 요청을 보내고 통과하면 등록이 완료됩니다.
4 액세스 토큰을 발행합시다.
Facebook 페이지를 이용하여,
5 채팅봇 시작
4에서 얻은 액세스 토큰을 사용하여 curl 명령에서 채팅 봇을 시작합니다. YOUR_TOKEN을 교체하고 콘솔에서 다음을 치십시오.
curl -ik -X POST "htps // g 등 ph. 후세보오 k. 이 m/v2.6/메/스 bsc 리베 d_아니 ps? 아세스 s_와 켄 = R_와 켄"
6 테스트해 봅시다.
Facebook Messenger 앱의 '친구 및 그룹 검색'에서 등록한 앱(또는 페이지)을 검색하여 친구에게 추가하고 적당히 말해 보세요. 그러면 콜백 URL에 요청이 전송됩니다.
7 앵무새를 돌려 보자.
글쎄, 마지막이지만 앵무새 반환을 시도합니다.
Bot이 발언을 해도, 같은 콜백에 돌아오므로, 적당하게 「hoge」라든지 돌려주는 샘플을 쓰고 있으면 무한 루프가 되어 빠졌습니다. . . Bot인지 유저의 발언인지를 판정하고, 경우 나누고 있습니다.
def callback
token = "<TOKEN>"
message = params["entry"][0]["messaging"][0]
if message.include?("message")
#ユーザーの発言
sender = message["sender"]["id"]
text = message["message"]["text"]
endpoint_uri = "https://graph.facebook.com/v2.6/me/messages?access_token=" + token
request_content = {recipient: {id:sender},
message: {text: text}
}
content_json = request_content.to_json
RestClient.post(endpoint_uri, content_json, {
'Content-Type' => 'application/json; charset=UTF-8'
}){ |response, request, result, &block|
p response
p request
p result
}
else
#botの発言
end
end
홍보
아래와 같이 2개를 운영하고 있으므로, 꼭 팔로우해 주세요!
Bot에 관한 뉴스 미디어 "BotEgg 뉴스"htp // // ws. 흐릿한 g. 코m/
Facebook Bot 연구회 htps //w w. 후세보오 k. 이 m/g 납 ps/1684644661776706/? f f = ts
Reference
이 문제에 관하여(Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fuji_syan/items/85723cb5e53ec6dc9e95
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
def callback
if params["hub.verify_token"] == "hogehoge"
render json: params["hub.challenge"]
else
render json: "Error, wrong validation token"
end
end
Facebook 페이지를 이용하여,
5 채팅봇 시작
4에서 얻은 액세스 토큰을 사용하여 curl 명령에서 채팅 봇을 시작합니다. YOUR_TOKEN을 교체하고 콘솔에서 다음을 치십시오.
curl -ik -X POST "htps // g 등 ph. 후세보오 k. 이 m/v2.6/메/스 bsc 리베 d_아니 ps? 아세스 s_와 켄 = R_와 켄"
6 테스트해 봅시다.
Facebook Messenger 앱의 '친구 및 그룹 검색'에서 등록한 앱(또는 페이지)을 검색하여 친구에게 추가하고 적당히 말해 보세요. 그러면 콜백 URL에 요청이 전송됩니다.
7 앵무새를 돌려 보자.
글쎄, 마지막이지만 앵무새 반환을 시도합니다.
Bot이 발언을 해도, 같은 콜백에 돌아오므로, 적당하게 「hoge」라든지 돌려주는 샘플을 쓰고 있으면 무한 루프가 되어 빠졌습니다. . . Bot인지 유저의 발언인지를 판정하고, 경우 나누고 있습니다.
def callback
token = "<TOKEN>"
message = params["entry"][0]["messaging"][0]
if message.include?("message")
#ユーザーの発言
sender = message["sender"]["id"]
text = message["message"]["text"]
endpoint_uri = "https://graph.facebook.com/v2.6/me/messages?access_token=" + token
request_content = {recipient: {id:sender},
message: {text: text}
}
content_json = request_content.to_json
RestClient.post(endpoint_uri, content_json, {
'Content-Type' => 'application/json; charset=UTF-8'
}){ |response, request, result, &block|
p response
p request
p result
}
else
#botの発言
end
end
홍보
아래와 같이 2개를 운영하고 있으므로, 꼭 팔로우해 주세요!
Bot에 관한 뉴스 미디어 "BotEgg 뉴스"htp // // ws. 흐릿한 g. 코m/
Facebook Bot 연구회 htps //w w. 후세보오 k. 이 m/g 납 ps/1684644661776706/? f f = ts
Reference
이 문제에 관하여(Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fuji_syan/items/85723cb5e53ec6dc9e95
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Facebook Messenger 앱의 '친구 및 그룹 검색'에서 등록한 앱(또는 페이지)을 검색하여 친구에게 추가하고 적당히 말해 보세요. 그러면 콜백 URL에 요청이 전송됩니다.
7 앵무새를 돌려 보자.
글쎄, 마지막이지만 앵무새 반환을 시도합니다.
Bot이 발언을 해도, 같은 콜백에 돌아오므로, 적당하게 「hoge」라든지 돌려주는 샘플을 쓰고 있으면 무한 루프가 되어 빠졌습니다. . . Bot인지 유저의 발언인지를 판정하고, 경우 나누고 있습니다.
def callback
token = "<TOKEN>"
message = params["entry"][0]["messaging"][0]
if message.include?("message")
#ユーザーの発言
sender = message["sender"]["id"]
text = message["message"]["text"]
endpoint_uri = "https://graph.facebook.com/v2.6/me/messages?access_token=" + token
request_content = {recipient: {id:sender},
message: {text: text}
}
content_json = request_content.to_json
RestClient.post(endpoint_uri, content_json, {
'Content-Type' => 'application/json; charset=UTF-8'
}){ |response, request, result, &block|
p response
p request
p result
}
else
#botの発言
end
end
홍보
아래와 같이 2개를 운영하고 있으므로, 꼭 팔로우해 주세요!
Bot에 관한 뉴스 미디어 "BotEgg 뉴스"htp // // ws. 흐릿한 g. 코m/
Facebook Bot 연구회 htps //w w. 후세보오 k. 이 m/g 납 ps/1684644661776706/? f f = ts
Reference
이 문제에 관하여(Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fuji_syan/items/85723cb5e53ec6dc9e95
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
def callback
token = "<TOKEN>"
message = params["entry"][0]["messaging"][0]
if message.include?("message")
#ユーザーの発言
sender = message["sender"]["id"]
text = message["message"]["text"]
endpoint_uri = "https://graph.facebook.com/v2.6/me/messages?access_token=" + token
request_content = {recipient: {id:sender},
message: {text: text}
}
content_json = request_content.to_json
RestClient.post(endpoint_uri, content_json, {
'Content-Type' => 'application/json; charset=UTF-8'
}){ |response, request, result, &block|
p response
p request
p result
}
else
#botの発言
end
end
아래와 같이 2개를 운영하고 있으므로, 꼭 팔로우해 주세요!
Bot에 관한 뉴스 미디어 "BotEgg 뉴스"htp // // ws. 흐릿한 g. 코m/
Facebook Bot 연구회 htps //w w. 후세보오 k. 이 m/g 납 ps/1684644661776706/? f f = ts
Reference
이 문제에 관하여(Heroku+Rails로 움직이는 Facebook Messenger의 앵무새 반환 Bot), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fuji_syan/items/85723cb5e53ec6dc9e95텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)