[node.js 스팀봇 강좌] #2. steem.js를 이용해서 보팅해보기

in #kr7 years ago (edited)

지난 연재

[node.js 스팀봇 강좌] #1. steem.js 라이브러리 이용하기


이번에는 steem.js 라이브러리를 활용해서 포스팅에 보팅을 해보는 시간을 갖겠습니다.

처음에는 steem.js 라이브러리를 만든 사람이 하도 설명서를 불친절하게 만들어서 서운한 감이 없지 않았는데, 이런 저런 시도를 하다보니 이렇게 단순명료하게 api들을 구성했기 때문에 따로 메뉴얼이 없었구나라는 생각이 들었지요.

보팅도 지난 연재에서의 계정정보 조회와 마찬가지로 단순한 함수 한번 호출로 이루어지는데, steem.js의 홈페이지(https://github.com/steemit/steem-js/tree/master/doc#broadcast)에 나와있는 설명은 다음과 같습니다.

들어가는 변수들을 설명드리면 다음과 같습니다.

  • wif : 보팅을 하는데 필요한 권한으로, 스팀잇 홈페이지 '지갑(wallet)'화면의 permission 탭을 선택하면 나오는 네가지 인증키 중 첫번째인 posting의 키값입니다. 바로 보이는 posting키값은 스팀잇 비밀번호처럼 생겼는데 가짜값이고 진짜 값은 항목 우측의 'show private key'버튼을 눌러야 나옵니다.
  • voter: 본인의 아이디입니다.
  • author: 보팅하는 대상 포스팅의 저자입니다.
  • permlink: 보팅하는 대상 포스팅의 고유 주소로 포스팅 url의 가장 마지막 '/'이후 주소입니다. 예를 들어 https://steemkr.com/kr-market/@minari/4nmfol-kr-market 와 같은 링크에서는 '4nmfol-kr-market' 이부분이 permlink가 됩니다.
  • weight: 보팅파워를 설정하는데 0~10000사이의 값을 입력하면 100으로 나눈 0~100 사이의 보팅이 됩니다. 통상 500스팀을 보유해야 보팅게이지가 나와서 0~100%사이를 선택하게 되는데, steem.js를 사용하면 누구라도 더 세분화된 보팅이 가능합니다.

이와 같이 필요한 입력정보를 모두 입력한 node.js파일(예를 들면 test.js)를 편집기 또는 커맨드창에서 실행시키면 수초간의 처리시간 후에 보팅이 완료되는 것을 보실 수 있습니다.

소스코드


소스코드 중 wif에는 본인의 인증키를 넣어야 하며, 정보보안을 위해 '*'로 표시하였습니다.

실행결과 (편집기 log)

실행결과 (포스팅에 보팅된 모습)

정말 간단한 몇 줄로도 보팅이 가능한 것을 확인하였습니다. ^^

게다가 자바스크립트도 굉장히 매력적인 언어입니다.

Sort:  

이해가 올듯 하면서도 어렵네여....

Amezing story

그럼 조건을 줘서 한명의 대상이 아닌 여러 대상에게 보팅하게끔 만들려면
author부분에 조건을 주어 만들어야하나요?
아니면 다른부분을 새롭게 추가시켜 만들어야 하나요..?

여러명의 대상을 배열에 넣고, 돌아가면서 보팅하면 될꺼에요.

Coin Marketplace

STEEM 0.28
TRX 0.11
JST 0.034
BTC 66038.71
ETH 3178.89
USDT 1.00
SBD 4.05