mirror of
https://github.com/zammad/zammad
synced 2026-05-24 09:48:36 +00:00
38 lines
2 KiB
Ruby
38 lines
2 KiB
Ruby
# Copyright (C) 2012-2026 Zammad Foundation, https://zammad-foundation.org/
|
|
|
|
module Whatsapp
|
|
|
|
MIME_TYPES = {
|
|
'text/plain': 'txt',
|
|
'application/pdf': 'pdf',
|
|
'application/vnd.ms-powerpoint': 'ppt',
|
|
'application/msword': 'doc',
|
|
'application/vnd.ms-excel': 'xls',
|
|
'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx',
|
|
'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx',
|
|
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx',
|
|
|
|
'image/jpeg': 'jpeg',
|
|
'image/png': 'png',
|
|
'image/webp': 'webp',
|
|
|
|
'video/mp4': 'mp4',
|
|
'video/3gp': '3gp',
|
|
|
|
'audio/aac': 'aac',
|
|
'audio/mp4': 'm4a',
|
|
'audio/mpeg': 'mp3',
|
|
'audio/amr': 'amr',
|
|
'audio/ogg': 'ogg',
|
|
}.freeze
|
|
|
|
def self.file_suffix(mime_type:)
|
|
identified_mime_type = Whatsapp::MIME_TYPES[mime_type.to_sym]
|
|
return identified_mime_type if identified_mime_type.present?
|
|
|
|
identified_mime_type = MIME::Types[mime_type]&.first
|
|
return identified_mime_type.preferred_extension if identified_mime_type.present? && identified_mime_type.preferred_extension.present?
|
|
|
|
'dat'
|
|
end
|
|
end
|