Skip to content

Alternative way to assign image attachments to a channel? #161

@alexmacarthur

Description

@alexmacarthur

As far as I can tell, the only way to assign an attachment to a channel is using the “file” property, which is the CDN URL. Those URLs are signed, and so I’m concerned about them expiring after 14 days, and the images would no longer be viewable in the channel. Is this true? Or is there another way to upload attachments to avoid this issue?

image

This does not seem to be the same way you can upload attachments in the Node SDK. There, you can pass attachments directly, which would give me a little more confidence.

const promises = [
  channel.sendImage(
    fs.createReadStream('./cat.png'),
    'cat.jpg',
    'cat/jpg',
    {id: "some-user"}
  ),
 ];
 
 const results = await Promise.all(promises);
 const attachments = results.map(response => {
   return {
     type: 'image',
     thumb_url: response.file,
     asset_url: response.file,
   };
 });

 const response = await channel.sendMessage({
   text: 'I have uploaded things.',
   attachments,
   user
 });

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions