Запускает Lamdba на загрузку видео s3? - PullRequest
0 голосов
/ 13 марта 2019

Я тестирую добавление водяного знака в видео после загрузки. Я столкнулся с проблемой, когда lamdba хочет, чтобы я указал, какой файл изменить при загрузке. но я хочу, чтобы он срабатывал при загрузке любого (на самом деле, любого файла с расширением .mov, .mp4 и т. д.).

Чтобы уточнить, все это работает вручную при создании конвейера и задания.

Вот мой код:

    require 'json'
    require 'aws-sdk-elastictranscoder'


    def lambda_handler(event:, context:)
      client = Aws::ElasticTranscoder::Client.new(region: 'us-east-1')

        resp = client.create_job({
      pipeline_id: "15521341241243938210-qevnz1", # required
      input: {
        key: File, #this is where my issue
        },
      output: {
    key: "CBtTw1XLWA6VSGV8nb62gkzY",
    # thumbnail_pattern: "ThumbnailPattern",
    # thumbnail_encryption: {
    #   mode: "EncryptionMode",
    #   key: "Base64EncodedString",
    #   key_md_5: "Base64EncodedString",
    #   initialization_vector: "ZeroTo255String",
    # },
    # rotate: "Rotate",
    preset_id: "1351620000001-000001",
    # segment_duration: "FloatString",
    watermarks: [
      {
        preset_watermark_id: "TopRight",
        input_key: "uploads/2354n.jpg",
        # encryption: {
        #   mode: "EncryptionMode",
        #   key: "zk89kg4qpFgypV2fr9rH61Ng",
        #   key_md_5: "Base64EncodedString",
        #   initialization_vector: "ZeroTo255String",
        # },
      },
    ],
  }
  })

end

Как указать только any загружаемый файл или файлы определенного формата? для ввода: ключ:?

Теперь моя проблема в том, что я использую активное хранилище, поэтому оно не заканчивается на .jpg или .mov и т. Д., Это просто случайная строка (у них есть причины для этого). Я пытаюсь найти причину для использования активного хранилища, и это мой последний шаг к тому, чтобы заставить его работать как другие альтернативы до этого.

1 Ответ

0 голосов
/ 13 марта 2019

Поле расширения является необязательным.Если вы ничего не укажете, лямбда будет срабатывать независимо от того, какой файл загружен.Затем вы можете проверить, является ли это тип файла, который вы хотите, и продолжить.

...