mirror of
https://github.com/aljazceru/breez-sdk-docs.git
synced 2025-12-17 05:44:20 +01:00
55 lines
2.0 KiB
Swift
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
|
|
}
|