25 lines
849 B
Python
25 lines
849 B
Python
|
"""August util functions."""
|
||
|
|
||
|
import socket
|
||
|
|
||
|
import aiohttp
|
||
|
|
||
|
from homeassistant.core import HomeAssistant, callback
|
||
|
from homeassistant.helpers import aiohttp_client
|
||
|
|
||
|
|
||
|
@callback
|
||
|
def async_create_august_clientsession(hass: HomeAssistant) -> aiohttp.ClientSession:
|
||
|
"""Create an aiohttp session for the august integration."""
|
||
|
# Create an aiohttp session instead of using the default one since the
|
||
|
# default one is likely to trigger august's WAF if another integration
|
||
|
# is also using Cloudflare
|
||
|
#
|
||
|
# The family is set to AF_INET because IPv6 keeps coming up as an issue
|
||
|
# see https://github.com/home-assistant/core/issues/97146
|
||
|
#
|
||
|
# When https://github.com/aio-libs/aiohttp/issues/4451 is implemented
|
||
|
# we can allow IPv6 again
|
||
|
#
|
||
|
return aiohttp_client.async_create_clientsession(hass, family=socket.AF_INET)
|