{"id":13621619,"url":"https://github.com/greenbigfrog/discordtipbot","last_synced_at":"2025-04-15T01:33:30.257Z","repository":{"id":80745969,"uuid":"54823841","full_name":"greenbigfrog/discordtipbot","owner":"greenbigfrog","description":"A tip bot for use on discordapp.com","archived":true,"fork":false,"pushed_at":"2019-08-14T20:59:59.000Z","size":2235,"stargazers_count":22,"open_issues_count":13,"forks_count":23,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-08-01T21:48:14.475Z","etag":null,"topics":["bot","crystal","discord","tipbot","wallet"],"latest_commit_sha":null,"homepage":null,"language":"Crystal","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/greenbigfrog.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-03-27T10:45:31.000Z","updated_at":"2024-02-09T12:38:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"90ffc9d7-3505-469b-b3ee-d4482cdc832f","html_url":"https://github.com/greenbigfrog/discordtipbot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenbigfrog%2Fdiscordtipbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenbigfrog%2Fdiscordtipbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenbigfrog%2Fdiscordtipbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenbigfrog%2Fdiscordtipbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/greenbigfrog","download_url":"https://codeload.github.com/greenbigfrog/discordtipbot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223654815,"owners_count":17180596,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","crystal","discord","tipbot","wallet"],"created_at":"2024-08-01T21:01:08.745Z","updated_at":"2024-11-08T08:31:17.653Z","avatar_url":"https://github.com/greenbigfrog.png","language":"Crystal","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"# discordtipbot\n\n[![Build Status](https://travis-ci.org/greenbigfrog/discordtipbot.svg?branch=master)](https://travis-ci.org/greenbigfrog/discordtipbot)\n\nHighly configurable tip bot for the chat plattform discord. **DO NOT RUN THIS CODE UNLESS YOU KNOW WHAT YOU ARE DOING!**\n\nInstead of executing this code yourself, feel free to contact me at https://discord.gg/r3NspwB to discuss me hosting it for you.\n\nIf you collect some kind of bounty or donation(s), I'd appreciate you forwarding some of it after your hosting costs.\n\n## Terms\n\nIn no event shall this bot or it's dev be responsible in the event of lost, stolen or misdirected funds.\n\n## About\n- First we launch the main watcher at src/discordtipbot.cr\n- This reads the config file\n- It then launches a fiber for each bot\n\n## Dependencies\n- docker\n\n## Initial setup\n\u003c!--\n- Install core wallet for each currency you plan on running\n- Add the RPC info to each wallets corresponding config file (`rpcuser` and `rpcpassword`)\n- Add `walletnotify=curl --retry 10 -X POST http://127.0.0.1:ABC/?tx=%s` to your wallets config file, replacing `ABC` with the walletnotify port you plan on using\n- It's recommendable to run your node as a full node, but to limit the connections to ~30, since else you might run into performance issues (`maxconnections=30`)\n--\u003e\n\n- Create a overlay network: `docker network create -d overlay --attachable dtb`\n- Clone and cd into this repository: `git clone https://github.com/greenbigfrog/discordtipbot.git`\n- Create a directory which will contain all the tipbot related stuff: `mkdir tipbot`\n- Copy and edit `sample-config.json` into `tipbot`\n- Modify `scripts/postgres-init.sh` to reflect the various coins, which will both create the required databases, as well as initialize a empty schema\n- Launch watchtower to automatically watch for changes to the images (in usual build process made by Travis): `docker run -d --name watchtower --network dtb -v /var/run/docker.sock:/var/run/docker.sock v2tec/watchtower`\n- Start a docker container called `database`, which'll mount a folder called `postgres-data` in the local directory: `docker run -d --name database --network dtb -v $PWD/postgres-data:/var/lib/postgresql/data -v $PWD/../sql/schema.sql:/schema.sql -v $PWD/../scripts/postgres-init.sh:/docker-entrypoint-initdb.d/postgres-init.sh -d postgres:11.1-alpine`\n\n## Building\n`scripts/deploy_to_docker.bash` contains instructions to build both a `dtb-launcher` and `dtb-website` image which will then contain binaries.\n\n## Running\n- Make sure you are in the directory with the config file and postgres data\n- Database: `docker run -d --name database --network dtb -v $PWD/postgres-data:/var/lib/postgresql/data postgres:11.1-alpine`\n- TipBot: `docker run -d --name discordbot --network dtb -v $PWD/config.json:/config.json greenbigfrog/dtb-launcher:latest`\n- Website: `docker run -d --name website --network dtb -v $PWD/config.json:/config.json greenbigfrog/dtb-website:latest`\n- Wallet: `docker run -d --name dogecoind --network dtb -v ~/.dogecoin/:/dogecoin/.dogecoin/ greenbigfrog/dogecoin -printtoconsole`\n\nThe website requires a CF origin certificate to be stored in docker config at /origin_cert.pub and the key at /origin_cert.priv\n\n- cli: `docker run --rm -ti --network dtb -v ~/.dogecoin/:/dogecoin/.dogecoin/ greenbigfrog/dogecoin dogecoin-cli -rpcconnect=dogecoind -rpcuser=a -rpcpassword=b getinfo`\n- psql: `docker run --rm -ti --network dtb postgres:11.1-alpine psql -h database -U docker dogecoin`\n\n## Development\n\nPreferably run your wallets in testnet mode by adding `testnet=1` to each wallets config file during development\n\n## Contributing\n\n1. Fork it ( https://github.com/greenbigfrog/discordtipbot/fork )\n2. Create your feature branch (git checkout -b my-new-feature)\n3. Commit your changes (git commit -am 'Add some feature')\n4. Push to the branch (git push origin my-new-feature)\n5. Create a new Pull Request\n\n## Contributors\n\n- [greenbigfrog](https://github.com/greenbigfrog) Jonathan B. - creator, maintainer\n- [z64](https://github.com/z64) Zac Nowicki - advisor, reviewer\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreenbigfrog%2Fdiscordtipbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreenbigfrog%2Fdiscordtipbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreenbigfrog%2Fdiscordtipbot/lists"}