Generated by DocFX

Class NeblioAccountBase

Basic function class for Neblio Account

Inheritance
System.Object
NeblioAccountBase
NeblioSubAccount
NeblioAccount
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: VEDriversLite.Neblio
Assembly: VEDriversLite.dll
Syntax
public abstract class NeblioAccountBase

Fields

| Improve this Doc View Source

ReceivedPayments

Received payments (means Payment NFT) of this address.

Declaration
[JsonIgnore]
public ConcurrentDictionary<string, INFT> ReceivedPayments
Field Value
Type Description
System.Collections.Concurrent.ConcurrentDictionary<System.String, INFT>
| Improve this Doc View Source

ReceivedReceipts

Received receipts (means Receipt NFT) of this address.

Declaration
[JsonIgnore]
public ConcurrentDictionary<string, INFT> ReceivedReceipts
Field Value
Type Description
System.Collections.Concurrent.ConcurrentDictionary<System.String, INFT>

Properties

| Improve this Doc View Source

AccountKey

Carrier for encrypted private key from storage and its password.

Declaration
[JsonIgnore]
public EncryptionKey AccountKey { get; set; }
Property Value
Type Description
EncryptionKey
| Improve this Doc View Source

Address

Neblio Address hash

Declaration
public string Address { get; set; }
Property Value
Type Description
System.String
| Improve this Doc View Source

AddressInfo

Actual loaded address info. It has inside list of all transactions.

Declaration
[JsonIgnore]
public GetAddressResponse AddressInfo { get; set; }
Property Value
Type Description
GetAddressResponse
| Improve this Doc View Source

AddressInfoUtxos

Actual loaded address info with list of Utxos. When utxos are loaded first, this is just fill with it to prevent not necessary API request.

Declaration
[JsonIgnore]
public GetAddressInfoResponse AddressInfoUtxos { get; set; }
Property Value
Type Description
GetAddressInfoResponse
| Improve this Doc View Source

AddressNFTCount

Total number of NFT on the address. It counts also Profile NFT, etc.

Declaration
[JsonIgnore]
public double AddressNFTCount { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

ConnectedDogeAccountAddress

If there is some Doge address in same project which should be searched for the payments triggers fill it here

Declaration
public string ConnectedDogeAccountAddress { get; set; }
Property Value
Type Description
System.String
| Improve this Doc View Source

CoruzantNFTs

List of actual address Coruzant NFTs. Based on Utxos list

Declaration
[JsonIgnore]
public List<INFT> CoruzantNFTs { get; set; }
Property Value
Type Description
System.Collections.Generic.List<INFT>
| Improve this Doc View Source

CoruzantSourceTokensBalance

Total balance of Coruzant tokens which can be used for minting purposes.

Declaration
[JsonIgnore]
public double CoruzantSourceTokensBalance { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

EnoughBalanceToBuySourceTokens

If the address has enought Neblio to buy source VENFT tokens (costs 1 NEBL) this is set as true.

Declaration
[JsonIgnore]
public bool EnoughBalanceToBuySourceTokens { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

HardwarioNFTs

List of actual address HARDWARIO NFTs. Based on Utxos list

Declaration
[JsonIgnore]
public List<INFT> HardwarioNFTs { get; set; }
Property Value
Type Description
System.Collections.Generic.List<INFT>
| Improve this Doc View Source

IsRefreshingRunning

When main refreshing loop is running this is set

Declaration
[JsonIgnore]
public bool IsRefreshingRunning { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

NFTs

List of actual address NFTs. Based on Utxos list

Declaration
[JsonIgnore]
public List<INFT> NFTs { get; set; }
Property Value
Type Description
System.Collections.Generic.List<INFT>
| Improve this Doc View Source

NumberOfLoadedTransaction

Number of already loaded transaction on the address. not used now

Declaration
[JsonIgnore]
public double NumberOfLoadedTransaction { get; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

NumberOfTransaction

Number of the transactions on the address. not used now

Declaration
[JsonIgnore]
public double NumberOfTransaction { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

Profile

If address has some profile NFT, it is founded in Utxo list and in this object.

Declaration
[JsonIgnore]
public ProfileNFT Profile { get; set; }
Property Value
Type Description
ProfileNFT
| Improve this Doc View Source

Secret

Loaded Secret, NBitcoin Class which carry Public Key and Private Key

Declaration
[JsonIgnore]
public BitcoinSecret Secret { get; set; }
Property Value
Type Description
NBitcoin.BitcoinSecret
| Improve this Doc View Source

SourceTokensBalance

Total balance of VENFT tokens which can be used for minting purposes.

Declaration
public double SourceTokensBalance { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

TokensSupplies

Actual all token supplies. Consider also other tokens than VENFT.

Declaration
[JsonIgnore]
public Dictionary<string, TokenSupplyDto> TokensSupplies { get; set; }
Property Value
Type Description
System.Collections.Generic.Dictionary<System.String, TokenSupplyDto>
| Improve this Doc View Source

TotalBalance

Total actual balance based on Utxos. This means sum of spendable and unconfirmed balances.

Declaration
public double TotalBalance { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

TotalSpendableBalance

Total spendable balance based on Utxos.

Declaration
public double TotalSpendableBalance { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

TotalUnconfirmedBalance

Total balance which is now unconfirmed based on Utxos.

Declaration
public double TotalUnconfirmedBalance { get; set; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

UsedUtxos

When some utxo is used, it is placed to this list to prevent second use. Key is Utxo and Value is TxId where it was used

Declaration
public ConcurrentDictionary<string, uint256> UsedUtxos { get; set; }
Property Value
Type Description
System.Collections.Concurrent.ConcurrentDictionary<System.String, NBitcoin.uint256>
| Improve this Doc View Source

Utxos

Actual list of all Utxos on this address.

Declaration
[JsonIgnore]
public List<Utxos> Utxos { get; set; }
Property Value
Type Description
System.Collections.Generic.List<Utxos>
| Improve this Doc View Source

WithoutNFTs

If you want to run account without NFTs set this up. Whenever during run you can clear this flag and NFTs will start loading

Declaration
public bool WithoutNFTs { get; set; }
Property Value
Type Description
System.Boolean

Methods

| Improve this Doc View Source

ChangeNFT(INFT)

Change Post NFT. It requeires previous loadedPost NFT as input.

Declaration
public async Task<(bool, string)> ChangeNFT(INFT NFT)
Parameters
Type Name Description
INFT NFT
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

CheckPayments()

This function will check payments and try to find them complementary NFT which was sold. If there is price mathc and enough of confirmations it will try to send NFT to new owner.

Declaration
public async Task CheckPayments()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

CheckSpendableNeblio(Double)

This function will check if there is some spendable neblio of specific amount and returns list of the utxos for the transaction

Declaration
public async Task<(string, ICollection<Utxos>)> CheckSpendableNeblio(double amount)
Parameters
Type Name Description
System.Double amount
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.String, System.Collections.Generic.ICollection<Utxos>>>
| Improve this Doc View Source

CheckSpendableNeblioTokens(String, Int32)

This function will check if there is some spendable tokens of specific Id and amount and returns list of the utxos for the transaction.

Declaration
public async Task<(string, ICollection<Utxos>)> CheckSpendableNeblioTokens(string id, int amount)
Parameters
Type Name Description
System.String id
System.Int32 amount
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.String, System.Collections.Generic.ICollection<Utxos>>>
| Improve this Doc View Source

DecryptMessage(String)

Decrypt message with use of ECDSA

Declaration
public async Task<(bool, string)> DecryptMessage(string emessage)
Parameters
Type Name Description
System.String emessage

Input message

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

DeInitIoTDeviceNFT(String, Int32)

Deactivate the IoT Device

Declaration
public async Task<(bool, string)> DeInitIoTDeviceNFT(string utxo, int utxoindex = 0)
Parameters
Type Name Description
System.String utxo
System.Int32 utxoindex
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

DestroyNFTs(ICollection<INFT>, String)

This function will destroy provided NFTs. It means it will connect them again to one output/lot of tokens. Now it is possible to destroy just same kind of tokens. The first provided NFT will define TokenId. Different tokensIds will be skipped. Maximum to destroy in one transaction is 10 of NFTs

Declaration
public async Task<(bool, string)> DestroyNFTs(ICollection<INFT> nfts, string receiver = "")
Parameters
Type Name Description
System.Collections.Generic.ICollection<INFT> nfts

List of NFTs

System.String receiver

Receiver of the NFT

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

EncryptMessage(String)

Encrypt message with use of ECDSA

Declaration
public async Task<(bool, string)> EncryptMessage(string message)
Parameters
Type Name Description
System.String message

Input message

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

FireInfoEvent(Object, IEventInfo)

Redirect Info Event from lower layer

Declaration
public void FireInfoEvent(object sender, IEventInfo e)
Parameters
Type Name Description
System.Object sender
IEventInfo e
| Improve this Doc View Source

FireNFTAddedToPayments(String, (String, Int32))

Redirect of the Event about added NFT to the payments It can inform asap UI to block buy of the NFT if it is just original

Declaration
public void FireNFTAddedToPayments(string address, (string, int) e)
Parameters
Type Name Description
System.String address

Address of the SubAccount

System.ValueTuple<System.String, System.Int32> e

Utxo hash and Utxo Index

| Improve this Doc View Source

GetNFTVerifyCode(String)

Obtain verify code of some transaction. This will combine txid and UTC time (rounded to minutes) and sign with the private key. It will create unique code, which can be verified and it is valid just one minute.

Declaration
public async Task<OwnershipVerificationCodeDto> GetNFTVerifyCode(string txid)
Parameters
Type Name Description
System.String txid
Returns
Type Description
System.Threading.Tasks.Task<OwnershipVerificationCodeDto>
| Improve this Doc View Source

GetNFTVerifyQRCode(String)

Verification function for the NFT ownership code generated by GetNFTVerifyCode function.

Declaration
public async Task<(OwnershipVerificationCodeDto, byte[])> GetNFTVerifyQRCode(string txid)
Parameters
Type Name Description
System.String txid
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<OwnershipVerificationCodeDto, System.Byte[]>>
| Improve this Doc View Source

HasSomeSourceForMinting()

This function will check if the address has some spendable VENFT tokens for minting.

Declaration
public async Task<(bool, int)> HasSomeSourceForMinting()
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.Int32>>
| Improve this Doc View Source

HasSomeSpendableNeblio(Double)

This function will check if the address has some spendable neblio for transaction.

Declaration
public async Task<(bool, double)> HasSomeSpendableNeblio(double amount = 0.0002)
Parameters
Type Name Description
System.Double amount
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.Double>>
| Improve this Doc View Source

InitAllAutoIoTDeviceNFT()

Init NFT IoT Devices automatically if they have allowed this function

Declaration
public async Task<(bool, string)> InitAllAutoIoTDeviceNFT()
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

InitIoTDeviceNFT(String, Int32)

Init IoT Device manually

Declaration
public async Task<(bool, string)> InitIoTDeviceNFT(string utxo, int utxoindex = 0)
Parameters
Type Name Description
System.String utxo
System.Int32 utxoindex
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

InvokeAccountLockedEvent(String)

Invoke Error message because account is locked

Declaration
public async Task InvokeAccountLockedEvent(string title = "Cannot send transaction")
Parameters
Type Name Description
System.String title

Title of the event message

Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

InvokeErrorDuringSendEvent(String, String)

Invoke Error message which occured during sending of the transaction

Declaration
public async Task InvokeErrorDuringSendEvent(string errorMessage, string title = "Cannot send transaction")
Parameters
Type Name Description
System.String errorMessage

Error message content

System.String title

Title of the event message

Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

InvokeErrorEvent(String, String)

Invoke Common Error message

Declaration
public async Task InvokeErrorEvent(string errorMessage, string title = "Error")
Parameters
Type Name Description
System.String errorMessage

Error message content

System.String title

Title of the event message

Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

InvokeSendPaymentSuccessEvent(String, String)

Invoke Success message info event

Declaration
public async Task InvokeSendPaymentSuccessEvent(string txid, string title = "Neblio Payment Sent")
Parameters
Type Name Description
System.String txid

new tx id hash

System.String title

Title of the event message

Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

IsLocked()

This function will check if the account is locked or unlocked.

Declaration
public bool IsLocked()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

IssueTokens(String, UInt64, String, String, String, String, String, IDictionary<String, String>)

Send classic neblio payment

Declaration
public async Task<(bool, string)> IssueTokens(string receiver, ulong amount, string tokenSymbol, string description, string issuerNick, string imageLink, string imageFileName, IDictionary<string, string> metadata)
Parameters
Type Name Description
System.String receiver

Receiver Neblio Address

System.UInt64 amount

Ammount in Neblio

System.String tokenSymbol
System.String description
System.String issuerNick
System.String imageLink
System.String imageFileName
System.Collections.Generic.IDictionary<System.String, System.String> metadata
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

LoadAccountKey(String, String)

Load account Key. If there is password it is used to decrypt the private key This function will load Secret property with Key

Declaration
public async Task<bool> LoadAccountKey(string password, string key)
Parameters
Type Name Description
System.String password

Passwotd to decrypt the loaded private key

System.String key

Private Key

Returns
Type Description
System.Threading.Tasks.Task<System.Boolean>
| Improve this Doc View Source

MintMultiNFT(INFT, Int32, String)

Mint new multi NFT. It is automatic function which will decide what NFT to mint based on provided type in the NFT input.

Declaration
public async Task<(bool, string)> MintMultiNFT(INFT NFT, int coppies, string receiver = "")
Parameters
Type Name Description
INFT NFT

Input carrier of NFT data. It must specify the type

System.Int32 coppies

Number of coppies. 1 coppy means 2 final NFTs

System.String receiver

Receiver of the NFT

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

MintMultiNFTLargeAmount(INFT, Int32, String, List<String>, Int32)

Mint new multi NFT. It is automatic function which will decide what NFT to mint based on provided type in the NFT input.

Declaration
public async Task<(bool, Dictionary<string, string>)> MintMultiNFTLargeAmount(INFT NFT, int coppies, string receiver = "", List<string> multipleReceivers = null, int maxInLot = 0)
Parameters
Type Name Description
INFT NFT

Input carrier of NFT data. It must specify the type

System.Int32 coppies

Number of coppies. 1 coppy means 2 final NFTs

System.String receiver

Receiver of the NFT

System.Collections.Generic.List<System.String> multipleReceivers

if you have multpiple receivers you can specify them. it must fit the number of minted NFTs

System.Int32 maxInLot

maximum number of minted NFTs in one tx

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.Collections.Generic.Dictionary<System.String, System.String>>>
| Improve this Doc View Source

MintNFT(INFT, String)

Mint new NFT. It is automatic function which will decide what NFT to mint based on provided type in the NFT input

Declaration
public async Task<(bool, string)> MintNFT(INFT NFT, string receiver = "")
Parameters
Type Name Description
INFT NFT

Input carrier of NFT data. It must specify the type

System.String receiver

Receiver of the NFT

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

RefreshAddressReceivedPayments()

This function will search NFT Payments in the NFTs list and load them into ReceivedPayments list. This list is cleared at the start of this function

Declaration
public async Task RefreshAddressReceivedPayments()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

RefreshAddressReceivedReceipts()

This function will search NFT Receipts in the NFTs list and load them into ReceivedReceipts list. This list is cleared at the start of this function

Declaration
public async Task RefreshAddressReceivedReceipts()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadAccountInfo()

This function will load actual address info an adress utxos. It is used mainly for loading list of all transactions.

Declaration
public async Task ReloadAccountInfo()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadCoruzantNFTs()

Reload coruzant NFTs list

Declaration
public async Task ReloadCoruzantNFTs()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadCountOfNFTs()

Reload actual count of the NFTs based on already loaded list of address utxos

Declaration
public async Task ReloadCountOfNFTs()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadHardwarioNFTs()

Reload hardwario NFTs list

Declaration
public async Task ReloadHardwarioNFTs()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadMintingSupply()

Reload actual VENFT minting supply based on already loaded list of address utxos

Declaration
public async Task ReloadMintingSupply()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReLoadNFTs(Boolean, Boolean)

This function will reload changes in the NFTs list based on provided list of already loaded utxos.

Declaration
public async Task ReLoadNFTs(bool fireProfileEvent = false, bool withoutMessages = false)
Parameters
Type Name Description
System.Boolean fireProfileEvent
System.Boolean withoutMessages
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadTokenSupply()

Reload actual token supplies based on already loaded list of address utxos

Declaration
public async Task ReloadTokenSupply()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReloadUtxos()

Reload address Utxos list. It will sort descending the utxos based on the utxos time stamps.

Declaration
public async Task ReloadUtxos()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

ReturnNFTPayment(String, PaymentNFT)

This function will return the NFT Payment to the original sender. The receiver is taken from the Minting transaction of the PaymentNFT

Declaration
public async Task<(bool, string)> ReturnNFTPayment(string receiver, PaymentNFT NFT)
Parameters
Type Name Description
System.String receiver

Receiver of the returned NFT Payment

PaymentNFT NFT

NFT Payment to return

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendAirdrop(String, String, Double, Double)

This function will send airdrop.

Declaration
public async Task<(bool, string)> SendAirdrop(string receiver, string tokenId, double tokenAmount, double neblioAmount)
Parameters
Type Name Description
System.String receiver

Receiver - owner of the NFT

System.String tokenId

TokenId of the NTP1 token on Neblio network

System.Double tokenAmount

Number of the tokens in the airdrop

System.Double neblioAmount

Neblio amount in the airdrop

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendCoruzantNFT(String, INFT, Boolean, String)

Add comment to Coruzant Post NFT or add comment and send it to new owner

Declaration
public async Task<(bool, string)> SendCoruzantNFT(string receiver, INFT NFT, bool commentWrite, string comment = "")
Parameters
Type Name Description
System.String receiver

Fill when you want to send to different address

INFT NFT
System.Boolean commentWrite

Set this if you need to just write the comment to the NFT

System.String comment

Add your comment

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendIoTMessageNFT(INFT, String, String)

Send NFT.

Declaration
public async Task<(bool, string)> SendIoTMessageNFT(INFT NFT, string sender, string receiver = "")
Parameters
Type Name Description
INFT NFT

NFT to sent

System.String sender

Sender of the NFT

System.String receiver

Receiver of the NFT

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendMessageNFT(String, String, String, String, Boolean, String, String, String, String)

Send NFT Message.

Declaration
public async Task<(bool, string)> SendMessageNFT(string name, string message, string receiver, string utxo = "", bool encrypt = true, string imagelink = "", string link = "", string text = "", string rewriteAuthor = "")
Parameters
Type Name Description
System.String name

Name of the Message

System.String message

Content of the Message

System.String receiver

Receiver of the Message

System.String utxo

original NFT Utxo - reply for the existing message

System.Boolean encrypt

Encrypt the message with the shared secret

System.String imagelink

Image link in the message

System.String link

Link in the message

System.String text

Longer text in the message

System.String rewriteAuthor

Rewrite author of the message. Common is the sender (you can use txid of some NFT Profil, etc.)

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendMultipleInputNeblioPayment(String, Double, List<Utxos>, String)

Send multiuple input neblio payment

Declaration
public async Task<(bool, string)> SendMultipleInputNeblioPayment(string receiver, double amount, List<Utxos> utxos, string message = "")
Parameters
Type Name Description
System.String receiver

Receiver Neblio Address

System.Double amount

Ammount in Neblio

System.Collections.Generic.List<Utxos> utxos

Input utxos

System.String message

Message in transaction data

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendNeblioPayment(String, Double, String)

Send classic neblio payment

Declaration
public async Task<(bool, string)> SendNeblioPayment(string receiver, double amount, string message = "")
Parameters
Type Name Description
System.String receiver

Receiver Neblio Address

System.Double amount

Ammount in Neblio

System.String message

Message in transaction data

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendNeblioTokenPayment(String, IDictionary<String, String>, String, Int32)

Send classic token payment. It must match same requirements as minting. It cannot use 1 token inputs (NFTs).

Declaration
public async Task<(bool, string)> SendNeblioTokenPayment(string tokenId, IDictionary<string, string> metadata, string receiver, int amount)
Parameters
Type Name Description
System.String tokenId

Token Id hash

System.Collections.Generic.IDictionary<System.String, System.String> metadata

Custom metadata

System.String receiver

Receiver Neblio address

System.Int32 amount

Amount of the tokens

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendNFT(String, INFT, Boolean, Double, Boolean, Double)

Send input NFT to new owner, or use it just for price write and resend it to yourself with new metadata about the price.

Declaration
public async Task<(bool, string)> SendNFT(string receiver, INFT NFT, bool priceWrite = false, double price = 0.0002, bool withDogePrice = false, double dogeprice = 1)
Parameters
Type Name Description
System.String receiver

If the pricewrite is set, this is filled with own address

INFT NFT
System.Boolean priceWrite

Set this if you need to just write the price to the NFT

System.Double price

Price must be bigger than 0.0002 NEBL

System.Boolean withDogePrice

Set this if you need to just write the Doge price to the NFT

System.Double dogeprice

Price must be bigger than 0.1 Doge

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SendNFTPayment(String, INFT)

This function will send payment for some specific NFT which is from foreign address.

Declaration
public async Task<(bool, string)> SendNFTPayment(string receiver, INFT NFT)
Parameters
Type Name Description
System.String receiver

Receiver - owner of the NFT

INFT NFT

NFT what you want to buy

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SignMessage(String)

Sign custom message with use of account Private Key

Declaration
public async Task<(bool, string)> SignMessage(string message)
Parameters
Type Name Description
System.String message
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SplitNeblioCoin(List<String>, Int32, Double)

Split neblio coin to smaller coins

Declaration
public async Task<(bool, string)> SplitNeblioCoin(List<string> receivers, int lots, double amount)
Parameters
Type Name Description
System.Collections.Generic.List<System.String> receivers

Receivers list of Neblio Address

System.Int32 lots

Number of the lots

System.Double amount

Amount of new splited couns

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

SplitTokens(String, IDictionary<String, String>, List<String>, Int32, Int32)

Send split token payment. It will create multiple outputs with lots of tokens. It must match same requirements as minting. It cannot use 1 token inputs (NFTs).

Declaration
public async Task<(bool, string)> SplitTokens(string tokenId, IDictionary<string, string> metadata, List<string> receivers, int lots, int amount)
Parameters
Type Name Description
System.String tokenId

Token Id hash

System.Collections.Generic.IDictionary<System.String, System.String> metadata

Custom metadata

System.Collections.Generic.List<System.String> receivers

List Receiver Neblio address

System.Int32 lots

Amount of the tokens

System.Int32 amount

Amount of the tokens

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

TxCashPreload()

This function will take all utxos and try to request all their txinfo and metadata info as parallel as possible The responses from the Neblio API are stored in the cashe, so most of them are not need to call anymore and they will be taken from the memory This speed up a loading a lot

Declaration
public async Task TxCashPreload()
Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

UseNFTTicket(INFT)

Write Used flag into NFT Ticket

Declaration
public async Task<(bool, string)> UseNFTTicket(INFT NFT)
Parameters
Type Name Description
INFT NFT
Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

ValidateNFTUtxo(String, Int32)

This function will validate if the NFT of this address is spendable

Declaration
public async Task<(bool, string)> ValidateNFTUtxo(string utxo, int index)
Parameters
Type Name Description
System.String utxo

Utxo hash

System.Int32 index

index of the Utxo

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>
| Improve this Doc View Source

VerifyMessage(String, String, String, PubKey)

Verify message which was signed by some address.

Declaration
public async Task<(bool, string)> VerifyMessage(string message, string signature, string address, PubKey bobPubKey = null)
Parameters
Type Name Description
System.String message

Input message

System.String signature

Signature of this message created by owner of some address.

System.String address

Neblio address which should sign the message and should be verified.

NBitcoin.PubKey bobPubKey

You must fill address or PubKey. If you will fill the PubKey function is much faster

Returns
Type Description
System.Threading.Tasks.Task<System.ValueTuple<System.Boolean, System.String>>

Events

| Improve this Doc View Source

AddressesAirdroped

This event is fired whenever new lot of addresses was airdroped

Declaration
public event EventHandler<Dictionary<string, string>> AddressesAirdroped
Event Type
Type Description
System.EventHandler<System.Collections.Generic.Dictionary<System.String, System.String>>
| Improve this Doc View Source

FirsLoadingStatus

This event is fired during first loading of the account to keep updated the user

Declaration
public event EventHandler<string> FirsLoadingStatus
Event Type
Type Description
System.EventHandler<System.String>
| Improve this Doc View Source

NewEventInfo

This event is fired whenever some important thing happen. You can obtain success, error and info messages.

Declaration
public event EventHandler<IEventInfo> NewEventInfo
Event Type
Type Description
System.EventHandler<IEventInfo>
| Improve this Doc View Source

NewMintingProcessInfo

This event is fired whenever some progress during multimint happens

Declaration
public event EventHandler<string> NewMintingProcessInfo
Event Type
Type Description
System.EventHandler<System.String>
| Improve this Doc View Source

NFTAddedToPayments

This event is fired whenever some NFT is in received payment too and it should be blocked for any further action. It provides Utxo and UtxoIndex as touple. Event is fired also for the SubAccounts when it is registred from Main Account

Declaration
public event EventHandler<(string, int)> NFTAddedToPayments
Event Type
Type Description
System.EventHandler<System.ValueTuple<System.String, System.Int32>>
| Improve this Doc View Source

NFTsChanged

This event is fired whenever the list of NFTs is changed

Declaration
public event EventHandler<string> NFTsChanged
Event Type
Type Description
System.EventHandler<System.String>
| Improve this Doc View Source

ProfileUpdated

This event is fired whenever profile nft is updated or found

Declaration
public event EventHandler<INFT> ProfileUpdated
Event Type
Type Description
System.EventHandler<INFT>
| Improve this Doc View Source

Refreshed

This event is fired whenever info about the address is reloaded. It is periodic event.

Declaration
public event EventHandler Refreshed
Event Type
Type Description
System.EventHandler