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
.