egregius.be

Urban Exploration, PHP and others…

Applet skipped

IFTTT Applet skipped, Unable to make web request: Error: ETIMEDOUT

I’ve been using IFTTT for quite a while now. Until now I only used it to store the data of the Withings body scale in a MySQL database. Now that’s gonna change since Bosch released their IFTTT integration for the Easycontrol CT200 room thermostat. Of course that has to get integrated into Domoticz and Pass2PHP

Unable to make web request: Error: ETIMEDOUT
Unable to make web request: Error: ETIMEDOUT

I’ve seen this error since years in the Withings webhooks activity but because it worked never payed much attention to it. Now for the integration into Domoticz I wanted a clean applet activity history so it’s clearer to analyze and view why something doesn’t work.

At this moment there are 1840 hits on Google for this error. I’ve read a lot of them but didn’t find a answer that worked out of the box. So I had to dig a little deeper.

It appears that IFTTT doens’t like the http2 (or h2) protocol and they also don’t like the “upgrade” header.

This is how I worked around it:

I created a seperate subdomain where http2 isn’t enabled and a .htaccess file removes the upgrade header.

Header unset Upgrade
view raw .htaccess hosted with ❤ by GitHub
<VirtualHost *:80>
ServerName sub.domain.com
DirectoryIndex index.php
DocumentRoot /var/www/sub.domain.com
ErrorLog /var/log/www/error/sub.domain.com.log
CustomLog /var/log/www/access/sub.domain.com.log combined
<Directory /var/www/sub.domain.com>
AllowOverride All
</Directory>
<IfModule mod_rewrite.c>
RewriteEngine off
</IfModule>
</VirtualHost>
view raw sub.domain.com.conf hosted with ❤ by GitHub

That’s it, after these changes the applets run fine and show that they did:

Applet ran
Applet ran

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.