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

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
dataObjectMessage creation data object.
datacontentImprintStringMessage content imprint, either contentImprint or content need to be provided.
datacertificateIdNumberArianee token ID of the NFT.
datamessageIdNumberMessage ID. Randomly generated if left empty.
datacontentObjectMessage 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
dataObjectMessage creation data object.
datacontentImprintStringMessage content imprint, either contentImprint or content need to be provided.
datacertificateIdNumberArianee token ID of the NFT.
datamessageIdNumberMessage ID. Randomly generated if left empty.
datacontentObjectMessage 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
dataObjectMessage request data object.
datamessageIdNumberMessage ID.
dataqueryConsolidatedCertificateRequestObject to request message.
dataurlStringRPC server URL to get message.
dataforceRefreshBooleanForce 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
dataObjectMessage request data object.
dataqueryConsolidatedCertificateRequestObject to request message.
dataurlStringRPC 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
messageIdNumberMessage 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
certificateIdNumberArianee NFT ID of the NFT.
senderAddressStringWallet address of the related message issuer.
boolBooleantrue 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
parametersObjectcertificateId and ConsolidatedCertificateRequest.

Output

promise returns object: address and isIssuerAuthorized.

Example

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