home-assistant-client-0.1.0.0: Client library for the Home Assistant API.
Safe HaskellNone
LanguageHaskell2010

HomeAssistant.Common.Notify

Description

Implements

Synopsis

Documentation

data NotificationData (platform :: NotificationPlatform) where Source #

Represents platform-specific data for a notification.

Constructors

OtherNotificationData :: Value -> NotificationData 'OtherPlatform

A general constructor that can be used to pass arbitrary JSON data to the notification provider.

AppleNotificationData :: AppleNotificationData -> NotificationData 'Apple 

Instances

Instances details
ToJSON (NotificationData platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Show (NotificationData platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Methods

showsPrec :: Int -> NotificationData platform -> ShowS #

show :: NotificationData platform -> String #

showList :: [NotificationData platform] -> ShowS #

Eq (NotificationData platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Methods

(==) :: NotificationData platform -> NotificationData platform -> Bool #

(/=) :: NotificationData platform -> NotificationData platform -> Bool #

data Notification (platform :: NotificationPlatform) Source #

Instances

Instances details
ToJSON (Notification platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Methods

toJSON :: Notification platform -> Value #

toEncoding :: Notification platform -> Encoding #

toJSONList :: [Notification platform] -> Value #

toEncodingList :: [Notification platform] -> Encoding #

omitField :: Notification platform -> Bool #

Generic (Notification platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Associated Types

type Rep (Notification platform) 
Instance details

Defined in HomeAssistant.Common.Notify

type Rep (Notification platform) = D1 ('MetaData "Notification" "HomeAssistant.Common.Notify" "home-assistant-client-0.1.0.0-52CqQ6sONoKHixgMqSwY6f" 'False) (C1 ('MetaCons "MkNotification" 'PrefixI 'True) ((S1 ('MetaSel ('Just "notificationMessage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "notificationTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "notificationData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (NotificationData platform))) :*: S1 ('MetaSel ('Just "notificationTarget") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)))))

Methods

from :: Notification platform -> Rep (Notification platform) x #

to :: Rep (Notification platform) x -> Notification platform #

Show (Notification platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Methods

showsPrec :: Int -> Notification platform -> ShowS #

show :: Notification platform -> String #

showList :: [Notification platform] -> ShowS #

Eq (Notification platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

Methods

(==) :: Notification platform -> Notification platform -> Bool #

(/=) :: Notification platform -> Notification platform -> Bool #

type Rep (Notification platform) Source # 
Instance details

Defined in HomeAssistant.Common.Notify

type Rep (Notification platform) = D1 ('MetaData "Notification" "HomeAssistant.Common.Notify" "home-assistant-client-0.1.0.0-52CqQ6sONoKHixgMqSwY6f" 'False) (C1 ('MetaCons "MkNotification" 'PrefixI 'True) ((S1 ('MetaSel ('Just "notificationMessage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "notificationTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "notificationData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (NotificationData platform))) :*: S1 ('MetaSel ('Just "notificationTarget") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)))))

notification :: forall (platform :: NotificationPlatform). Text -> Notification platform Source #

notification message constructs a Notification containing message. Can be used to then change other properties of the resulting Notification.

setNotificationTitle :: forall (platform :: NotificationPlatform). Maybe Text -> Notification platform -> Notification platform Source #

setNotificationTitle title notification sets notification's title.

setNotificationData :: forall (platform :: NotificationPlatform). Maybe (NotificationData platform) -> Notification platform -> Notification platform Source #

setNotificationData data notification sets notification's data.

notify :: forall (platform :: NotificationPlatform). Text -> Notification platform -> HA Value Source #

notify device notification is a wrapper around callService that uses the notifications service to send notification to device.