KTp/Components/Chat Window/Plugin API Draft
Making an API to create plugins for the chat window. These should be able to handle the following usecases:
- Translator plugin - when messages are sent or received, it will translate them before they are displayed (or actually sent)
- Image Embed plugin - when a URL of an image is received, it will display the image under the text
- Grammar correction - a plugin that replaces "wont" with "won't" on messages to be sent
- Youtube embed - embeds a youtube video in a chat
The stakeholders (components) are as follows:
- UI - telepathy-kde-text-ui and chat-widget etc.
- Plugin Manager
- Plugin
- Core (Telepathy)
<I'll upload the diagram for how they interact later>
The interactions between the components:
- Plugin Manager and Plugin
- Process Message
- Return Message
- Initialize
- Loading
- Destroy
- Send-Message //still not sure about this