
(4)에서 Telegram Webhook를 이용해 사용자가 메시지를 보냈을 때 봇이 바로 응답할 수 있게 만들었습니다. 그러나 그대로 사용한다면 이 봇은 영원히 BTCUSDT만 응답할 것입니다. 그래서 사용자가 요청하는 코인의 현재가를 요청할 수 있게 만들어야 합니다. Binance만 요청받기에는 부족한 부분이 있어 국내 대표코인 거래소인 Upbit도 함께 사용할 것입니다. 먼저 커맨드와 문자열을 분리하려면 정규식을 사용해도 되지만 저는 간단하게 String.substring()을 이용할 것입니다. 또한 Upbit와 Binance와 요청하는 방식이 다르기 때문에 분류되어야합니다. 그래서 String.includes()도 함께 사용하겠습니다. Upbit GET Upbit에 GET방식으로 요청하는 방식은 다..

(1) ~ (3)를 통하여 Telegram 봇을 이용하기 위한 기초를 마쳤습니다. 이제는 원하는 봇을 만들 시간입니다. 저는 트레이딩을 하는 사람으로 Telegram을 통해 코인의 실시간 가격을 조회할 수 있는 봇을 만들겠습니다. 봇에게 Command를 입력하면 해당 코인의 가격이 응답으로 돌아오게 됩니다. 저는 대표적인 해외거래소 Binance를 이용하겠습니다. Binance API에 보다 자세한 것은 더보기를 참조하십시오. 더보기 https://binance-docs.github.io/apidocs/spot/en/#change-log Binance API를 이용하는 방법은 여러가지가 있습니다. 저는 여기서 간단하게 보안요청이 필요없는 Endpoints를 이용하겠습니다. Binance API는 보완요청..

(2)에서 실시간 응답을 위해 Webhook를 설정하는 방법을 알아봤습니다. Telegram은 Commands 기능을 제공합니다. 보다 자세한 것은 Telegram API docs 참조하십시오. 더보기 https://core.telegram.org/bots/api#setmycommands 나만의 Command를 설정하기 위한 방법은 두 가지가 있습니다. 첫 번째는 바로 봇을 만들 때 채팅했던 @BotFather를 이용하는 것입니다. 그리고 남은 한 가지는 API를 이용하는 것입니다. 여기서는 두 방법을 모두 제시합니다. 먼저 @BotFather를 이용한 방법부터 알아보겠습니다. 1. @BotFather @BotFather에게서 사용가능한 Commands를 알고싶다면 /help를 요청합니다. 그럼 다음과 ..

(1)에서 직접적으로 메시지를 보내는 것이 아닌 Apps Script를 이용해 보내는 방법을 확인했습니다. 보다 더 자세한 것은 Telegram API docs 참조하십시오. 더보기 https://core.telegram.org/bots/api Apps Scirpt를 통해 내가 봇에게 메시지를 보냈을 때 봇은 이를 업데이트할 수 있어야 합니다. Telegram API에 따르면 업데이를 받는 방법은 두 가지가 존재하며 하나는 getUpdates 메서드이고 하나는 웹 후크를 이용해 업데이트 할 수 있다고 합니다. getUpdates 메서드인 경우 긴 폴링을 사용하여 들어오는 경우 권장하며 실시간 답장을 원한다면 웹 후크를 이용해야 합니다. 많은 기능을 제공해주는 Google Sheets는 웹 앱을 제공하므로..

Google Sheets는 Apps Script를 제공합니다. 그리고 Apps Script는 많은 기능을 제공합니다. 이를 이용해 Telegram의 간단한 봇을 만들 것입니다. 해당 예시는 Telegram 봇을 만들었다는 가정하에 진행됩니다. Telegram 봇을 만들고 만든 봇과 채팅을 시작하면 다음 사진의 모습을 마주할 것입니다. 해당 봇에게 특정 메시지를 보내보겠습니다. 물론 직접 채팅방에 타이핑 후 메시지를 보내도 되지만 저는 Apps Script를 통해 보내야 합니다. 하지만 보내기 위해서는 봇을 만드는 것 외에 몇 개의 작업이 필요합니다. 1. https://api.telegram.org/bot 접속하기 봇과의 채팅이 저장되는 곳으로 해당 페이지로 바로 접속하는 것이 아닌 봇을 만들었을 때 받..