Giter Club home page Giter Club logo

monero-tipbot's Introduction

Monero-TipBot

Discord Tipbot built in C++ for Monero/IntenseCoin

Discord: https://discord.gg/TyD4jfU

Compile

Windows

  • Visual Studio 2017: File -> Open -> CMake -> Click CMakeLists.txt

Linux

  • cmake .
  • make

Applications

Tip

Commands

  • !about
  • !help
  • !balance
  • !myaddress
  • !history
  • !withdraw [amount] [address]
  • !withdrawall [address]
  • !give [amount] [@User1 @User2...]
  • !giveall [@User]
  • !tip [amount] [@User1 @User2...]
  • !tipall [@User]
  • !give [amount] [@User1 @User2...]
  • !blockheight
  • !restartwallet

Faucet

Commands

  • !faucet
  • !take

Lottery

Commands

  • !lottery
  • !jackpot
  • !gameinfo
  • !mytickets
  • !buytickets [amount]

Requirements

  • IntenseCon/Monero Daemon
  • IntenseCoin/Monero RPC
  • Discord Token
  • TCP Port 11000 to 11100 free to bind (can be redefined in config)

Dependencies (included)

Windows/Linux

Linux Packages

  • libcurl4-openssl-dev
  • libssl-dev

RPC Setup

You need to download the RPC for the coin you want to setup the bot with, for example, IntenseCoin (https://github.com/valiant1x/intensecoin/releases). Unzip it to whereever you built the TIPBOT.

Deamon setup

Next you'll need to open the daemon for the coin, for example, intensecoind for IntenseCoin.

The file structure should look like this:

  • intensecoind/monerocoind
  • intense-wallet-rpc/monero-wallet-rpc
  • TIPBOT <- This programs executable.
  • Wallets/ <-- this is a directory. This will be created after running TIPBOT.

Discord Token Setup

Navigate to "My Apps" on Discord (https://discordapp.com/developers/applications/me). Click new app, give it a name and description. Click create a bot user. Copy the token generated on that page and open TIPBOT and enter it when prompted. To add a bot user to your account you'll need to get the client id for the bot which is also on that page. Then navigate to this url (https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot) and replace CLIENTID in the url with the client url on the page.

The bot should now be ready to run. Launch it, enter the token, and type !balance and if it returns a balance of 0 then the communication between the bot and the RPC is working correctly.

Author: Brandan Tyler Lasley

  • BTC: 1KsX66J98WMgtSbFA5UZhVDn1iuhN5B6Hm
  • ITNS: iz5ZrkSjiYiCMMzPKY8JANbHuyChEHh8aEVHNCcRa2nFaSKPqKwGCGuUMUMNWRyTNKewpk9vHFTVsHu32X3P8QJD21mfWJogf
  • XMR: 44DudyMoSZ5as1Q9MTV6ydh4BYT6BMCvxNZ8HAgeZo9SatDVixVjZzvRiq9fiTneykievrWjrUvsy2dKciwwoUv15B9MzWS

monero-tipbot's People

Contributors

tylerthefox avatar wowario avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

monero-tipbot's Issues

using embeds for transactions

this would allow you to create custom links in your messages so that tx hash could go to a certain site.

pseudo code for
TOGM#0250: Purchased 5 tickets for 25.00000000 MSR with TX Hash: 4a9716702b7ec087db96d5a1b98ded543fcfc854efd74a42819da75a45c03336 😃
(in python):

hyperlink = "https://msrchain.net/search?value="
txhash = "4a9716702b7ec087db96d5a1b98ded543fcfc854efd74a42819da75a45c03336"
discordAuthor = "TOGM#0250"
tickets = "5"
ticketAmt = "25.00000000"
coinCode = "MSR"

embed=discord.Embed(title="Tickets Purchased", color=0xffd700)
embed.add_field(name="", value=discordAuthor+": Purchased "+ tickets +" tickets for "+ticketAmt+" "+coinCode+" with the TX Hash: "+"["+txhash+"]("+hyperlink+txhash+") :smiley:", inline=True)
return embed

REQUEST: Create wallets to fund Ideas/Improvements.

Hey there, been watching your repo, great job by the way. I was curious if there was a way to fund a wallet for bounties.

For example to create bounty,
!createbounty <TotalAmount> <Request> <Description>

Bot Response:
"<Username> created a bounty for <Description> for <TotalAmount> ITNS"

Then, people would donate to the wallet by using:
!donate <Request> <Amount>

Bot Response:
"<Username> donated <Amount> ITNS for <Description>. You can contribute to the cause by using !donate <Request> amount"

To show bounties:
!showbounty ALL
to show all
and:
!showbounty <request>
to see a specific bounty

Part of the wallet creation would have to be creating a viewkey/ allowing the users to see how much is funded.

REQUEST: config file for RPC.h variables.

this would allow people to allow other monero-based coins to use the bot and give wider adoption.

example of Config.ini:

rpc_filename = "intense-wallet-rpc"
rpc_bind_ip = "127.0.0.1"
rpc_bind_port = "48782"
default_mixins = 4
coin_code = "ITNS"
coin_denom = 100000000.0
wallet_path = "Wallets/"

Welcome Bonus

Hi,
it is an interesting application :)

is it possible to add a welcome bonus to each user?
i.e. upon joining discord, we can give them say 10 coins....
is that possible?

thanks.

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.