Giter VIP home page Giter VIP logo

bot-blaze-telegram's Introduction

Bot Blaze Double

A blaze.com, site de aposta online, operada pela empresa Prolific Trade N.V. e bastante popular nas mídias sociais. Em um de seus jogos, o jogador aposta entre 3 cores (vermelho 🔴, preto ⚫️ e branco ⚪️) e o valor apostado pode multiplicar até 14x.

O objetivo deste bot é enviar, após uma analise, sinais do resultado da proxima rodada para grupos/canais/chat do telegram.

❤️ Donation ❤️: ce71c8ba-4c42-4a72-85b4-64fbe3ace08e chave aleatoria NuBank 💜

Analise

  • essa anialise não é 100% eficaz, personalize sua própria análise caso queira melhores resultados;
  • arquivo de analise analise.mjs.

topo

Novidades (v1.0.0)

  • Adicionado opção de analise personalizada

topo

Visualizar

...

topo

Requisitos

topo

Instalação e configurações

Clone o repositório

git clone https://github.com/elizandrodantas/bot-blaze-telegram

ou

Instalar as dependencias

  • npm
npm install bot-blaze-telegram
  • yarn
yarn add bot-blaze-telegram

topo

Uso

import { BotBlazeWithTelegram } from 'bot-blaze-telegram';

new BotBlazeWithTelegram(options).run();

as opções estão detalhadas em opções

topo

Opções

Interface

interface IConstructorClassDad {
    timeAfterWin?: boolean | IOptionsTimePaused;
    timeAfterLoss?: boolean | IOptionsTimePaused;
    refBlaze?: string;
    sticker: ISticker;
    summaryOfResult?: boolean | IOptionsSummaryOfResult;
    gale?: boolean | number;
    messageEnterBet: ICBCurrentAndRecents;
    messageWin: ICBCurrentAndPlayed;
    messageLoss: ICBCurrentAndPlayed;
    messageOfGale: ICBCurrentAndPlayedAndGale;
    analysis?: IAnalysisKitten | IAnalysisKitten[];
}

interface IColorRoll {
    color: string | number;
    roll: number;
}

interface IAnalysisKitten {
    search: IColorRoll[];
    startSearchOf?: number;
    entryColor?: number | string;
    entryRoll?: number;
}

interface IOptionsTimePaused {
    time: number;
    message: string;
}

interface ISticker {
    win: string;
    winGale: string;
    loss: string;
    winWhite: string;
}

interface IOptionsSummaryOfResult {
    interval: number;
    message: (number: INumberSummary, info: IInfoSummary, cb?: (message: string) => void); 
}

interface INumberSummary {
    win: number;
    loss: number;
    gale: number;
    gale1: number;
    gale2: number;
    white: number;
    consecutive: number;
    total: number;
}

interface IInfoSummary {
    date: string;
    lastUpdate: number;
    day: number;
}

interface IDataBlazeResponse {
    id: string;
    color: number;
    roll: number;
    created_at: string;
    server_seed: string;
}

interface IGale {
    sequence: number;
    phase: string;
}

type ICB = (message: string) => void;

type ICBCurrentAndRecents = (currentPlay: IDataBlazeResponse, recents: IDataBlazeResponse[], cb: ICB) => string;

type ICBCurrentAndPlayed = (currentPlay: IDataBlazeResponse, betplayed: IDataBlazeResponse, cb: ICB) => string;

type ICBCurrentAndPlayedAndGale = (currentPlay: IDataBlazeResponse, betplayed: IDataBlazeResponse, gale: IGale, cb: ICB) => string;

Detalhes

  • IConstructorClassDad.timeAfterWin pausa as entradas do bot apos um WIN
    • IConstructorClassDad.timeAfterWin.message - mensagem apresentada quando pausa ativa (padrão: sem mensagem)
    • IConstructorClassDad.timeAfterWin.time - tempo que ficara em pausa em minutos (padrão: 3)
  • IConstructorClassDad.timeAfterLoss pausa as entradas do bot apos um LOSS
    • IConstructorClassDad.timeAfterLoss.message - mensagem apresentada quando pausa ativa (padrão: sem mensagem)
    • IConstructorClassDad.timeAfterLoss.time - tempo que ficara em pausa em minutos (padrão: 3)
  • IConstructorClassDad.refBlaze codigo de referencia blaze
  • IConstructorClassDad.sticker os arquivos devem ficar na pasta sticker na raiz
    • IConstructorClassDad.sticker.win - nome da figura quando resultado: WIN sem GALE
    • IConstructorClassDad.sticker.winGale - nome da figura quando resultado: WIN no GALE
    • IConstructorClassDad.sticker.loss - nome da figura quando resultado: LOSS
    • IConstructorClassDad.sticker.winWhite - nome da figura quando resultado: WHITE
  • IConstructorClassDad.summaryOfResult opções de resumo
    • IConstructorClassDad.summaryOfResult.interval - intervalo para envio de mensagem. obs.: caso valor 1, a cada 1 jogada ele enviara o resumo
    • IConstructorClassDad.summaryOfResult.message - mensagem personalizada
  • IConstructorClassDad.gale caso verdadeiro, não fara entrada nas jogadas gale
  • IConstructorClassDad.messageEnterBet mensagem personalizada de entrada
  • IConstructorClassDad.messageWin mensagem personalizada quando resultado: WIN
  • IConstructorClassDad.messageLoss mensagem personalizada quando resultado: LOSS
  • IConstructorClassDad.messageOfGale mensagem personalizada quando entrar em uma GALE
  • *IConstructorClassDad.analysis opções de analise personalizada

Todas opões com forma de uso:

{
    //tempo após win
    timeAfterWin: true,
    // or
    timeAfterWin: {
        message: "mensagem",
        time: 1
    },

    // tempo após loss
    timeAfterLoss: true,
    // or
    timeAfterLoss: {
        message: "mensagem",
        time: 1
    },
    
    // sticker/figura
    // nessa opção podem ser usado imagens que estão dentro da pasta STICKER
    sticker: {
        win: "win.jpg",
        winGale: "win-in-gale.jpg",
        winWhite: "win-white.jpg",
        loss: "loss.jpg",
    },

    //envio de mensagens com resumo do dia
    summaryOfResult: {
        interval: 2 // a cada 2 jogadas, ele enviara mensagem personalizada abaixo
        message: function(number, info, cb){
            // number - numeros do resumo (todos possiveis estão em interface "INumberSummary")
            // info - informações do resumo (todos possiveis estão em interface "IInfoSummary")
            // cb - esse callback é uma ou mais mensagens que podem ser enviados alem do retorno desta, o valor request apenas uma string ( ex: cb('mensagem sobressalente') )


            // opção de outras mensagens (não obrigatorio)
            cb("mensagem sobressalente");

            return "Total de jogadas: ${number.total}" +
                "\nWins seguidos: ${number.consecutive} ✅" +
                "\nTotal de win: ${number.win} ✅" +
                "\nTotal de loss: ${number.loss} ❌" +
                "\nTaxa de acertividade: ${(number.win / number.total * 100).toFixed(1)}%";
        }
    },

    // Opção de entrada nas jogadas gale
    gale: false, // não entra
    gale: 2, // vai ate a gale 2

    // Mensagem personalizada de entrada
    messageEnterBet: (current, recents, cb) => {
        // current - ultima jogada
        // recents - ultimas 20 jogadas
        // cb - envio de mensagens sobressalentes .:. ex: cb('test callback');

        return "🔎 <b>SINAL ENCONTRADO:</b>\n" +
            `\nENTRE NO ${_getColorNameOrEmoticon(current.color, { emoticon: true })} ${_getColorNameOrEmoticon(current.color, { pt: true, upper: true })}` +
            `\nPROTEJA NO ${_getColorNameOrEmoticon(0, { emoticon: true })} ${_getColorNameOrEmoticon(0, { pt: true, upper: true })}` +
            `\n\n<pre>https://blaze.com/${process.env.REF ? "r/" + process.env.REF : ""}</pre>`;
    },

    // Mensagem personalizada de Win
    messageWin: (current, betplayed, cb) => {
        // current - ultima jogada
        // betplayed - dados da entrada
        // cb - envio de mensagens sobressalentes .:. ex: cb('test callback');

        return `🔸 ENTRAMOS NO ${_getColorNameOrEmoticon(betplayed.color, { emoticon: true })}` +
            `\n🔹 RESULTADO FOI ${_getColorNameOrEmoticon(current.color, { emoticon: true })}`;
    },

    // Mensagem personalizada de Gale
    messageOfGale: (current, betplayed, gale, cb) => {
        // current - ultima jogada
        // betplayed - dados da entrada
        // gale - informações do gale
        // cb - envio de mensagens sobressalentes .:. ex: cb('test callback');

        return `⚠️ <b>ENTROU PRA GALE ${gale.sequence + 1}:</b>\n` +
            `\nENTRE NO ${_getColorNameOrEmoticon(betplayed.color, { emoticon: true })} ${_getColorNameOrEmoticon(betplayed.color, { pt: true, upper: true })}` +
            `\nPROTEJA NO ${_getColorNameOrEmoticon(0, { emoticon: true })} ${_getColorNameOrEmoticon(0, { pt: true, upper: true })}`;
    },

    // Mensagem personalizada de Loss
    messageLoss: (current, betplayed, cb) => {
        // current - ultima jogada
        // betplayed - dados da entrada
        // cb - envio de mensagens sobressalentes .:. ex: cb('test callback');

        return `🔸 ENTRAMOS NO ${_getColorNameOrEmoticon(betplayed.color, { emoticon: true })}` +
            `\n🔹 RESULTADO FOI ${_getColorNameOrEmoticon(current.color, { emoticon: true })}`;
    },

    // Analise personalizada (unitaria)
    analysis: {
        search: [
            { color: "red" },
            { color: "black" }
        ],
        entryColor: "red"
    }

    // Analise personalizada (multiplas)
    // * primeira analise que encontrar, ele ira entrar
    analysis: [
        {
            search: [
                { color: "red" },
                { color: "black" }
            ],
            entryColor: "red"
        },
        {
            search: [
                { color: "black" },
                { color: "red" },
                { color: "black" },
                { color: "red" }
            ],
            entryColor: "black"
        },
        {
            search: [
                { color: "black" },
                { color: "red" },
                { color: "red" },
                { color: "black" }
            ],
            entryColor: "red"
        }
    ]
}

topo

Exemplos

  1. No exemplo1 [example/example-with-dotenv.mjs] usando a ferramenta Dotenv
  2. No exemplo2 [example/example-without-dotenv.mjs] as variáveis ambiente deveram ser setadas direto no sistema ou preenchendo o formulário que será exibido no console

topo

Contato

Instagram: Elizandro Dantas

topo

bot-blaze-telegram's People

Contributors

elizandrodantas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bot-blaze-telegram's Issues

Opções de formas de uso

Alguém sabe me dizer como eu realizo a ativação dessas formas de uso ?
tentei de diversos modos e não obtive sucesso.
Sou novo e queria entender melhor.
imagem_2022-11-11_011608278

No admin premission

ta me dando esse erro alguem consegue ajudar?

✔ bot iniciado com sucesso :)
✔ tudo certo com o chat_id :)
⠇ Iniciando aplicaçãofile:///C:/Users/hulk/bot-blaze-telegram/src/middleware/bot.mjs:262
throw new Error("no admin permission (blaze");
^

Error: no admin permission (blaze
at BotBlazeWithTelegram.run (file:///C:/Users/hulk/bot-blaze-telegram/src/middleware/bot.mjs:262:15)
at async start (file:///C:/Users/hulk/bot-blaze-telegram/example/example-with-dotenv.mjs:55:5)

Começar

Olá!
Alguém me consegue ajudar a começar e a entender como funciona? Pode ser no discord ou por aqui, como preferirem.
Discord: Lipa#4089

Ajuda

O bot liga tudo bem mas as mensagens nao aparecem no chat, ja tentei colocar -100 como alguém disse mas não funciona.

como resolver isso?

Microsoft Windows [versão 10.0.19042.1706]
(c) Microsoft Corporation. Todos os direitos reservados.

C:\Users\pc\Desktop\bot-blaze-telegram-main>npm start

[email protected] start
node src/index.mjs

node:internal/errors:477
ErrorCaptureStackTrace(err);
^

Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'express' imported from C:\Users\pc\Desktop\bot-blaze-telegram-main\src\index.mjs
at new NodeError (node:internal/errors:387:5)
at packageResolve (node:internal/modules/esm/resolve:951:9)
at moduleResolve (node:internal/modules/esm/resolve:1000:20)
at defaultResolve (node:internal/modules/esm/resolve:1214:11)
at nextResolve (node:internal/modules/esm/loader:165:28)
at ESMLoader.resolve (node:internal/modules/esm/loader:844:30)
at ESMLoader.getModuleJob (node:internal/modules/esm/loader:431:18)
at ModuleWrap. (node:internal/modules/esm/module_job:76:40)
at link (node:internal/modules/esm/module_job:75:36) {
code: 'ERR_MODULE_NOT_FOUND'
}

C:\Users\pc\Desktop\bot-blaze-telegram-main>

EnvironmentVariablesError("BOT_TOKEN");

Obtive esse erro ao iniciar, mas o Token está correto e já o uso em outro bot!

[email protected] start
node src/index.mjs


| __ )| | __ _ _______ __ () || |__ | || | ___ __ _ _ __ __ _ _ __ ___
| _ | |/ _ |_ / _ \ \ \ /\ / / | __| '_ \ | |/ _ \ |/ _ \/ _ | '
/ | '_ _
| |
) | | (
| |/ / / \ V V /| | || | | | | | __/ | __/ (| | | | (| | | | | | |
|
/||_,/
_| _/_/ ||_|| || |_|_|_|_|_, || _,|| || ||
|
_/
by: Elizandro Dantas

  • Iniciando servidorfile:///C:/Users/SERVIDOR/Desktop/Bot2/bot-blaze-telegram/src/core/telegram.mjs:30
    throw new EnvironmentVariablesError("BOT_TOKEN");
    ^

EnvironmentVariablesError: error environment veriables: [BOT_TOKEN]
at new Telegram (file:///C:/Users/SERVIDOR/Desktop/Bot2/bot-blaze-telegram/src/core/telegram.mjs:30:15)
at new BotBlazeWithTelegram (file:///C:/Users/SERVIDOR/Desktop/Bot2/bot-blaze-telegram/src/middleware/bot.mjs:16:21)
at start (file:///C:/Users/SERVIDOR/Desktop/Bot2/bot-blaze-telegram/src/index.mjs:23:25)
at file:///C:/Users/SERVIDOR/Desktop/Bot2/bot-blaze-telegram/src/index.mjs:14:5
at C:\Users\SERVIDOR\Desktop\Bot2\bot-blaze-telegram\node_modules\figlet\lib\figlet.js:858:13
at C:\Users\SERVIDOR\Desktop\Bot2\bot-blaze-telegram\node_modules\figlet\lib\node-figlet.js:30:13
at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3)

Node.js v17.8.0

Segundo Gale.

O segundo gale (Terceira entrada) foi removido, ou apenas a mensagem referente a ele?

O sticker do branco.

O sticker do branco não está sendo enviado, no lugar dele, está a figurinha normal de green na entrada ou no gale!

Fiz a busca pelo arquivo win-white.jpg no código e não achei nada relacionado a esse arquivo!

Troca das Figurinhas

A opção para troca de figurinhas em versões anteriores era aqui! (pelo menos onde eu trocava).

sticker: { winNotGale: "", winGaleOne: "", winGaleTwo: "", winWhite: "", loss: "", },

Eu utilizo dessa forma.

sticker: { winNotGale: "1entrada.webp", winGaleOne: "2entrada.webp", winGaleTwo: "3entrada.webp", winWhite: "winb.webp", loss: "loss.webp", },

Nessa nova versão não encontrei a opção do GaleTwo que no meu caso sinaliza a 3ª entrada/tentativa, para trocar a figurinha. Foi removida? É possível trazer de volta? É um recurso interessante!

Possível Bug

Após a ultima atualização, ao iniciar com node example/example-with-dotenv.mjs recebo isso no console.

√ bot iniciado com sucesso :)
√ Tudo certo com o chat_id :)
√ Iniciado com sucesso!
[15/12/2022 16:44:17] status: Rodada Finalizada
2 undefined
0 undefined
1 undefined
0 undefined
2 undefined
1 undefined
1 undefined
2 undefined
2 undefined
[15/12/2022 16:44:22] status: Jogadores Apostando

Esse undefined se repete todas as vezes que a rodada é finalizada.

onde eu usor o import?

Anotação 2022-10-22 144134

import { BotBlazeWithTelegram } from './src/index.mjs';

new BotBlazeWithTelegram(options).run();
onde uso isso?

Question

Hey there i was wondering if there was a way to contact you, i'd like to ask some questions privately

my discord is: NotZyo#1032
and my email is: [email protected]

Bot não encaminha mensagem para canal

Olá, estou usando a versão mais recente e o bot não envia mensagem no canal
ja tentei colocar com - e apenas a numeração mesmo assim não deu certo.
Coloquei também o bot como adm mais mesmo assim não foi.

PARADA

Após cerca de 2 horas ativo, o mesmo para de exibir log de eventos da BLAZE no terminal e para de enviar sinais ao grupo, e nenhuma falha é relatada no terminal.

Usei 3 máquinas diferentes para testar.

Windows 7 32bits
Windows 10 64bits
Ubuntu 18 e 22

SAFE AFTER WIN

Olá,

Como faço pra colocar um tempo depois de um WIN ? pois ele está toda hora mandando sinais.

Alterar mensagens

Eu vi que na parte da instalação tem várias coisas que podem ser modificadas, estava tentando modificar o layout das mensagens para uma forma que ficasse mais agradável pra mim, acontece duas coisas:

  1. salvo mas não altera nada
  2. não salva e diz que não sou o dono do arquivo

estava modificando o arquivo :message.mjs
localizado na pasta: src/static/message.mjs

oq tem errado ?

image
Alguém sabe oq estou fazendo errado ? comecei nessa área de programação agora

ajuda

image
antes estava a funcionar e deixou hoje de funcionar do nada
image

BUG

image
alguem me consegue ajudar pff

bot

Queria saber como pego a roll, que mostra os número das cores e coloco pro bot informa no telegram

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.