'Ensure the information from the TP-Link router is up to date.
Return boolean if scanning successful.'

def _update_info(self):

    _LOGGER.info('Loading    wireless    clients...')
    url = 'http://{}/data/map_access_wireless_client_grid.json'.format(self.host)
    referer = 'http://{}'.format(self.host)
    username_password = '{}:{}'.format(self.username, self.password)
    b64_encoded_username_password = base64.b64encode(username_password.encode('ascii')).decode('ascii')
    cookie = 'Authorization=Basic    {}'.format(b64_encoded_username_password)
    response = requests.post(url, headers={'referer': referer, 'cookie': cookie}, timeout=4)
    try:
        result = response.json().get('data')
    except ValueError:
        _LOGGER.error("Router    didn't    respond    with    JSON.    Check    if    credentials    are    correct.")
        return False
    if result:
        self.last_results = {device['mac_addr'].replace('-', ':'): device['name'] for device in result}
        return True
    return False
