New AVM Fritz!box Tools problems

Does anyone else have that issue or is that option working correctly for others?

Can i use the Fritz tools to make an automation bassed on a call (on a special nummber or from a special number)? I want to open my garage door from my phone while not beeing connected tomy home network

I do something like this with an answering machine on my FB. If my Alarm is triggered the alarm dials a number (hosted on the FB) if the call is received from the number of the alarm it bounces it immediately to voice mail (a Gmail account) then the imap integration sees a message from that number and gives an alert on my Dashboard but no reason that couldn’t trigger an automation like you want so it’s definitely doable.

1 Like

You can use the call monitor integration for that:

The sensor has attributes for the incoming and outgoing numbers or names (if available).

1 Like

Alternative: if you make internal calls, hook up an old modem to your Fritz box and use the Phone Modem integration. As soon as that line receives calls or calls with a certain ID trigger actions in HA.

1 Like

Did you find a solution for issue 2 in the meantime?

have the example working but have problems with an automation:

Does any body have an example for reacting only to one caller from the fritzbox phonebook and a specific number ?

So that the automation only reacts to my mobile phone number when calling a special telefon number?

Thanks !

Is there a way to get the old FritzBox device tracker back? Through a custom component or something similar?
The new tools break more than they help.

I need the device tracker for two entities and not for about 150 network devices stored in the FritzBox. And I don’t need another 150 switches to turn off the internet connection of those 150 devices.

It’s great that when setting up FritzBox Tools I can select a room for all devices, but why can’t I deselect or at least disable them there directly?
I have to select every single entry in the list and I don’t even get the MAC address displayed for the duplicate names.

And then all the errors: "Connection pool is full, discarding connection: 192.168.178.1. Connection pool size: 30" and "Exception in async_on_demand_update when dispatching 'fritz-device-update...".

A chance to get a notification when a new device appears in the network doesn’t exist now either?

Apart from the fact that the old device tracker did not require a username and password.

The tools are not usable like this!

So is there any chance to get the old device tracker back?

It is very frustrating!

3 Likes

Same problem here. Very frustrating, and irritating have the log file spilled with those error messages.

1 Like

I have the same errors.
it seems, homeassistant bombards the fritzbox with requests and fritzbox blocks further requests.

Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "<string>", line 3, in raise_from
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.9/http/client.py", line 1345, in getresponse
response.begin()
File "/usr/lib/python3.9/http/client.py", line 307, in begin
version, status, reason = self._read_status()
File "/usr/lib/python3.9/http/client.py", line 268, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/usr/lib/python3.9/socket.py", line 704, in readinto
return self._sock.recv_into(b)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 755, in urlopen
retries = retries.increment(
File "/usr/lib/python3.9/site-packages/urllib3/util/retry.py", line 532, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/usr/lib/python3.9/site-packages/urllib3/packages/six.py", line 770, in reraise
raise value
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 447, in _make_request
self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 336, in _raise_timeout
raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='192.168.0.1', port=49000): Read timed out. (read timeout=60.0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/homeassistant/config_entries.py", line 313, in async_setup
result = await component.async_setup_entry(hass, self) # type: ignore
File "/usr/lib/python3.9/site-packages/homeassistant/components/fritz/__init__.py", line 45, in async_setup_entry
await fritz_tools.async_setup()
File "/usr/lib/python3.9/site-packages/homeassistant/components/fritz/common.py", line 151, in async_setup
await self.hass.async_add_executor_job(self.setup)
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/lib/python3.9/site-packages/homeassistant/components/fritz/common.py", line 155, in setup
self.connection = FritzConnection(
File "/usr/lib/python3.9/site-packages/fritzconnection/core/fritzconnection.py", line 155, in __init__
self.device_manager.add_description(source)
File "/usr/lib/python3.9/site-packages/fritzconnection/core/devices.py", line 75, in add_description
root = get_xml_root(source, timeout=self.timeout, session=self.session)
File "/usr/lib/python3.9/site-packages/fritzconnection/core/utils.py", line 59, in get_xml_root
source = get_content_from(source, timeout=timeout, session=session)
File "/usr/lib/python3.9/site-packages/fritzconnection/core/utils.py", line 41, in get_content_from
with session.get(url, timeout=timeout) as response:
File "/usr/lib/python3.9/site-packages/requests/sessions.py", line 555, in get
return self.request('GET', url, **kwargs)
File "/usr/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python3.9/site-packages/requests/adapters.py", line 529, in send
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='192.168.0.1', port=49000): Read timed out. (read timeout=60.0)

that’s why I get many timeout errors (can’t reach the fritzbox on port 49000 in the browser either for some time)

I now use the old “fritz” integration from an old Home Assistant version as a custom component. So the device tracker and the new device notification work again for now. There is an error at the start of Home Assistant, because the config flow is missing, but that can be tolerated.
Thanks to @arganto for the hint!

@Flop2006 could you please share the old component? I am sick and tired of the new fritzbox tool. Since we switched to it, I don’t remember it working for more than a couple of weeks before new breaking changes, change of logic, new and old bugs and so on. There is nothing working, only bugs from both AVM and the mantainers. I just want to track some devices and not get spammed by new devices entering my guest wifi (even if the option is deactivated!) nor remove hundreds of useless switches. Thanks!!!

My 2 cents: they want to add too many things. Maybe it could be easier to ask if you want some services to be active or not.

2 Likes

I took the three files from https://github.com/home-assistant/core/tree/2021.1.5/homeassistant/components/fritz, put them under /custom_components/fritz/ and changed the content of manifest.json to

{
  "domain": "fritz",
  "name": "AVM FRITZ!Box",
  "version": "1.5",
  "documentation": "https://www.home-assistant.io/integrations/fritz",
  "requirements": ["fritzconnection==1.4.0"],
  "codeowners": []
}

(respectively added the version string).

With the old fritz configuration

device_tracker:
  - platform: fritz
    interval_seconds: 60
    consider_home: 300
    new_device_defaults:
      track_new_devices: false

I can now use the old fritz device tracker and known_devices.yaml again.

1 Like

@Flop2006 I reverted back with your instruction and I finally said bye bye to the buggy, breaking changing, redundant, cumbersome and entity spamming fritzbox tools integration. Thanks!!! People really should learn that less is better.

I think we should open kind of survey to ask people if we really need all these “tools” functions together with the simple device_tracker. I think we need simple device_tracker AND a separate integration for all the fancy tools.

4 Likes

Hi, would be a very nice idea, to get rid of the device tracker - perhaps as an option.
I know have to deativate 149 devices - 5 clicks each… :frowning:
I only want to use the Tools!!

3 Likes

Or an easy include filter. See

Hi, I don’t find any switch, and the documentation only says, you have to activate them manually - but where and how?

Or you could just go to settings > devices > entities, filter by “device_tracker”, select all and deactivate them all with one click.

You can always do some sort of workaround, but is it really the way to go? There are a ton of services and entities that are created for nothing (at least for some users). Since I removed the fritzbox tools and reverted back to the simple fritz device tracker (without bugs, breaking changes, change of logic and everything else we experienced during this months), my HA boots faster. While manually rebooting, I used to see “Fritzbox tools is loading” for seconds. It was one of the slowest integration to boot.
We really should have a way to choose what service(s) we want to use.

1 Like

I’m just saying: don’t over dramatize it. There seems to be a lot of that lately.

1 Like