mirror of
https://github.com/aljazceru/breez-sdk-docs.git
synced 2025-12-19 06:44:19 +01:00
fix examples
This commit is contained in:
@@ -76,20 +76,24 @@ The first step is to register a new node
|
|||||||
```swift
|
```swift
|
||||||
do {
|
do {
|
||||||
let seed = try mnemonicToSeed(phrase: "<mnemonics words>");
|
let seed = try mnemonicToSeed(phrase: "<mnemonics words>");
|
||||||
let invite_code = <your greenlight invite code>;
|
let inviteCode = "";
|
||||||
|
|
||||||
// register_node takes either greenlight credentials (certifate & key) or invite code.
|
// register_node takes either greenlight credentials (certifate & key) or invite code.
|
||||||
// At this example we are using the invite code option.
|
// At this example we are using the invite code option.
|
||||||
let credentials = try registerNode(network: Network.bitcoin, seed: seed, inviteCode: inviteCode);
|
let credentials = try registerNode(network: Network.bitcoin, seed: seed, registerCredentials: nil, inviteCode: inviteCode);
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Recovering an existing node
|
## Recovering an existing node
|
||||||
```swift
|
```swift
|
||||||
|
do {
|
||||||
let seed = try mnemonicToSeed(phrase: "<mnemonics words>");
|
let seed = try mnemonicToSeed(phrase: "<mnemonics words>");
|
||||||
let credentials = try recoverNode(network: Network.bitcoin, seed: seed);
|
let credentials = try recoverNode(network: Network.bitcoin, seed: seed);
|
||||||
|
} catch {
|
||||||
|
// handle error
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Once the credentials are retrieved they should be saved in a secured storage.
|
Once the credentials are retrieved they should be saved in a secured storage.
|
||||||
@@ -106,29 +110,29 @@ class SDKListener: EventListener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create the default config
|
// Create the default config
|
||||||
let config = breez_sdk.defaultConfig(envType: EnvironmentType.production)
|
var config = defaultConfig(envType: EnvironmentType.production)
|
||||||
|
|
||||||
// Customize the config object according to your needs
|
// Customize the config object according to your needs
|
||||||
config.apiKey = "your API key";
|
config.apiKey = "your API key";
|
||||||
config.workingDir = "path to an existing directory";
|
config.workingDir = "path to an existing directory";
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let sdkServices = try initServices(config: config, seed: seed, creds: credentials, listener: SDKListener());
|
let sdk = try initServices(config: config, seed: seed, creds: credentials, listener: SDKListener());
|
||||||
try sdkServices.start();
|
try sdk.start();
|
||||||
} catch SdkError.Error(let message) {
|
} catch{
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
At any point we can fetch our balance from the Greenlight node:
|
At any point we can fetch our balance from the Greenlight node:
|
||||||
|
|
||||||
```swift
|
```swift
|
||||||
do {
|
do {
|
||||||
let nodeInfo = try sdkServices.nodeInfo();
|
let nodeInfo = try sdk.nodeInfo();
|
||||||
let lnBalance = nodeInfo.channelsBalanceMsat;
|
let lnBalance = nodeInfo?.channelsBalanceMsat;
|
||||||
let onchainBalance = nodeInfo.onchainBalanceMsat;
|
let onchainBalance = nodeInfo?.onchainBalanceMsat;
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -35,17 +35,17 @@ let lnurlAuthUrl = "lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttvdankjm3lw3skw0
|
|||||||
|
|
||||||
do {
|
do {
|
||||||
let inputType = try parseInput(s: lnurlAuthUrl)
|
let inputType = try parseInput(s: lnurlAuthUrl)
|
||||||
if case .lnUrlAuth(data) = inputType {
|
if case .lnUrlAuth(let data) = inputType {
|
||||||
let result = try sdk.lnurlAuth(data)
|
let result = try sdk.lnurlAuth(reqData: data)
|
||||||
switch result {
|
switch result {
|
||||||
case .ok:
|
case .ok:
|
||||||
print("Successfully authenticated")
|
print("Successfully authenticated")
|
||||||
case .errorStatus(data):
|
case .errorStatus(let data):
|
||||||
print("Failed to authenticate")
|
print("Failed to authenticate")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -31,13 +31,13 @@ if let Ok(LnUrlPay{data: pd}) = parse(lnurl_pay_url).await {
|
|||||||
// lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttsv9un7um9wdekjmmw84jxywf5x43rvv35xgmr2enrxanr2cfcvsmnwe3jxcukvde48qukgdec89snwde3vfjxvepjxpjnjvtpxd3kvdnxx5crxwpjvyunsephsz36jf
|
// lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttsv9un7um9wdekjmmw84jxywf5x43rvv35xgmr2enrxanr2cfcvsmnwe3jxcukvde48qukgdec89snwde3vfjxvepjxpjnjvtpxd3kvdnxx5crxwpjvyunsephsz36jf
|
||||||
let lnurlPayUrl = "lightning@address.com";
|
let lnurlPayUrl = "lightning@address.com";
|
||||||
do {
|
do {
|
||||||
let inputType = try parseInput(s: input)
|
let inputType = try parseInput(s: lnurlPayUrl)
|
||||||
if case .lnUrlPay(data) = inputType {
|
if case .lnUrlPay(let data) = inputType {
|
||||||
let amountSats = inputType.minSendable;
|
let amountSats = data.minSendable;
|
||||||
try sdk.payLnurl(amountSats: amountSats, "comment", reqData: data)
|
try sdk.payLnurl(reqData: data, amountSats: amountSats, comment: "comment")
|
||||||
}
|
}
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
@@ -30,14 +30,14 @@ if let Ok(LnUrlWithdraw{data: wd}) = parse(lnurl_withdraw_url).await {
|
|||||||
let lnurlWithdrawUrl = "lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4exctthd96xserjv9mn7um9wdekjmmw843xxwpexdnxzen9vgunsvfexq6rvdecx93rgdmyxcuxverrvcursenpxvukzv3c8qunsdecx33nzwpnvg6ryc3hv93nzvecxgcxgwp3h33lxk";
|
let lnurlWithdrawUrl = "lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4exctthd96xserjv9mn7um9wdekjmmw843xxwpexdnxzen9vgunsvfexq6rvdecx93rgdmyxcuxverrvcursenpxvukzv3c8qunsdecx33nzwpnvg6ryc3hv93nzvecxgcxgwp3h33lxk";
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let inputType = try parseInput(s: input)
|
let inputType = try parseInput(s: lnurlWithdrawUrl)
|
||||||
if case .lnUrlWithdraw(data) = inputType {
|
if case .lnUrlWithdraw(let data) = inputType {
|
||||||
let amountSat = data.minWithdrawable;
|
let amountSat = data.minWithdrawable;
|
||||||
let description = "Test withdraw"
|
let description = "Test withdraw"
|
||||||
try sdk.withdrawLnurl(amountSats: amountSat, description: "comment", reqData: data)
|
try sdk.withdrawLnurl(reqData: data, amountSats: amountSat, description: "comment")
|
||||||
}
|
}
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -33,8 +33,8 @@ Breez SDK automatically connects your node to the LSP peer and you can now recei
|
|||||||
```swift
|
```swift
|
||||||
do {
|
do {
|
||||||
let invoice = try sdk.receivePayment(amountSats: 3000, description: "Invoice for 3000 sats")
|
let invoice = try sdk.receivePayment(amountSats: 3000, description: "Invoice for 3000 sats")
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -43,8 +43,8 @@ do {
|
|||||||
let bolt11 = "...";
|
let bolt11 = "...";
|
||||||
do {
|
do {
|
||||||
let payment = try sdk.sendPayment(bolt11: bolt11, amountSats: 3000)
|
let payment = try sdk.sendPayment(bolt11: bolt11, amountSats: 3000)
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -53,8 +53,8 @@ do {
|
|||||||
let nodeId = "...";
|
let nodeId = "...";
|
||||||
do {
|
do {
|
||||||
let payment = try sdk.sendSpontaneousPayment(nodeId: nodeId, amountSats: 3000)
|
let payment = try sdk.sendSpontaneousPayment(nodeId: nodeId, amountSats: 3000)
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -46,8 +46,8 @@ do {
|
|||||||
|
|
||||||
// Send your funds to the bellow bitcoin address
|
// Send your funds to the bellow bitcoin address
|
||||||
let address = swapInfo.bitcoinAddress;
|
let address = swapInfo.bitcoinAddress;
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -56,8 +56,8 @@ Once you've sent the funds to the above address, the SDK will monitor this addre
|
|||||||
```swift
|
```swift
|
||||||
do {
|
do {
|
||||||
let swapInfo = try sdk.inProgressSwap()
|
let swapInfo = try sdk.inProgressSwap()
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -71,8 +71,8 @@ In order to execute a refund, you need to supply an on-chain address to where th
|
|||||||
```swift
|
```swift
|
||||||
do {
|
do {
|
||||||
let refundables = try sdk.listRefundables()
|
let refundables = try sdk.listRefundables()
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -81,13 +81,14 @@ Once you have a refundable swap in hand, use the follwing code to execute a refu
|
|||||||
```swift
|
```swift
|
||||||
let destinationAddress = "..."
|
let destinationAddress = "..."
|
||||||
let satPerVbyte = <refund tx fee rate>
|
let satPerVbyte = <refund tx fee rate>
|
||||||
|
|
||||||
do {
|
do {
|
||||||
try sdk.refund(
|
try sdk.refund(
|
||||||
swapAddress: refundable.bitcoinAddress,
|
swapAddress: "",
|
||||||
toAddress: destinationAddress,
|
toAddress: destinationAddress,
|
||||||
satPerVbyte: satPerVbyte)
|
satPerVbyte: satPerVbyte)
|
||||||
} catch SdkError.Error(let message) {
|
} catch {
|
||||||
print(message)
|
// handle error
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
Reference in New Issue
Block a user