Safe Haskell | None |
---|---|
Language | Haskell2010 |
See https://github.com/fiatjaf/lnurl-rfc/blob/master/lnurl-channel.md.
Workflow
LN SERVICE
provides a URL forLNURL-channel
.LN WALLET
makes aGET
request to this URL.LN SERVICE
responds withResponse
SuccessResponse
.LN WALLET
connects to the node atremoteNode
.LN WALLET
prepare and make aGET
request usingproceed
(followed possibly bycancel
).LN SERVICE
responds withAckResponse
.LN WALLET
awaits anOpenChannel
message.
Synopsis
- proceed :: SuccessResponse -> NodeId -> Bool -> URI
- cancel :: SuccessResponse -> NodeId -> URI
- type NodeId = ByteString
- data SuccessResponse = SuccessResponse {
- remoteNode :: ByteString
- callback :: URI
- k1 :: ByteString
- data Response a
- = Success a
- | ErrorResponse Text
- data AckResponse
Client
proceed :: SuccessResponse -> NodeId -> Bool -> URI Source #
Create the URL for the follow up LNURL-channel request. LN SERVICE
responds with AckResponse
.
cancel :: SuccessResponse -> NodeId -> URI Source #
Create the URL to cancel a LNURL-channel request. LN SERVICE
responds
with AckResponse
.
Types
type NodeId = ByteString Source #
data SuccessResponse Source #
LN SERVICE
responds with Response
SuccessResponse
SuccessResponse | |
|
Instances
Eq SuccessResponse Source # | |
Defined in LnUrl.Channel (==) :: SuccessResponse -> SuccessResponse -> Bool # (/=) :: SuccessResponse -> SuccessResponse -> Bool # | |
Show SuccessResponse Source # | |
Defined in LnUrl.Channel showsPrec :: Int -> SuccessResponse -> ShowS # show :: SuccessResponse -> String # showList :: [SuccessResponse] -> ShowS # | |
ToJSON SuccessResponse Source # | |
Defined in LnUrl.Channel toJSON :: SuccessResponse -> Value # toEncoding :: SuccessResponse -> Encoding # toJSONList :: [SuccessResponse] -> Value # toEncodingList :: [SuccessResponse] -> Encoding # | |
FromJSON SuccessResponse Source # | |
Defined in LnUrl.Channel parseJSON :: Value -> Parser SuccessResponse # parseJSONList :: Value -> Parser [SuccessResponse] # |
data AckResponse Source #
Instances
Eq AckResponse Source # | |
Defined in LnUrl (==) :: AckResponse -> AckResponse -> Bool # (/=) :: AckResponse -> AckResponse -> Bool # | |
Show AckResponse Source # | |
Defined in LnUrl showsPrec :: Int -> AckResponse -> ShowS # show :: AckResponse -> String # showList :: [AckResponse] -> ShowS # | |
ToJSON AckResponse Source # | |
Defined in LnUrl toJSON :: AckResponse -> Value # toEncoding :: AckResponse -> Encoding # toJSONList :: [AckResponse] -> Value # toEncodingList :: [AckResponse] -> Encoding # | |
FromJSON AckResponse Source # | |
Defined in LnUrl parseJSON :: Value -> Parser AckResponse # parseJSONList :: Value -> Parser [AckResponse] # |