Information Security

번역 카톡봇 (네이버 파파고 API 이용 , 제작자 : doami2005 ) 본문

§IT/◆카톡 봇◆

번역 카톡봇 (네이버 파파고 API 이용 , 제작자 : doami2005 )

Motie_FireWall 2020. 7. 27. 00:41

일단 해당 소스코드는 네이버카페의 doami2005님이 공유해주신 소스코드입니다.

https://cafe.naver.com/nameyee

 

카카오톡 봇 커뮤니티 : 네이버 카페

JavaScript(자바스크립트)를 사용하는 카카오톡 봇 관련 커뮤니티 입니다.

cafe.naver.com

 

const BufferedReader = java.io.BufferedReader
const DataOutputStream = java.io.DataOutputStream
const InputStreamReader = java.io.InputStreamReader
const HttpURLConnection = java.net.HttpURLConnection
const URL = java.net.URL
const URLEncoder = java.net.URLEncoder
NMT = (source, target, text) => {
clientId = "아이디"
clientSecret = "시크릿넘버"
try {
text = encodeURI(text);
apiURL = "https://openapi.naver.com/v1/papago/n2mt";
url = new URL(apiURL);
con = url.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("X-Naver-Client-Id", clientId);
con.setRequestProperty("X-Naver-Client-Secret", clientSecret);
postParams = "source="+source+"&target="+target+"&text=" + text;
con.setDoOutput(true);
wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(postParams);
wr.flush();
wr.close();
br = new BufferedReader(new InputStreamReader(con.getInputStream()))
var inputLine;
var res = ""
while ((inputLine = br.readLine()) != null) res += inputLine;
br.close();
return JSON.parse(res).message.result.translatedText
} catch (e) {
return "***번역 오류***"
}
}

function response (room, msg, sender, _, replier) {

if (msg.startsWith("!번역")) {
start = msg.split(" ")[1]
end = msg.split(" ")[2]
text = msg.split(" ")
text.splice(0, 3)
text = text.join(" ")
replier.reply(NMT(start, end, text))
}
}

 

해당 소스코드를 사용하기 위해서는 일단 네이버 파파고 API의 아이디와 시크릿넘버를 소스코드에 기입해주어야 한다. 

이 방법은 구글링이나 네이버에 널려있으니 참조 부탁드립니다. 

 

사용방법은 

ex) !번역 ko en 안녕하세요

!번역 ko ja 안녕하세요

입력할시에 봇이 알아서 번역을 하고 답변을 해준다. 

 

 

'§IT > ◆카톡 봇◆' 카테고리의 다른 글

indexOf, trim, toLowecase()  (0) 2020.07.27
랜덤함수  (0) 2020.07.27
카톡 봇 공부 -2 (javascript공부)  (0) 2020.07.11
카톡 봇 공부 - 1  (0) 2020.07.11
Comments