매일 알림을 보내는 텔레그램 봇 구축

프론트엔드 개발자를 위한 선별된 목록Public API의 웹사이트를 운영하고 있으며 사용자를 위한 텔레그램 그룹 커뮤니티가 있습니다. 그래서 매일 하나의 Random API를 채널에 계속 피드하기로 결정했습니다. 그런 다음 그룹과 수동으로 공유하는 대신 이 작업을 자동화하기로 결정했습니다.

NoCode 도구 사용



코딩 및 서버 설정을 원하지 않는 경우 5분 이내에 텔레그램 API를 설정할 수 있습니다. Telegram API with NoCode

코드 사용



이제 코딩을 시작해 봅시다.

1단계: Bot으로 새 Bot 설정(
)

이름 검색"
"를 텔레그램 검색에 추가하고 이를 탭하여 명령을 보냅니다.
/newbot 봇을 만들고 지침을 따릅니다. 마지막으로 Telegram API를 사용하기 위한 access_token을 받게 됩니다.



이제 봇을 만들었습니다. 이제 텔레그램 검색(@name_bot)에서 검색해보세요.

이제 작업을 자동화하도록 이 봇을 코딩해 보겠습니다. 그래서 우리는 랜덤 API에 대한 일일 뉴스 피드를 텔레그램 채널로 자동화하고 있습니다.

2단계: 이 봇을 위한 서버 설정

저는 glitch.com을 사용하여 서버를 구축하고 NodeJS를 사용하여 봇을 코딩하고 있습니다.

Glitch에서 Express 프로젝트를 만드십시오. 이 프로젝트를 공개 및 비공개로 설정할 수 있습니다.

Chuck Norris의 공개 API를 사용하여 Chuck의 재미있는 인용문을 매일 보내십시오. 여기에서 해당 API를 찾았습니다Chuck Norris API.

var express = require('express')
var app = express()
var bodyParser = require('body-parser')
const axios = require('axios')
const {
    Telegram
} = require('telegraf')

const tg = new Telegram(process.env.BOT_TOKEN)

app.use(bodyParser.json()) // for parsing application/json

app.use(
    bodyParser.urlencoded({
        extended: true
    })
)

app.get('/random-jokes', function(req, res) {
    axios.get('https://api.chucknorris.io/jokes/random').then(res => {
        const txt = res.data.value
        tg.sendMessage(process.env.GROUP_ID, txt)
    })
    res.send('Joke is delivered')
})

// Finally, start our server
app.listen(3000, function() {
    console.log('Telegram app listening on port 3000!')
})


환경 변수를 .env 파일로 설정합니다.

BOT_TOKEN=<bot_access_token>
GROUP_ID=<group_id>


이제 이러한 환경 변수를 가져옵니다. 액세스 토큰을 쉽게 얻을 수 있습니다.
.

그룹 ID를 얻으려면 먼저 매일 알림을 보내려는 그룹에 봇을 추가하십시오. API 아래 봇 호출을 브라우저에 추가한 후 그룹 ID를 가져옵니다.

https://api.telegram.org/bot<bot_access_token>/getUpdates


따라서 이 API는 개체의 JSON 배열을 반환합니다. 그룹 이름이 있고 해당 개체 ID가 그룹 ID인 개체 하나를 찾습니다.

//like this object
"chat":{
   "id":-369192376, // this is the group id
   "title":"xyz",
   "type":"group",
   "all_members_are_administrators":true
}


그게 다야. 이제 access_token 및 그룹 ID가 있습니다. 서버가 알림을 보낼 준비가 되었습니다.

이제 API URL을 브라우저로 실행하고 확인하십시오.

https://chuck-noris-fun.glitch.me/random-jokes
//https://<your glitch project name>/random-jokes


예, 작동합니다.



3단계: CRON 작업을 사용하여 해당 API 엔드포인트를 자동으로 호출합니다. 따라서 CRON 작업을 실행하는 도구만 많이 있습니다. Easy Cron 라고 사용중인데 너무 간편하고 사용하기 쉽습니다.



예!!! 텔레그램 봇을 만들었습니다. 탐험할 것이 더 있습니다. 아래에 댓글을 달아 고급 텔레그램 봇 튜토리얼이 필요하다는 것을 알려주십시오.

읽어 주셔서 감사합니다.

트위터:
웹사이트: mohddanish.me
프로젝트: NoCodeAPI

좋은 웹페이지 즐겨찾기