onMessageSent

Sets up a listener for when a new message is sent in a conversation.

Usage

const sender = '0x...';
const conversationHash = '0x...';
const messageIndex = 99n;

// Listen to all messages sent by the sender
chat.onMessageSent(sender, null, null, (conversationHash, receivedMessage) => {
  console.log(conversationHash);
  console.log(receivedMessage);
});

// Listen to all messages sent to the conversation
chat.onMessageSent(null, conversationHash, null, (conversationHash, receivedMessage) => {
  console.log(conversationHash);
  console.log(receivedMessage);
});

// Listen to a specific message index
chat.onMessageSent(null, null, messageIndex, (conversationHash, receivedMessage) => {
  console.log(conversationHash);
  console.log(receivedMessage);
});

Stop watching

// Listen to all messages sent to the conversation
const stopWatching = chat.onMessageSent(
  null,
  conversationHash,
  null,
  (conversationHash, receivedMessage) => {
    console.log(conversationHash);
    console.log(receivedMessage);
  },
);

// ... Later, to stop watching for the events
stopWatching();

Returns

UnwatchFn

A function that can be invoked to stop watching for new event logs.

Parameters

sender

  • Type Address | null

The message sender's address. If set to null, it listens for mails from any sender.

conversationHash

  • Type ConversationHash | null

The hash of the target conversation. Set to null to listen to messages from any conversation.

index

  • Type bigint | null

The index of the message in the conversation. Set to null to listen to messages at any index in a conversation.

callback

  • Type (conversationHash: ConversationHash, receivedMessage: ReceivedMessage) => void

A callback function that will be executed when the new message sent event is detected. This callback is passed two arguments:

  • conversationHash: The hash of the conversation the message belongs to.
  • receivedMessage: The received message details.

The structure of receivedMessage is based on the type ReceivedMessage.

Previous
getUserAppIds