1.0.0 • Published 5 years ago
bpl-wrapper
Licence
ISC
Version
1.0.0
Deps
2
Size
6 kB
Vulns
23
Weekly
0
bpl-wrapper
Bpl wrapper é um módulo que facilita o uso da API da blue pheonix, também com algumas funções pra você personalizar a conexão websocket!
Como usar
Antes você tem que invocar a classe do módulo.
const BP = require("bpl-wrapper")
const BPClient = new BP("id", options)
opções
As opções são um objeto que você passa depois de id, elas controlam o comportamento ao perder a conexão ws com a api.
| propriedade | sobre | tipo | padrão |
|---|---|---|---|
| id | id do seu bot | string |
undefined |
| options.reconnect | websocket deve tentar reconectar? | boolean |
true |
| options.delay | quanto tempo deve demorar pra reconectar | number |
2000 |
exemplo de personalização
const BPClient = new BP("720063826652823594", { reconnect: true, delay: 7800 }) //se perder a conexão, esperar 7,8 segundos pra tentar se reconectar.
Caso queira que o módulo não tente se reconectar.
const BPClient = new BP("720063826652823594", { reconnect: false }) //não reconectar.
eventos
Os eventos são a principal coisa desse módulo, com eles você consegue por exemplo, decidir oque acontece quando alguém vota no seu bot
| nome | sobre | retorna |
|---|---|---|
| ready | disparado quando a conexão é feita com sucesso. | objeto da conexão websocket, exemplo, o ID da conexão. |
| vote_create | disparado quando alguém vota no seu bot. | dados do seu bot, data de quando foi feito o voto (em milissegundos) e dados da pessoa que votou nele. |
| loss_connection | disparado quando a conexão websocket é perdida. | nada. |
como ouvir os eventos
seguindo o código acima, veja esse exemplo:
const BP = require("bpl-wrapper")
const BPClient = new BP("720063826652823594", { reconnect: true, delay: 7800 })
BPClient.on("ready" /* assistindo o evento "ready" */, (socket) => {
console.log("conectado com sucesso na API, id do websocket:", socket.id)
//se você for curioso, dê um console.log(socket)
})
BPClient.on("vote_create" /* evento disparado quando votam no seu bot */, (user) => {
console.log("novo voto!", user)
})
BPClient.on("loss_connection", () => {
console.log("conexão perdida!")
})
funções
esse módulo também possuí funções para pegar algumas informações da API!
| função | sobre | parâmetros | tipo | obrigatório |
|---|---|---|---|---|
| fetchUser | Procura um usuário na bluepheonix e retorna informações dele | userID - id do usuário |
string |
sim |
| fetchBot | Procura um bot na bluephoenix e retorna informações dele | botID - id do bot |
string |
sim |
exemplos
Por padrão as funções retornam uma promise, então você deve usar then() ou await.
const BP = require("bpl-wrapper")
const BPClient = new BP("720063826652823594", { reconnect: true, delay: 7800 })
BPClient.fetchUser("470976775145390082").then(user => {
console.log(user)
}).catch((e) => {
console.log("aconteceu um erro!", e)
})
//com async/await
(async () => {
const user = await BPClient.fetchUser("470976775145390082")
console.log(user)
})()
//pegar algum bot na bluephoenix
BPClient.fetchBot("733504773021499423").then(bot => {
console.log(bot)
}).catch((e) => {
console.log("aconteceu um erro!", e)
})
//com async/await
(async () => {
const bot = await BPClient.fetchBot("733504773021499423")
console.log(bot)
})
Espero que esse módulo te ajude!