async def METHOD_NAME(self) -> None:
    if self._websocket:
        self._websocket = None
        await self._connect.__aexit__(None, None, None)
    self._websocket = await self._connect.__aenter__()
    # make sure we have actually connected
    pong = await self._websocket.ping()
    await pong
    events_to_resend = self._unconfirmed_events
    # Clear the unconfirmed events here, because they are going back through emit
    # and will be added again through the normal checkpointing process
    self._unconfirmed_events = []
    for event in events_to_resend:
        await self.emit(event)