core/homeassistant/components/whois/const.py

50 lines
1.6 KiB
Python

"""Constants for the Whois integration."""
from __future__ import annotations
from datetime import timedelta
import logging
from typing import Final
from homeassistant.const import Platform
DOMAIN: Final = "whois"
PLATFORMS = [Platform.SENSOR]
LOGGER = logging.getLogger(__package__)
SCAN_INTERVAL = timedelta(hours=24)
ATTR_EXPIRES = "expires"
ATTR_NAME_SERVERS = "name_servers"
ATTR_REGISTRAR = "registrar"
ATTR_UPDATED = "updated"
# Mapping of ICANN status codes to Home Assistant status types.
# From https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-en
STATUS_TYPES = {
"addPeriod": "add_period",
"autoRenewPeriod": "auto_renew_period",
"inactive": "inactive",
"active": "active",
"pendingCreate": "pending_create",
"pendingRenew": "pending_renew",
"pendingRestore": "pending_restore",
"pendingTransfer": "pending_transfer",
"pendingUpdate": "pending_update",
"redemptionPeriod": "redemption_period",
"renewPeriod": "renew_period",
"serverDeleteProhibited": "server_delete_prohibited",
"serverHold": "server_hold",
"serverRenewProhibited": "server_renew_prohibited",
"serverTransferProhibited": "server_transfer_prohibited",
"serverUpdateProhibited": "server_update_prohibited",
"transferPeriod": "transfer_period",
"clientDeleteProhibited": "client_delete_prohibited",
"clientHold": "client_hold",
"clientRenewProhibited": "client_renew_prohibited",
"clientTransferProhibited": "client_transfer_prohibited",
"clientUpdateProhibited": "client_update_prohibited",
"ok": "ok",
}