Skip to content

fix: Slack client Media type implementation missing required properties in message attachments #1384

Closed
@SumeetChougule

Description

Describe the Bug

TypeScript type error in Slack client when handling message attachments. The error occurs because the attachments property in the Content interface expects an array of Media type objects, but the code was only providing a subset of the required properties.

Error message:

Type '{ text: string; }[]' is not assignable to type 'Media[]'.
Type '{ text: string; }' is missing the following properties from type 'Media': id, url, title, source, description

To Reproduce

  1. Use the Slack client implementation.
  2. Try to create a message content with attachments.
  3. The code attempts to create an attachment with only the text property:
attachments: attachmentContent ? [{ text: attachmentContent }] : undefined

Expected Behavior

The code should properly implement the Media type interface by providing all required properties:

  • id (string)
  • url (string)
  • title (string)
  • source (string)
  • description (string)
  • text (string)

Solution

Update the attachment creation to include all required Media type properties:

attachments: attachmentContent
    ? [{
        id: stringToUuid(`${event.ts}-attachment`),
        url: '',  // Since this is text content, no URL is needed
        title: 'Text Attachment',
        source: 'slack',
        description: 'Text content from Slack message',
        text: attachmentContent
    }]
    : undefined,

Additional Context

This issue affects the Slack client's message handling functionality in the packages/client-slack/src/messages.ts file. The fix ensures type safety while maintaining the intended functionality of handling text attachments from Slack messages.

Activity

self-assigned this
on Dec 26, 2024
AIFlowML

AIFlowML commented on Jan 3, 2025

@AIFlowML
Collaborator

Hello here.
Yopu are right i should have added all the media types.
I wil try look into it asap.

AIFlowML

AIFlowML commented on Jan 3, 2025

@AIFlowML
Collaborator

Just pushed #1741
Tnks @SumeetChougule

removed their assignment
on Jan 4, 2025
added a commit that references this issue on Jan 4, 2025

Merge pull request #1741 from AIFlowML/fix/slack-1384-media-type-atta…

73943a0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      fix: Slack client Media type implementation missing required properties in message attachments · Issue #1384 · elizaOS/eliza