Class NeblioAccountBase
Basic function class for Neblio Account
Inherited Members
Namespace: VEDriversLite.Neblio
Assembly: VEDriversLite.dll
Syntax
public abstract class NeblioAccountBase
Fields
| Improve this Doc View SourceReceivedPayments
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> |
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 SourceAccountKey
Carrier for encrypted private key from storage and its password.
Declaration
[JsonIgnore]
public EncryptionKey AccountKey { get; set; }
Property Value
Type | Description |
---|---|
EncryptionKey |
Address
Neblio Address hash
Declaration
public string Address { get; set; }
Property Value
Type | Description |
---|---|
System.String |
AddressInfo
Actual loaded address info. It has inside list of all transactions.
Declaration
[JsonIgnore]
public GetAddressResponse AddressInfo { get; set; }
Property Value
Type | Description |
---|---|
GetAddressResponse |
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 |
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 |
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 |
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> |
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 |
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 |
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> |
IsRefreshingRunning
When main refreshing loop is running this is set
Declaration
[JsonIgnore]
public bool IsRefreshingRunning { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
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> |
NumberOfLoadedTransaction
Number of already loaded transaction on the address. not used now
Declaration
[JsonIgnore]
public double NumberOfLoadedTransaction { get; }
Property Value
Type | Description |
---|---|
System.Double |
NumberOfTransaction
Number of the transactions on the address. not used now
Declaration
[JsonIgnore]
public double NumberOfTransaction { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
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 |
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 |
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 |
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> |
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 |
TotalSpendableBalance
Total spendable balance based on Utxos.
Declaration
public double TotalSpendableBalance { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
TotalUnconfirmedBalance
Total balance which is now unconfirmed based on Utxos.
Declaration
public double TotalUnconfirmedBalance { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
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> |
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> |
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 SourceChangeNFT(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>> |
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 |
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>>> |
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>>> |
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>> |
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>> |
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>> |
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>> |
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 |
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 |
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> |
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[]>> |
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>> |
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>> |
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>> |
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>> |
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 |
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 |
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 |
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 |
IsLocked()
This function will check if the account is locked or unlocked.
Declaration
public bool IsLocked()
Returns
Type | Description |
---|---|
System.Boolean |
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>> |
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> |
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>> |
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>>> |
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>> |
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 |
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 |
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 |
ReloadCoruzantNFTs()
Reload coruzant NFTs list
Declaration
public async Task ReloadCoruzantNFTs()
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task |
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 |
ReloadHardwarioNFTs()
Reload hardwario NFTs list
Declaration
public async Task ReloadHardwarioNFTs()
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task |
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 |
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 |
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 |
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 |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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>> |
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 |
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>> |
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>> |
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 SourceAddressesAirdroped
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>> |
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> |
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> |
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> |
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>> |
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> |
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> |
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 |