RippleLibSharp Offer Example
Import the necessary libraries
using System.Threading;
using RippleLibSharp.Keys;
using RippleLibSharp.Network;
using RippleLibSharp.Result;
using RippleLibSharp.Transactions;
using RippleLibSharp.Transactions.TxTypes;
Connect to the xrp ledger
var tokenSource = new CancellationTokenSource();
var token = tokenSource.Token;
ConnectionSettings connectInfo = new ConnectionSettings
{
ServerUrls = new string[] { "wss://s1.ripple.com:443", "wss://s2.ripple.com:443" },
LocalUrl = "localhost",
UserAgent = "optional spoof browser user agent",
Reconnect = true
};
NetworkInterface network = new NetworkInterface(connectInfo);
bool didConnect = network.Connect();
if (!didConnect) {
return;
}
Construct the offer transaction *Key code
RippleAddress address = new RippleAddress("");
RippleCurrency takerGets = new RippleCurrency(1.9m);
RippleCurrency takerPays = new RippleCurrency(0.01m, RippleAddress.RIPPLE_ADDRESS_BITSTAMP, "BTC");
Offer off = new Offer
{
TakerPays = takerPays,
TakerGets = takerGets
};
RippleTransaction tx = new RippleOfferTransaction(address, off);
Sign and submit the transaction
tx.AutoRequestFee(
network,
token);
tx.AutoRequestSequence(
address,
network,
token);
RippleIdentifier secret = new RippleSeedAddress("the secret");
tx.SignLocalRippled(secret);
tx.SignRippleDotNet(secret);
tx.SignRippleLibSharp(secret);
Response<RippleSubmitTxResult> submitTask = tx.Submit(network, token);
var outcome = submitTask.result;
Console.WriteLine(
outcome.engine_result );