mirror of https://github.com/home-assistant/core
32 lines
1.2 KiB
Python
32 lines
1.2 KiB
Python
"""application_credentials platform for Google Drive."""
|
|
|
|
from homeassistant.components.application_credentials import AuthorizationServer
|
|
from homeassistant.core import HomeAssistant
|
|
from homeassistant.helpers.config_entry_oauth2_flow import (
|
|
AUTH_CALLBACK_PATH,
|
|
MY_AUTH_CALLBACK_PATH,
|
|
)
|
|
|
|
|
|
async def async_get_authorization_server(hass: HomeAssistant) -> AuthorizationServer:
|
|
"""Return authorization server."""
|
|
return AuthorizationServer(
|
|
"https://accounts.google.com/o/oauth2/v2/auth",
|
|
"https://oauth2.googleapis.com/token",
|
|
)
|
|
|
|
|
|
async def async_get_description_placeholders(hass: HomeAssistant) -> dict[str, str]:
|
|
"""Return description placeholders for the credentials dialog."""
|
|
if "my" in hass.config.components:
|
|
redirect_url = MY_AUTH_CALLBACK_PATH
|
|
else:
|
|
ha_host = hass.config.external_url or "https://YOUR_DOMAIN:PORT"
|
|
redirect_url = f"{ha_host}{AUTH_CALLBACK_PATH}"
|
|
return {
|
|
"oauth_consent_url": "https://console.cloud.google.com/apis/credentials/consent",
|
|
"more_info_url": "https://www.home-assistant.io/integrations/google_drive/",
|
|
"oauth_creds_url": "https://console.cloud.google.com/apis/credentials",
|
|
"redirect_url": redirect_url,
|
|
}
|