arc.codes로 Twitter 봇 구축 ⚡️
소개
이 자습서에서는 arc.codes
@scheduled
기능을 사용하여 일일 가격을 트윗하는 Twitter 봇을 만들 것입니다.스택스는 비트코인의 보안, 자본 및 네트워크가 통합된 새로운 암호화폐로 앱, 스마트 계약 및 디지털 자산을 구축할 수 있습니다.
전제 조건
You can clone the code for this project here: https://github.com/ShawnHosea/stacksbot
1단계: Twitter 앱 만들기
먼저 Twitter 개발자 계정을 설정하여 앱을 만들고 API 키에 대한 액세스 권한을 얻습니다.
앱을 만들려면 다음 지침을 따르세요.
Developer Portal
로 이동하여 클릭합니다.App permissions
로 스크롤하고 Read and Write
로 변경합니다. Keys and tokens
탭으로 이동하여 모든 API 키를 재생성합니다. 안전한 곳에 보관하십시오. 2단계: Architect 앱 생성 및 환경 변수 추가
이제 Architect 프로젝트를 만들 차례입니다. 우리는 Quickstart found on arc.codes을 따를 것입니다.
mkdir twitterApp
cd twitterApp
arc init
다음으로 다음 키를 포함하는
preferences.arc
파일을 만듭니다.arc env CLI command을 사용하여 이러한 API 키를 동기화할 수 있습니다.
다음은
preferences.arc
파일의 모양에 대한 예입니다.# The @env pragma is synced (and overwritten) by running arc env
@env
testing
TWITTER_ACCESS_TOKEN something-for-testing
TWITTER_ACCESS_TOKEN_SECRET something-for-testing
TWITTER_API_KEY something-for-testing
TWITTER_API_SECRET something-for-testing
staging
TWITTER_ACCESS_TOKEN something-for-staging
TWITTER_ACCESS_TOKEN_SECRET something-for-staging
TWITTER_API_KEY something-for-staging
TWITTER_API_SECRET something-for-staging
production
TWITTER_ACCESS_TOKEN something-for-production
TWITTER_ACCESS_TOKEN_SECRET something-for-production
TWITTER_API_KEY something-for-production
TWITTER_API_SECRET something-for-production
3단계: 예약된 기능 만들기
app.arc
파일 @scheduled
pragma에 예약 함수를 추가하여 시작하십시오.@app
init
@static
folder public
@events
@http
get /
# Scheduled function for once a day.
@scheduled
daily rate(1 day)
# @aws
# profile default
# region us-west-1
cd
를 src/scheduled/daily
로 변경하여 위의 두 종속성을 설치하여 함수 내에서 사용할 수 있도록 합니다. src/scheduled/daily
에 넣습니다.const tiny = require('tiny-json-http')
const { TwitterClient } = require('twitter-api-client')
exports.handler = async function scheduled (event) {
const twitterClient = new TwitterClient({
apiKey: process.env.TWITTER_API_KEY,
apiSecret: process.env.TWITTER_API_SECRET,
accessToken: process.env.TWITTER_ACCESS_TOKEN,
accessTokenSecret: process.env.TWITTER_ACCESS_TOKEN_SECRET
})
let url = `https://api.coincap.io/v2/assets/blockstack`
const status = await tiny.get({url})
.then(response => {
let stx = response.body.data
let tweet
if (stx) {
//tweet the $STX price
tweet = 'Daily $STX price: ' + "\n" + "\n" + '$' + stx.priceUsd
}
return tweet
}).catch(err => {
console.error(err)
})
console.log('Log2:', status)
await twitterClient.tweets.statusesUpdate({
status: status
}).then(response => {
console.log("Tweeted!", response)
}).catch(err => {
console.error(err)
})
console.log(JSON.stringify(event, null, 2))
return
}
twitter-api-client
를 통해 로드된 API 키를 사용하여 Twitter 계정을 인증합니다. tiny-json-http
를 사용하여 Coincap.io이 정확한 코드를 앱의
get /
에 배치하여 함수가 작동하는지 확인하기 위해 이 코드를 테스트할 수 있습니다. 이 끝점으로 이동하면 Twitter 피드에 대한 상태 업데이트가 트리거됩니다.결론
Architect 및 Begin은 Twitter API와 인터페이스하기 위한 훌륭한 도구입니다. arc.codes와 Twitter API를 모두 탐색하여 어떤 종류의 봇을 만들 수 있는지 알아보시기 바랍니다!
Reference
이 문제에 관하여(arc.codes로 Twitter 봇 구축 ⚡️), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/begin/build-a-twitter-bot-with-arc-codes-85i텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)