Не удается получать push-уведомления для изображений / видеосообщений с помощью Twilio Programmable Chat

#ios #swift #twilio #apple-push-notifications #twilio-programmable-chat

#iOS #swift #twilio #apple-push-уведомления #twilio-programmable-chat

Вопрос:

Мы используем Twilio SDK в качестве функции чата в приложении iOS. Недавно мы столкнулись с проблемой получения push-уведомлений специально для сообщений типа «MessageKind» изображений и видео, но сообщения такого рода приходят просто отлично. Push-уведомления приходят только для текстовых сообщений.

Я просматривал настройки «Настройки Push-уведомлений» на веб-консоли Twilio, но нет ничего конкретного, что я мог бы настроить, чтобы включить push-уведомления для изображений / видео. Включены новые сообщения. Twilio SDK — версия 4.0.0

Конфигурация Push-уведомлений

Вот функция, которая вызывается для отправки мультимедийных сообщений:

     private func sendMediaMessage(messageData: Data, mediaMessageType: MediaMessageType, completion: @escaping (Bool, String?) -> Void) {
        let inputStream = InputStream(data: messageData)
        let options = TCHMessageOptions()
        
        let formatter = DateFormatter()
        formatter.dateFormat = "yyyy-MM-dd_HH-mm-ss-SSSS"
        
        switch mediaMessageType {
        case .photo:
            options.withMediaStream(inputStream,
                                    contentType: "image/jpeg",
                                    defaultFilename: formatter.string(from: Date())   ".jpg",
                                    onStarted: {},
                                    onProgress: { (bytes) in },
                                    onCompleted:  { (mediaSid) in })
        case .video:
            options.withMediaStream(inputStream,
                                    contentType: "video/quicktime",
                                    defaultFilename: formatter.string(from: Date())   ".mov",
                                    onStarted: {},
                                    onProgress: { (bytes) in },
                                    onCompleted: { (mediaSid) in })
        }
        
        self.sendTwilioMessage(messageOptions: options, completion: completion)
    }  

Ответ №1:

Получил информацию от службы поддержки Twilio о том, что Twilio Programmable Chat на данный момент не поддерживает push-уведомления для мультимедийных сообщений.

Однако существует обходной путь, хотя и не очень чистый: в дополнение к сообщениям с изображениями / видео отправьте текстовое сообщение с атрибутами, которые содержат текст push-уведомления, и используйте эти атрибуты, чтобы определить, что это текстовое сообщение должно быть скрыто от пользователя с обеих сторон чата.