<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run_webhook(self, webhook_url, **options):
 """ Convenience method for running bots in webhook mode :Example: Additional documentation on https://core.telegram.org/bots/api#setwebhook """

        loop = asyncio.get_event_loop()
        loop.run_until_complete(self.set_webhook(webhook_url, **options))
        if webhook_url:
            url = urlparse(webhook_url)
            app = self.create_webhook_app(url.path, loop)
            host = os.environ.get("HOST", "0.0.0.0")
            port = int(os.environ.get("PORT", 0)) or url.port

            if AIOHTTP_23:
                app.on_cleanup.append(lambda _: self.session.close())

            web.run_app(app, host=host, port=port)
        else:
            loop.run_until_complete(self.session.close())