def __init__(<EOL>self, access_token=DEMO_TOKEN, timeout=DEFAULT_TIMEOUT, websession=None<EOL>):
if websession is None:<EOL><INDENT>async def _create_session():<EOL><INDENT>return aiohttp.ClientSession()<EOL><DEDENT>loop = asyncio.get_event_loop()<EOL>self.websession = loop.run_until_complete(_create_session())<EOL><DEDENT>else:<EOL><INDENT>self.websession = websession<EOL><DEDENT>self._timeout = timeout<EOL>self._access_token = access_token<EOL>self._name = None<EOL>self._home_ids = []<EOL>self._all_home_ids = []<EOL>self._homes = {}<EOL>self.sub_manager = None<EOL>
Initialize the Tibber connection.