def __init__(self, *args, **kwargs): self.rooms = kwargs.pop('rooms', []) self.nickname = kwargs.pop('nickname', 'Dropbot') self.cmd_prefix = kwargs.pop('cmd_prefix', '!') self.kos_url = kwargs.pop('kos_url', 'http://kos.cva-eve.org/api/') self.hidden_commands = ['cmd_prefix'] self.last_killdate = datetime.utcnow() self.kill_corps = [int(x) for x in kwargs.pop('kill_corps', [])] self.kills_disabled = kwargs.pop('kills_disabled', '0') == '1' self.kills_muted = False self.office_api_key_keyid = kwargs.pop('office_api_keyid', None) self.office_api_key_vcode = kwargs.pop('office_api_vcode', None) self.redis_pool = ConnectionPool.from_url( kwargs.pop('redis_url', 'redis://localhost:6379/0')) self.redis = Redis(connection_pool=self.redis_pool) self.map = Map.from_json(pkgutil.get_data('dropbot', 'data/map.json')) jid = kwargs.pop('jid', None) password = kwargs.pop('password', None) super(DropBot, self).__init__(jid, password) self.register_plugin('xep_0030') # Service Discovery self.register_plugin('xep_0045') # Multi-User Chat self.register_plugin('xep_0199') # XMPP Ping # Basic bot auto config self.auto_subscribe = False self.auto_authorize = True # Handlers self.add_event_handler('session_start', self.handle_session_start) self.add_event_handler('message', self.handle_message)
def main(): if len(sys.argv) > 1: dbfile = sys.argv[1] try: conn = sqlite3.connect(dbfile) conn.text_factory = str except: print("Unable to open the SDE file at %s\n" % dbfile) else: sys.stderr.write("Usage: {} <db file>\n".format(sys.argv[0])) return 1 sys.stderr.write("Importing Types...\n") data = {} for row in conn.execute("""SELECT typeID, typeName FROM invTypes"""): pk, name = row try: x = name.decode('utf8') except: continue data[long(pk)] = name with open('types.json', 'wb') as f: f.write(dumps(data)) sys.stderr.write("Importing Stations...\n") data = {} for row in conn.execute( """SELECT stationID, solarSystemID FROM staStations"""): pk, val = row data[long(pk)] = long(val) with open('stations.json', 'wb') as f: f.write(dumps(data)) sys.stderr.write("Importing Map...\n") from dropbot.map import Map map = Map() map.from_sde(conn) with open('map.json', 'wb') as f: f.write(map.to_json())
def main(): if len(sys.argv) > 1: dbfile = sys.argv[1] try: conn = sqlite3.connect(dbfile) conn.text_factory = str except: print("Unable to open the SDE file at %s\n" % dbfile) else: sys.stderr.write("Usage: {} <db file>\n".format(sys.argv[0])) return 1 sys.stderr.write("Importing Types...\n") data = {} for row in conn.execute("""SELECT typeID, typeName FROM invTypes"""): pk, name = row try: x = name.decode('utf8') except: continue data[long(pk)] = name with open('types.json', 'wb') as f: f.write(dumps(data)) sys.stderr.write("Importing Stations...\n") data = {} for row in conn.execute("""SELECT stationID, solarSystemID FROM staStations"""): pk, val = row data[long(pk)] = long(val) with open('stations.json', 'wb') as f: f.write(dumps(data)) sys.stderr.write("Importing Map...\n") from dropbot.map import Map map = Map() map.from_sde(conn) with open('map.json', 'wb') as f: f.write(map.to_json())
def __init__(self, *args, **kwargs): self.rooms = kwargs.pop('rooms', []) self.nickname = kwargs.pop('nickname', 'Dropbot') self.cmd_prefix = kwargs.pop('cmd_prefix', '!') self.kos_url = kwargs.pop('kos_url', 'http://kos.cva-eve.org/api/') self.hidden_commands = ['cmd_prefix'] self.last_killdate = datetime.utcnow() self.kill_corps = [int(x) for x in kwargs.pop('kill_corps', [])] self.kills_disabled = kwargs.pop('kills_disabled', '0') == '1' self.kills_muted = False self.office_api_key_keyid = kwargs.pop('office_api_keyid', None) self.office_api_key_vcode = kwargs.pop('office_api_vcode', None) self.market_systems = kwargs.pop('market_systems', ['Jita', 'Amarr', 'Rens', 'Dodixie', 'Hek']) if 'redis_url' in kwargs: self.redis_pool = ConnectionPool.from_url(kwargs.pop('redis_url', 'redis://localhost:6379/0')) self.redis = Redis(connection_pool=self.redis_pool) else: logging.warning('No DROPBOT_REDIS_URL defined, EVE API calls will not be cached!') self.redis = None self.map = Map.from_json(pkgutil.get_data('dropbot', 'data/map.json')) jid = kwargs.pop('jid', None) password = kwargs.pop('password', None) super(DropBot, self).__init__(jid, password) self.register_plugin('xep_0030') # Service Discovery self.register_plugin('xep_0045') # Multi-User Chat self.register_plugin('xep_0199') # XMPP Ping # Basic bot auto config self.auto_subscribe = False self.auto_authorize = True # Handlers self.add_event_handler('session_start', self.handle_session_start) self.add_event_handler('message', self.handle_message)
def test_load_from_package_data(self): m = Map.from_json(pkgutil.get_data('dropbot', 'data/map.json')) self.assertIsNotNone(m)
def setUp(self): self.map = Map.from_json(pkgutil.get_data('dropbot', 'data/map.json'))
def test_load_from_package_data(self): """Check the package data can be correctly loaded into the map""" m = Map.from_json(pkgutil.get_data('dropbot', 'data/map.json')) self.assertIsNotNone(m)