Messagekit: How to get video url from didTapMessage

Created on 18 Oct 2018  路  2Comments  路  Source: MessageKit/MessageKit

Hello,
I am using Swift 4.2 on Xcode 10. I want to play video on separate controller when user tap on video type message. I have already implemented MessageCellDelegate to access didTapMessage method and got the indexpath of row to access message from messages array. I am stuck here as I need video url to play video on next controller. I need suggestion for suitable solution.

Thank You

Most helpful comment

func didTapMessage(in cell: MessageCollectionViewCell) {

        if let indexPath = messagesCollectionView.indexPath(for: cell) {
            let message = messageList[indexPath.section]

            switch message.kind {
            case .video(let videoItem):
                if let videoUrl = videoItem.url {
                    let player = AVPlayer(url: videoUrl)
                    let playerViewController = AVPlayerViewController()
                    playerViewController.player = player
                    present(playerViewController, animated: true) {
                        playerViewController.player!.play()
                    }
                }
            default:
                break
            }
        }
    }

All 2 comments

func didTapMessage(in cell: MessageCollectionViewCell) {

        if let indexPath = messagesCollectionView.indexPath(for: cell) {
            let message = messageList[indexPath.section]

            switch message.kind {
            case .video(let videoItem):
                if let videoUrl = videoItem.url {
                    let player = AVPlayer(url: videoUrl)
                    let playerViewController = AVPlayerViewController()
                    playerViewController.player = player
                    present(playerViewController, animated: true) {
                        playerViewController.player!.play()
                    }
                }
            default:
                break
            }
        }
    }

Thank you. It worked 馃挴

Was this page helpful?
0 / 5 - 0 ratings