私の目標:
- ユーザーがビデオ クリップをメッセージに送信 (または添付) できるようにする
- 受信時に受信者がビデオを読み取る (再生しない) ことを許可する
- これらのメッセージやビデオをホストするために追加のサーバーを使用しない。つまり、すべてをメッセージ拡張フレームワーク内で実行したいということです。
私は試した:
1) MSMessage の使用:
private func insertVideoIntoMessage(usingUrl url: URL) {
if let conversation = self.activeConversation {
let layout = MSMessageTemplateLayout()
layout.caption = "Some caption"
layout.mediaFileURL = url // Media file (video)
let message = MSMessage()
message.layout = layout
message.url = URL(string: "some url")
conversation.insert(message, completionHandler: { error in
if let error = error {
print("Error:", error)
}
})
}
}
メディアファイル(動画)を受信機に読み込ませたい。ただし、それは不可能のようです。
override func didSelect(_ message: MSMessage, conversation: MSConversation) {
// message doesn't seem to contain any media content
}
2) アタッチメントの使用:
private func insertVideoInMessage(usingUrl url: URL) {
if let conversation = self.activeConversation {
conversation.insertAttachment(url, withAlternateFilename: "Some file name", completionHandler: { error in
if let error = error {
print("Error:", error)
}
})
}
このようにして、添付ファイル (ビデオ) がシステムの既定のアプリによって開かれます。これは、アプリがビデオを読み取れなかったことを意味します。
質問:
- 送信者が送信した動画を受信者に読ませることはできますか?
- 添付ファイルの挿入と MSMessage の挿入を同時に行うことはできますか?
- または、私がやりたいことができる他の方法はありますか?