bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/plugins-engine
Arthur B. Grossi d2132484b4
feat(plugins): server command send chat message (#20781)
* feat(plugins): add chat server command and chat message type `plugin`

This commit adds the required code for the plugins SDK's chat server
command `CHAT_SEND_MESSAGE`, which allows plugins to send chat
messages. Messages sent by plugins are identified by the message
type `plugin` and belong to the user (senderID) of the client that
sent it. Plugin messages are not displayed by the client itself because
these messages are meant to be custom-rendered by plugins, typically by
the plugin that sent them.

* feat(plugins): add message metadata

Plugin name and plugin custom metadata are stored in message's metadata,
so plugins need it to identify messages when applying custom render.

* feat(chat): removes specific code for plugin messages

Removes specific akka messages, handlers and routes for plugin messages
and adds metadata parameter in `GroupChatMsgFromUser`.

* feat(chat): adds option parameter to mutation

Adds optional parameter `metadata` to the already existing mutation
`chatSendMessage` and use this mutation for plugin chat server command.

* feat(chat): rendering of plugin messages

This commit implements the correct rendering of plugin messages, which
is:
- Plugin messages with metadata attribute `custom` set to true are not
  rendered by the client, and are meant to be custom-rendered by
  plugins.
- Plugin messages with metadata attribute `custom` set to false are
  rendered by the client as being sent by the user that triggered it.

* Update sdk version to v0.0.56

* update sdk version to v0.0.57
2024-08-07 15:59:30 -04:00
..
data-channel feat(plugin): Added sendGenericDataForLearningAnalyticsDashboard for plugins (#20628) 2024-07-05 16:49:45 -03:00
data-consumption feat(plugins): server command send chat message (#20781) 2024-08-07 15:59:30 -04:00
dom-element-manipulation [video-control-plugin-sdk] created useUserCameraDomElement as a dom element manipulation hook 2024-07-31 14:44:55 -03:00
extensible-areas [video-control-plugin-sdk] created extensible-are screenshare helper and refactored buttons rendering for screenshare 2024-07-31 14:47:54 -03:00
learning-analytics-dashboard feat(plugin): Added sendGenericDataForLearningAnalyticsDashboard for plugins (#20628) 2024-07-05 16:49:45 -03:00
loader feat(plugin): Verify plugin integrity with 'checksum' option (#20693) 2024-07-15 16:34:14 -04:00
server-commands feat(plugins): server command send chat message (#20781) 2024-08-07 15:59:30 -04:00
ui-commands feat(plugins): add open and close presentation area command support (#20635) 2024-07-19 08:52:23 -04:00
ui-data-hooks/layout/presentation-area feat(generic-component): rename to generic content and add type 2024-06-10 19:36:45 -03:00
component.tsx [plugin-sdk-issue-4] - Added action button dropdown extensible area and refactor code 2023-09-15 15:42:02 -03:00
manager.tsx feat(plugin): Added sendGenericDataForLearningAnalyticsDashboard for plugins (#20628) 2024-07-05 16:49:45 -03:00
styles.ts More changes 2023-09-14 10:44:04 -03:00
types.ts feat(plugin): Verify plugin integrity with 'checksum' option (#20693) 2024-07-15 16:34:14 -04:00