본문 바로가기
읽은 책/Node.js로 봇 만들기

[Node.js로 봇 만들기] - twilio 봇 'twilio.RestClient is not a function' 에러 해결

by VANAV 2024. 3. 24.

에두아르도 프레이타스, 마단 빈타드 - Node.js로 봇 만들기 를 읽으며

twiltio!!

 

이 책...

집 앞 도서관 구경을 하다가 Node.js로 봇을 만들 수 있다는 제목에 혹해서 골라와 무작정 집에서 따라 만들어 보았다..

그런데 생각보다 옛날에 출판된 책이라 (2018년..)

따라하면서 예상 외의 오류를 마주하게 된 것 같아 그 해결법을 남긴다.. 😅

아직 흥미가 식지는 않아서 일단 계속 읽어보며 따라해볼 것 같긴 한데 이런 오류가 계속 되면 포기할지도?

 

일단 나는 책의 코드를 똑같이 따라 쳤는데 node 실행할 때 자꾸 에러가 발생해서 화가 났다.. 😫

 

책의 코드

// 책의 코드
let twilio = require("twilio");

const accountSid = "내 twilio 계정 sid";
const authToken = "내 twilio auth token";

let client = new twilio.RestClient(accountSid, authToken);

client.messages
  .create({
    body: "내가 보내고 싶은 메시지",
    to: "+8201012345678",
    from: "SMS 발신자 번호",
  },
(err, message) => {
   console.log(message.sid);
 });

 

그런데 구글링을 해보니 사람들이 node나 typescript로 twilio 봇을 만들 때 사용하는 코드 예시가 책이랑은 달랐다.

위의 코드를 이렇게 바꿔서 작성하니 성공적으로 메시지가 전송되었다.

 

바꾼 코드

// 바꾼 코드
const client = require("twilio")(accountSid, authToken);

const accountSid = "내 twilio 계정 sid";
const authToken = "내 twilio auth token";

client.messages
  .create({
    body: "내가 보내고 싶은 메시지",
    to: "+8201012345678",
    from: "SMS 발신자 번호",
 })
  .then((message) => console.log(message.sid));

 

근데 사실 재미는 있었다...

물론 인증한 번호로밖에 못보내서 좀 아쉬웠지만..

그래도 어차피 trial 버전이라 돈도 안들고 음 나름 좋은 경험인거같다

눈누난나

 

Skipe Bot도 얼른 구현해봐야겟다ㅎ 🤗

댓글