Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.html5.notify Namespace Reference

Classes

class  HTML5NotificationService
 
class  HTML5PushCallbackView
 
class  HTML5PushRegistrationView
 

Functions

JsonObjectType _load_config (str filename)
 
def add_jwt (timestamp, target, tag, jwt_secret)
 
HTML5NotificationService|None async_get_service (HomeAssistant hass, ConfigType config, DiscoveryInfoType|None discovery_info=None)
 

Variables

 _LOGGER = logging.getLogger(__name__)
 
string ATTR_ACTION = "action"
 
string ATTR_ACTIONS = "actions"
 
string ATTR_AUTH = "auth"
 
string ATTR_BROWSER = "browser"
 
string ATTR_DISMISS = "dismiss"
 
string ATTR_ENDPOINT = "endpoint"
 
string ATTR_EXPIRATIONTIME = "expirationTime"
 
string ATTR_JWT = "jwt"
 
string ATTR_KEYS = "keys"
 
string ATTR_P256DH = "p256dh"
 
string ATTR_PRIORITY = "priority"
 
string ATTR_SUBSCRIPTION = "subscription"
 
string ATTR_TAG = "tag"
 
string ATTR_TTL = "ttl"
 
string ATTR_TYPE = "type"
 
string ATTR_URL = "url"
 
 CALLBACK_EVENT_PAYLOAD_SCHEMA
 
string DEFAULT_PRIORITY = "normal"
 
int DEFAULT_TTL = 86400
 
 DISMISS_SERVICE_SCHEMA
 
tuple HTML5_SHOWNOTIFICATION_PARAMETERS
 
int JWT_VALID_DAYS = 7
 
 KEYS_SCHEMA
 
string NOTIFY_CALLBACK_EVENT = "html5_notification"
 
 PLATFORM_SCHEMA
 
 REGISTER_SCHEMA
 
string REGISTRATIONS_FILE = "html5_push_registrations.conf"
 
 SCHEMA_WS_APPKEY
 
 SUBSCRIPTION_SCHEMA
 
int VAPID_CLAIM_VALID_HOURS = 12
 
string WS_TYPE_APPKEY = "notify/html5/appkey"
 

Detailed Description

HTML5 Push Messaging notification service.

Function Documentation

◆ _load_config()

JsonObjectType homeassistant.components.html5.notify._load_config ( str  filename)
private
Load configuration.

Definition at line 204 of file notify.py.

◆ add_jwt()

def homeassistant.components.html5.notify.add_jwt (   timestamp,
  target,
  tag,
  jwt_secret 
)
Create JWT json to put into payload.

Definition at line 548 of file notify.py.

◆ async_get_service()

HTML5NotificationService | None homeassistant.components.html5.notify.async_get_service ( HomeAssistant  hass,
ConfigType  config,
DiscoveryInfoType | None   discovery_info = None 
)
Get the HTML5 push notification service.

Definition at line 160 of file notify.py.

Variable Documentation

◆ _LOGGER

homeassistant.components.html5.notify._LOGGER = logging.getLogger(__name__)
private

Definition at line 51 of file notify.py.

◆ ATTR_ACTION

string homeassistant.components.html5.notify.ATTR_ACTION = "action"

Definition at line 76 of file notify.py.

◆ ATTR_ACTIONS

string homeassistant.components.html5.notify.ATTR_ACTIONS = "actions"

Definition at line 77 of file notify.py.

◆ ATTR_AUTH

string homeassistant.components.html5.notify.ATTR_AUTH = "auth"

Definition at line 71 of file notify.py.

◆ ATTR_BROWSER

string homeassistant.components.html5.notify.ATTR_BROWSER = "browser"

Definition at line 67 of file notify.py.

◆ ATTR_DISMISS

string homeassistant.components.html5.notify.ATTR_DISMISS = "dismiss"

Definition at line 80 of file notify.py.

◆ ATTR_ENDPOINT

string homeassistant.components.html5.notify.ATTR_ENDPOINT = "endpoint"

Definition at line 69 of file notify.py.

◆ ATTR_EXPIRATIONTIME

string homeassistant.components.html5.notify.ATTR_EXPIRATIONTIME = "expirationTime"

Definition at line 73 of file notify.py.

◆ ATTR_JWT

string homeassistant.components.html5.notify.ATTR_JWT = "jwt"

Definition at line 86 of file notify.py.

◆ ATTR_KEYS

string homeassistant.components.html5.notify.ATTR_KEYS = "keys"

Definition at line 70 of file notify.py.

◆ ATTR_P256DH

string homeassistant.components.html5.notify.ATTR_P256DH = "p256dh"

Definition at line 72 of file notify.py.

◆ ATTR_PRIORITY

string homeassistant.components.html5.notify.ATTR_PRIORITY = "priority"

Definition at line 81 of file notify.py.

◆ ATTR_SUBSCRIPTION

string homeassistant.components.html5.notify.ATTR_SUBSCRIPTION = "subscription"

Definition at line 66 of file notify.py.

◆ ATTR_TAG

string homeassistant.components.html5.notify.ATTR_TAG = "tag"

Definition at line 75 of file notify.py.

◆ ATTR_TTL

string homeassistant.components.html5.notify.ATTR_TTL = "ttl"

Definition at line 83 of file notify.py.

◆ ATTR_TYPE

string homeassistant.components.html5.notify.ATTR_TYPE = "type"

Definition at line 78 of file notify.py.

◆ ATTR_URL

string homeassistant.components.html5.notify.ATTR_URL = "url"

Definition at line 79 of file notify.py.

◆ CALLBACK_EVENT_PAYLOAD_SCHEMA

homeassistant.components.html5.notify.CALLBACK_EVENT_PAYLOAD_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Required(ATTR_TAG): cv.string,
4  vol.Required(ATTR_TYPE): vol.In(["received", "clicked", "closed"]),
5  vol.Required(ATTR_TARGET): cv.string,
6  vol.Optional(ATTR_ACTION): cv.string,
7  vol.Optional(ATTR_DATA): dict,
8  }
9 )

Definition at line 131 of file notify.py.

◆ DEFAULT_PRIORITY

string homeassistant.components.html5.notify.DEFAULT_PRIORITY = "normal"

Definition at line 82 of file notify.py.

◆ DEFAULT_TTL

int homeassistant.components.html5.notify.DEFAULT_TTL = 86400

Definition at line 84 of file notify.py.

◆ DISMISS_SERVICE_SCHEMA

homeassistant.components.html5.notify.DISMISS_SERVICE_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Optional(ATTR_TARGET): vol.All(cv.ensure_list, [cv.string]),
4  vol.Optional(ATTR_DATA): dict,
5  }
6 )

Definition at line 116 of file notify.py.

◆ HTML5_SHOWNOTIFICATION_PARAMETERS

tuple homeassistant.components.html5.notify.HTML5_SHOWNOTIFICATION_PARAMETERS
Initial value:
1 = (
2  "actions",
3  "badge",
4  "body",
5  "dir",
6  "icon",
7  "image",
8  "lang",
9  "renotify",
10  "requireInteraction",
11  "tag",
12  "timestamp",
13  "vibrate",
14 )

Definition at line 144 of file notify.py.

◆ JWT_VALID_DAYS

int homeassistant.components.html5.notify.JWT_VALID_DAYS = 7

Definition at line 95 of file notify.py.

◆ KEYS_SCHEMA

homeassistant.components.html5.notify.KEYS_SCHEMA
Initial value:
1 = vol.All(
2  dict,
3  vol.Schema(
4  {vol.Required(ATTR_AUTH): cv.string, vol.Required(ATTR_P256DH): cv.string}
5  ),
6 )

Definition at line 98 of file notify.py.

◆ NOTIFY_CALLBACK_EVENT

string homeassistant.components.html5.notify.NOTIFY_CALLBACK_EVENT = "html5_notification"

Definition at line 141 of file notify.py.

◆ PLATFORM_SCHEMA

homeassistant.components.html5.notify.PLATFORM_SCHEMA
Initial value:
1 = NOTIFY_PLATFORM_SCHEMA.extend(
2  {
3  vol.Optional("gcm_sender_id"): cv.string,
4  vol.Optional("gcm_api_key"): cv.string,
5  vol.Required(ATTR_VAPID_PUB_KEY): cv.string,
6  vol.Required(ATTR_VAPID_PRV_KEY): cv.string,
7  vol.Required(ATTR_VAPID_EMAIL): cv.string,
8  }
9 )

Definition at line 56 of file notify.py.

◆ REGISTER_SCHEMA

homeassistant.components.html5.notify.REGISTER_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Required(ATTR_SUBSCRIPTION): SUBSCRIPTION_SCHEMA,
4  vol.Required(ATTR_BROWSER): vol.In(["chrome", "firefox"]),
5  vol.Optional(ATTR_NAME): cv.string,
6  }
7 )

Definition at line 123 of file notify.py.

◆ REGISTRATIONS_FILE

string homeassistant.components.html5.notify.REGISTRATIONS_FILE = "html5_push_registrations.conf"

Definition at line 53 of file notify.py.

◆ SCHEMA_WS_APPKEY

homeassistant.components.html5.notify.SCHEMA_WS_APPKEY
Initial value:
1 = websocket_api.BASE_COMMAND_MESSAGE_SCHEMA.extend(
2  {vol.Required("type"): WS_TYPE_APPKEY}
3 )

Definition at line 89 of file notify.py.

◆ SUBSCRIPTION_SCHEMA

homeassistant.components.html5.notify.SUBSCRIPTION_SCHEMA
Initial value:
1 = vol.All(
2  dict,
3  vol.Schema(
4  {
5  vol.Required(ATTR_ENDPOINT): vol.Url(),
6  vol.Required(ATTR_KEYS): KEYS_SCHEMA,
7  vol.Optional(ATTR_EXPIRATIONTIME): vol.Any(None, cv.positive_int),
8  }
9  ),
10 )

Definition at line 105 of file notify.py.

◆ VAPID_CLAIM_VALID_HOURS

int homeassistant.components.html5.notify.VAPID_CLAIM_VALID_HOURS = 12

Definition at line 96 of file notify.py.

◆ WS_TYPE_APPKEY

string homeassistant.components.html5.notify.WS_TYPE_APPKEY = "notify/html5/appkey"

Definition at line 88 of file notify.py.