These docs are for v1.0. Click to read the latest docs for v2.3.

Message

Methods related to messages management.

Create message

⚠️

Fees

This method performs a blockchain transaction. It costs 1 credit and Gas.

Method

ArianeeWallets.methods.createMessage(data)
ParameterTypeMandatoryDescription
dataObjectβœ…Message creation data object.
data β†’ contentImprintString❌Message content imprint, either contentImprint or content need to be provided.
data β†’ certificateIdNumberβœ…Arianee token ID of the NFT.
data β†’ messageIdNumber❌Message ID. Randomly generated if left empty.
data β†’ contentObject❌Message content object, either contentImprint or content need to be provided.

Output

promise returns object: The receipt of the blockchain transaction and keys.

  • contentImprint - message content imprint.
  • messageId - message ID.

Example

const message={
    certificateId,
    content: {
        $schema: 'https://cert.arianee.org/version1/ArianeeMessage-i18nAlpha.json',
        title:'message title',
        content:'message content'
    }
}

const {  contentImprint, messageId } = await await wallet.methods.createMessage(event);

Store message content

ArianeeWallets.methods.storeMessage(certificateId, messageId, content, url)
ParameterTypeOptionalDescription
dataObject❌Message creation data object.
data β†’ contentImprintStringβœ…Message content imprint, either contentImprint or content need to be provided.
data β†’ certificateIdNumber❌Arianee token ID of the NFT.
data β†’ messageIdNumberβœ…Message ID. Randomly generated if left empty.
data β†’ contentObjectβœ…Message content object, either contentImprint or content need to be provided.

Output

promise returns any.

Example

await wallet
      .methods
      .storeMessage(
        certificateId, 
        messageId,
        message.content,
        'https://http://arianee.cleverapps.io/testnet/rpc');

Get message information

Method

ArianeeWallets.methods.getMessage(data)
ParameterTypeMandatoryDescription
dataObjectβœ…Message request data object.
data β†’ messageIdNumber❌Message ID.
data β†’ queryConsolidatedCertificateRequest❌Object to request message.
data β†’ urlString❌RPC server URL to get message.
data β†’ forceRefreshBoolean❌Force the messages refresh.

Output

promise returns object: The receipt of the blockchain transaction and keys.

  • certificateId - Arianee token ID of the NFT linked to the message.
  • issuer
    • isIdentityVerified - yes if issuer identity verified.
    • isIdentityAuthentic - yes if issuer identity authentic.
    • imprint - issuer imprint.
    • identity - issuer identity content.
  • to - message recipient wallet public address.
  • messageId- message ID.
  • timestamp- message creation timestamp.

Get your messages

Method

ArianeeWallets.methods.getMyMessages(data)
ParameterTypeMandatoryDescription
dataObjectβœ…Message request data object.
data β†’ queryConsolidatedCertificateRequest❌Object to request message.
data β†’ urlString❌RPC server URL to get message.

Output

promise returns array of object:

  • certificateId - Arianee token ID of the NFT linked to the message.
  • issuer
    • isIdentityVerified - yes if issuer identity verified.
    • isIdentityAuthentic - yes if issuer identity authentic.
    • imprint - issuer imprint.
    • identity- issuer identity content.
  • to : message recipient public address.
  • messageId- message ID.
  • timestamp- message creation timestamp.

Mark message as read

⚠️

Fees

This method performs a blockchain transaction. It costs Gas.

Mark a message as read and send $ARIA20 to the owner and wallet reward address.

Method

ArianeeWallets.methods.markAsRead(messageId)
ParameterTypeMandatoryDescription
messageIdNumberβœ…Message ID.

Output

promise returns ExtendedBoolean:

  • isTrue - true if message is mark as read.
  • code - returns code.
  • message - returns message.

Change send right for message issuer

Set optin/optout for a specific sender and NFT ID for current wallet.

⚠️

Fees

This method performs a blockchain transaction. It costs Gas.

Method

ArianeeWallets.methods.setMessageAuthorizationFor(certificateId, senderAddress, bool)

ParameterTypeMandatoryDescription
certificateIdNumberβœ…Arianee NFT ID of the NFT.
senderAddressStringβœ…Wallet address of the related message issuer.
boolBooleanβœ…true or false - Apply flag.

Output

promise returns object: The receipt of the blockchain transaction.

Example

// Change optin flag for a specific sender 
wallet.methods.setMessageAuthorizationFor(12345,'0x5f89d20c4a88FC2479b08522d5adD0b605001E3e',false).then((data)  => {
})

Read NFT send rights

Read optin/optout for a specific NFT ID.

β›”

Limitation

Only return optin status of issuer only.

Method

ArianeeWallets.methods.getMessageSenders({certificateId:CertificateId, query:ConsolidatedCertificateRequest})
ParameterTypeMandatoryDescription
parametersObjectβœ…certificateId and ConsolidatedCertificateRequest.

Output

promise returns object: address and isIssuerAuthorized.

Example

// Read optin flag for a specific sender
wallet.methods.getMessageSenders(12345).then((data)  => {
})