mirror of
https://git.wownero.com/lza_menace/lza-wowbot.git
synced 2024-08-15 03:23:51 +00:00
adding registration feature
This commit is contained in:
parent
55137d2afb
commit
7728b2610f
2 changed files with 68 additions and 57 deletions
|
@ -1,10 +1,11 @@
|
|||
import sys, os
|
||||
import pydle
|
||||
import monero
|
||||
import requests
|
||||
import random
|
||||
|
||||
import config
|
||||
import wownero
|
||||
import db
|
||||
|
||||
|
||||
class IRCBot(pydle.Client):
|
||||
async def on_connect(self):
|
||||
|
@ -18,7 +19,25 @@ class IRCBot(pydle.Client):
|
|||
print(f"Target: {target} - Source: {source} - Message: {message}")
|
||||
|
||||
if self.nickname in message:
|
||||
await self.message(target, f"Sup. I don't do a whole lot yet. Have a picture: {random.choice(config.IMAGES)}")
|
||||
await self.message(target, f"Sup. I'm not very helpful yet, but getting there.")
|
||||
elif message.startswith("meme"):
|
||||
await self.message(target, random.choice(config.IMAGES))
|
||||
elif message.startswith("register"):
|
||||
wallet = wownero.Wallet()
|
||||
if not wallet.connected:
|
||||
await self.message(target, f"My connection to the wallet RPC endpoint is broken so I can't do that right now. Paging: {config.ADMIN_NICKNAMES}")
|
||||
if db.User.filter(irc_nick=source):
|
||||
await self.message(target, f"You are already registered. FOH.")
|
||||
else:
|
||||
new_address = wallet.new_address(account=config.ACTIVE_WALLET_ACCOUNT, label=source)
|
||||
u = db.User(
|
||||
irc_nick=source,
|
||||
account_index=config.ACTIVE_WALLET_ACCOUNT,
|
||||
address_index=new_address[0]
|
||||
)
|
||||
u.save()
|
||||
print({"type": "registration", "user": source, "address_index": new_address[0]})
|
||||
await self.message(target, f"Grats bra, you're locked and loaded. Send funds to {new_address[1]}")
|
||||
# elif message.startswith("!proposal "):
|
||||
# split_msg = message.split()
|
||||
# param = split_msg[1]
|
||||
|
@ -43,27 +62,6 @@ class IRCBot(pydle.Client):
|
|||
strip_last = message.split()[1][:-1]
|
||||
strip_first = strip_last[1:]
|
||||
await self.message(target, f"WTF is up {strip_first}! Stay tuned for more cool ass bot shit goin down!")
|
||||
elif message.startswith("!supply"):
|
||||
r = requests.get("https://funding.wownero.com/api/1/wow/supply")
|
||||
if r.status_code == 200:
|
||||
data = r.json()["data"]
|
||||
await self.message(target, f"The current total supply of WOW is {data}")
|
||||
else:
|
||||
await self.message(target, f"I didn't get a valid response from the WFS API. Debug: {r.content}")
|
||||
elif message.startswith("!proposals"):
|
||||
r = requests.get("https://funding.wownero.com/api/1/proposals?status=2")
|
||||
if r.status_code == 200:
|
||||
proposals = []
|
||||
print(r.json())
|
||||
print(r.content)
|
||||
print(r.json()['data'])
|
||||
for prop in r.json()["data"]:
|
||||
print(prop)
|
||||
proposals.append(f"{prop['id']}. {prop['headline']}")
|
||||
print(proposals)
|
||||
await self.message(target, f"Here are the proposals needing fundings: {', '.join(proposals)}")
|
||||
else:
|
||||
await self.message(target, f"I didn't get a valid response from the WFS API. Debug: {r.content}")
|
||||
|
||||
# isadmin = await self.is_admin(source)
|
||||
# print(isadmin)
|
||||
|
|
|
@ -3,16 +3,30 @@ BOT_NICKNAME = 'lza-wowbot'
|
|||
ROOMS = ['wownero', 'secret-bot-testing-facility']
|
||||
ADMIN_NICKNAMES = ['lza_menace']
|
||||
|
||||
# Monero Daemon
|
||||
# Wownero Daemon
|
||||
DAEMON_HOST = 'endpoint or ip address' # ip of the node
|
||||
DAEMON_PORT = 34568 # port the node accepts for rpc calls
|
||||
DAEMON_PROTO = 'http' # protocol used for communications
|
||||
DAEMON_USER = 'username'
|
||||
DAEMON_PASS = 'password'
|
||||
|
||||
# Wownero Wallet
|
||||
WALLET_HOST = 'endpoint or ip address' # ip of the wallet host
|
||||
WALLET_PORT = 8888 # port the wallet accepts for rpc calls
|
||||
WALLET_PROTO = 'http' # protocol used for communications
|
||||
WALLET_USER = 'username'
|
||||
WALLET_PASS = 'password'
|
||||
|
||||
# Registration
|
||||
ACTIVE_WALLET_ACCOUNT = 0
|
||||
|
||||
# Security
|
||||
PASSWORD_SALT = 'salt here' # database salts
|
||||
SECRET_KEY = 'secret session key here' # encrypts the session token
|
||||
|
||||
# DB
|
||||
SQLITE_DB_PATH = './data/wowbot-db.sqlite'
|
||||
|
||||
# IRC
|
||||
IRC_HOST = 'ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion'
|
||||
TELEGRAM_BRIDGE_NAME = 'WowBridge'
|
||||
|
@ -20,36 +34,35 @@ TELEGRAM_JOIN_SUBSTR = 'has joined the Telegram Group'
|
|||
|
||||
# MEMES
|
||||
IMAGES = [
|
||||
'https://i.imgflip.com/44lwio.jpg',
|
||||
'https://i.imgur.com/1j0lAMZ.png',
|
||||
'https://i.imgur.com/3IFtDIQ.jpg',
|
||||
'https://i.imgur.com/49W12pr.png',
|
||||
'https://i.imgur.com/Cly8ERi.jpg',
|
||||
'https://i.imgur.com/DK7fepa.jpg',
|
||||
'https://i.imgur.com/G5lVTQX.jpg',
|
||||
'https://i.imgur.com/HYzcRr2.png',
|
||||
'https://i.imgur.com/Kcmaage.png',
|
||||
'https://i.imgur.com/MS4odnv.gif',
|
||||
'https://i.imgur.com/MXJ2slS.png',
|
||||
'https://i.imgur.com/SPhn9u0.png',
|
||||
'https://i.imgur.com/WQUmuHl.jpg',
|
||||
'https://i.imgur.com/c16qByl.png',
|
||||
'https://i.imgur.com/ck7Uav1.jpg',
|
||||
'https://i.imgur.com/favicon.ico',
|
||||
'https://i.imgur.com/h3PjuVl.jpg',
|
||||
'https://i.imgur.com/i5I0Qrm.jpg',
|
||||
'https://i.imgur.com/i9gKtXe.jpg',
|
||||
'https://i.imgur.com/iSXJluW.jpg',
|
||||
'https://i.imgur.com/ixvottX.png',
|
||||
'https://i.imgur.com/o56reOl.jpg',
|
||||
'https://i.imgur.com/oYB41Hk.png',
|
||||
'https://i.imgur.com/q7n2rEZ.png',
|
||||
'https://i.imgur.com/t0CSrfo.png',
|
||||
'https://i.imgur.com/uDrpKJ8.png',
|
||||
'https://i.imgur.com/uhQGV7b.jpg',
|
||||
'https://i.imgur.com/utjI6MW.png',
|
||||
'https://i.imgur.com/v7clSBi.png',
|
||||
'https://i.imgur.com/vQ9v2ub.png',
|
||||
'https://i.imgur.com/wW0ueSf.gif',
|
||||
'https://i.imgur.com/xyiE9vx.mp4',
|
||||
'https://files.lzahq.tech/wow/memes/44lwio.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/1j0lAMZ.png',
|
||||
'https://files.lzahq.tech/wow/memes/3IFtDIQ.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/49W12pr.png',
|
||||
'https://files.lzahq.tech/wow/memes/Cly8ERi.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/DK7fepa.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/G5lVTQX.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/HYzcRr2.png',
|
||||
'https://files.lzahq.tech/wow/memes/Kcmaage.png',
|
||||
'https://files.lzahq.tech/wow/memes/MS4odnv.gif',
|
||||
'https://files.lzahq.tech/wow/memes/MXJ2slS.png',
|
||||
'https://files.lzahq.tech/wow/memes/SPhn9u0.png',
|
||||
'https://files.lzahq.tech/wow/memes/WQUmuHl.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/c16qByl.png',
|
||||
'https://files.lzahq.tech/wow/memes/ck7Uav1.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/h3PjuVl.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/i5I0Qrm.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/i9gKtXe.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/iSXJluW.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/ixvottX.png',
|
||||
'https://files.lzahq.tech/wow/memes/o56reOl.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/oYB41Hk.png',
|
||||
'https://files.lzahq.tech/wow/memes/q7n2rEZ.png',
|
||||
'https://files.lzahq.tech/wow/memes/t0CSrfo.png',
|
||||
'https://files.lzahq.tech/wow/memes/uDrpKJ8.png',
|
||||
'https://files.lzahq.tech/wow/memes/uhQGV7b.jpg',
|
||||
'https://files.lzahq.tech/wow/memes/utjI6MW.png',
|
||||
'https://files.lzahq.tech/wow/memes/v7clSBi.png',
|
||||
'https://files.lzahq.tech/wow/memes/vQ9v2ub.png',
|
||||
'https://files.lzahq.tech/wow/memes/wW0ueSf.gif',
|
||||
'https://files.lzahq.tech/wow/memes/xyiE9vx.mp4',
|
||||
]
|
||||
|
|
Loading…
Reference in a new issue