Files
breez-sdk-docs/snippets/swift/BreezSDKExamples/Sources/SendOnchain.swift
2023-11-26 08:50:52 +02:00

55 lines
2.0 KiB
Swift

//
// SendOnchain.swift
//
//
// Created by ruben on 14/11/2023.
//
import Foundation
import BreezSDK
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
}