module Text.XML.Twiml.Verbs.Dial
( dial
, dial'
, Dial
, DialF
, DialAttributes
, dialNoun
, DialNoun
, DialNounF
, client
, Client
, ClientF
, ClientAttributes
, conference
, Conference
, ConferenceF
, ConferenceAttributes
, number
, Number
, NumberF
, NumberAttributes
, queue
, Queue
, QueueF
, QueueAttributes
, sip
, Sip
, SipF
, SipAttributes
) where
import Data.Void
import Text.XML.Twiml.Internal
import Text.XML.Twiml.Internal.Twiml
import Text.XML.Twiml.Types
dial :: IsTwimlLike f Dial => String -> DialAttributes -> TwimlLike f Dial ()
dial a b = iliftF . inj $ DialF (pure a) b ()
dial' :: IsTwimlLike f Dial => Either DialNoun String -> DialAttributes -> TwimlLike f Dial ()
dial' a b = iliftF . inj $ DialF a b ()
dialNoun :: TwimlLike DialNounF i Void -> DialNoun
dialNoun = DialNoun
client :: IsTwimlLike f Client => String -> ClientAttributes -> TwimlLike f Client a
client a b = iliftF . inj $ ClientF a b
conference :: IsTwimlLike f Conference => String -> ConferenceAttributes -> TwimlLike f Conference a
conference a b = iliftF . inj $ ConferenceF a b
number :: IsTwimlLike f Number => String -> NumberAttributes -> TwimlLike f Number a
number a b = iliftF . inj $ NumberF a b
queue :: IsTwimlLike f Queue => String -> QueueAttributes -> TwimlLike f Queue a
queue a b = iliftF . inj $ QueueF a b
sip :: IsTwimlLike f Sip => URL -> SipAttributes -> TwimlLike f Sip a
sip a b = iliftF . inj $ SipF a b