Robert Hillis ad65fc27bc
Add Google Mail integration (#82637)
* Add Google Mail integration

* oops

* prettier

* Add email service

* adjustments

* update

* move email to notify

* break out services

* tweaks

* Add CC and BCC support

* drop scope check, breakout tests

* use abstract auth

* tweak

* bump dependency

* dependency bump

* remove oauth2client
2023-01-07 11:59:14 -08:00

31 lines
959 B
Python

"""Entity representing a Google Mail account."""
from __future__ import annotations
from homeassistant.helpers.entity import DeviceInfo, Entity, EntityDescription
from .api import AsyncConfigEntryAuth
from .const import DOMAIN, MANUFACTURER
class GoogleMailEntity(Entity):
"""An HA implementation for Google Mail entity."""
_attr_has_entity_name = True
def __init__(
self,
auth: AsyncConfigEntryAuth,
description: EntityDescription,
) -> None:
"""Initialize a Google Mail entity."""
self.auth = auth
self.entity_description = description
self._attr_unique_id = (
f"{auth.oauth_session.config_entry.entry_id}_{description.key}"
)
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, auth.oauth_session.config_entry.entry_id)},
manufacturer=MANUFACTURER,
name=auth.oauth_session.config_entry.unique_id,
)