Skip to main content

Manage message metadata

Community channels support message metadata with the same capabilities as direct and group channels. In the current Flutter wrapper, metadata changes are performed from the Message instance itself.

See Message metadata for details on updating, removing, and listening for metadata changes.

Update message metadata

Dart
await message.setMetadata(
{'reaction_like': 'user1,user2'},
(error) {
if (error?.isSuccess == true) {
print('Metadata updated');
}
},
);

Remove metadata keys

Dart
await message.deleteMetadata(
['reaction_like'],
(error) {
if (error?.isSuccess == true) {
print('Metadata keys removed');
}
},
);

Listen for metadata changes

Dart
NCEngine.addMessageHandler('community-meta-handler', MessageHandler(
onMessageMetadataUpdated: (event) {
print('Metadata updated: ${event.metadata}');
},
onMessageMetadataDeleted: (event) {
print('Metadata removed: ${event.keys}');
},
));