Files
Ruben aa7c50425a snippets for sweeping funds on channel closes. (#110)
* Bump breez-sdk snippet dependency to 0.2.12

* Bump the Swift snippet macos version to v13

* Bump breez-sdk snippet dependency to 0.2.14

* swiftformat

* redeem_onchain_funds example

* Document swapinfo fields

* example on how to use local breez-sdk package

* fix dart example

* yarn lint

* remove swapinfo docs

* dart fixup

---------

Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
2024-01-31 13:49:20 +01:00

55 lines
2.0 KiB
Swift

//
// SendOnchain.swift
//
//
// Created by ruben on 14/11/2023.
//
import BreezSDK
import Foundation
func GetCurrentFees(sdk: BlockingBreezServices) -> ReverseSwapPairInfo? {
// ANCHOR: estimate-current-reverse-swap-total-fees
let sendAmountSat: UInt64 = 50_000
let currentFees = try? sdk.fetchReverseSwapFees(req: ReverseSwapFeesRequest(sendAmountSat: sendAmountSat))
print("Total estimated fees for reverse swap: \(String(describing: currentFees?.totalEstimatedFees))")
// ANCHOR_END: estimate-current-reverse-swap-total-fees
return currentFees
}
func ListCurrentFees(currentFees: ReverseSwapPairInfo) {
// ANCHOR: get-current-reverse-swap-min-max
print("Minimum amount, in sats: \(currentFees.min)")
print("Maximum amount, in sats: \(currentFees.max)")
// ANCHOR_END: get-current-reverse-swap-min-max
}
func maxReverseSwapAmount(sdk: BlockingBreezServices) -> MaxReverseSwapAmountResponse? {
// ANCHOR: max-reverse-swap-amount
let maxAmount = try? sdk.maxReverseSwapAmount()
print("Max reverse swap amount: \(String(describing: maxAmount?.totalSat))")
// ANCHOR_END: max-reverse-swap-amount
return maxAmount
}
func StartReverseSwap(sdk: BlockingBreezServices, currentFees: ReverseSwapPairInfo) -> SendOnchainResponse? {
// ANCHOR: start-reverse-swap
let destinationAddress = "bc1.."
let amountSat = currentFees.min
let satPerVbyte: UInt32 = 5
let response = try? sdk.sendOnchain(req: SendOnchainRequest(amountSat: amountSat, onchainRecipientAddress: destinationAddress, pairHash: currentFees.feesHash, satPerVbyte: satPerVbyte))
// ANCHOR_END: start-reverse-swap
return response
}
func checkReverseSwap(sdk: BlockingBreezServices) {
// ANCHOR: check-reverse-swaps-status
if let inProgressReverseSwaps = try? sdk.inProgressReverseSwaps() {
for rs in inProgressReverseSwaps {
print("Reverse swap \(rs.id) in progress, status is \(rs.status)")
}
}
// ANCHOR_END: check-reverse-swaps-status
}