Q&A

Googleドライブ内の動画ファイルを返したい

前提・実現したいこと

特定キーワードが送信された時にGoogleドライブ内の動画を動画メッセージオブジェクトとして返すBotを作りたい

発生している問題・エラーメッセージ

プレビュー画像は表示されるものの、タップして表示しようとすると「不明なエラーです。しばらくしてからご利用ください」と表示される。

試したこと

下記を参考に以下を確認 https://developers.line.biz/ja/reference/messaging-api/#video-message ・originalContentUrlの要件を満たしている(最大文字数:2000、HTTPS(TLS 1.2以降)、mp4、最大ファイルサイズ:200MB) ・Googleドライブの動画ファイルの共有設定が「URLを知っている全員が閲覧可能」になっている(URL直打ちだときちんと再生される) ・動画ファイルをYouTubeにアップロードしてURL取得 → 同様の事象 ・対象ファイルのURLを変更(XXXXX部分)  https://drive.google.com/file/d/XXXXXXXXXXXXXXXXX/view?usp=sharing  → https://drive.google.com/uc?id=XXXXXXXXXXXXXXXXXXXXXX

  • 0
  • 2
  • 556
  • twitter facebook

@シュークリーム さま 迅速なご回答をありがとうございます! https://XXXXXXXXXX/mp4 で終わるような動画ファイルへの直接リンクが必要そうということですね。S3で試してみます。 また確かに今回の要件では普通にURLリンクを返すでもいいなと思ったのでこちらでも試してみます! ありがとうございました。

  • 0

おそらくなんですが、 現在指定されているURLが動画の閲覧ページ(HTML)へのURLになってしまっているのではないでしょうか? messageに指定しなければいけないのは、mp4ファイルへの直接のリンクだと思います。

Google DriveやYouTubeなどは、mp4ファイルへの直接のリンクを取得することはできないので、 video-mesasgeを利用するなら、 AWS S3などの直接動画ファイルをアップロードして配信できるものを利用する必要がありそうです。

ちなみにvideo-messageではなく、普通にURLリンクとして、 Google DriveやYouTubeの「URLを知っている全員が閲覧可能」状態のリンクを送れば、 それらのページがWebブラウザで開かれて動画が再生できるので、 別にそれでも良いのかなと思いました。

  • 2
Are you sure? question.vm