@asyncio.coroutine
def greet(channel, member, sound = True):
- for greeting in get_bot_variable(greetings, []):
+ for greeting in get_bot_variable('greetings', []):
if greeting['channel'] != int(channel.id):
continue
message = ' '.join([member.mention, greeting['message']])
import discord
import logging
import sqlite3
+import uuid
log = logging.getLogger('db')
self.open_db(filename)
self.create_tables()
+ def uuid():
+ return str(uuid.uuid4())
+
def open_db(self, filename):
self.dbh = sqlite3.connect(filename)
self.dbh.row_factory = sqlite3.Row
def create_tables(self):
- cursor = self.query('create table if not exists state (bot_id varchar(32) not null, avatar varchar(128), idle boolean not null default false, last_spoke datetime)')
+ cursor = self.query('create table if not exists state (id char(36) not null, bot_id varchar(32) not null, avatar varchar(128), idle boolean not null default false, last_spoke datetime)')
self.dbh.commit()
def close(self):
sql = 'update state set {} where bot_id=?'.format(', '.join(['{}=?'.format(v) for v in values]))
cursor = self.query(sql, params)
if not cursor.rowcount:
- cursor = self.query('insert into state (bot_id) values (?)', [client.user.id])
+ cursor = self.query('insert into state (id, bot_id) values (?, ?)', [self.uuid(), client.user.id])
cursor = self.query(sql, params)
self.dbh.commit()