vue-vimeo-player
vue-vimeo-player copied to clipboard
Private Videos
Hey, I love your package, but I do need to be able to embed our private company videos, not just public ones. Is this possible with this package or will I need to look for another solution?
I looked through your code and I don't see a way to authenticate.
Thanks.
I need to check how vimeo api does it and can add the feature
Could you tell me what error you are getting? I think this is an overall issue with vimeo/player.js, at least from what I saw on their GitHub repo.
I'm just getting a 404 nothing else.
Hi @19peaches, how were you able to go about doing so? There's a whitelisting feature in vimeo. I'm assuming that vimeo will take care of everything. Just curious if you've encountered a certain problem.
@josephharveyangeles
I wasn't able to. I switched to a different package and player.
@19peaches are you still using vimeo? You can share a link to what you chose for future users.
@dobromir-hristov yes I'm still using Vimeo via the Plyr package here: https://github.com/sampotts/plyr
I'm not entirely happy with it, but it works pretty well.
Also, won't the whitelisting work out of the box? Just add the domain on the whitelist. Oh, but yeah you won't be able to see it on localhost...
Whitelisting the domain did not work for me, hence the reason I switched players.
Yes, they use a different player, not the vimeo official one. Sad vimeo dont fix their own stuff... This package uses the official player from Vimeo, so nothing I can do guys, sorry.
@19peaches can you share what particular issue you encountered about the whitelisting? I just finished embedding videos on my app. Was about to upgrade to vimeo pro tomorrow.
@josephharveyangeles
I already answered this earlier, I received a 404 not found when attempting to embed a private video. This includes domain protected videos. Nothing further to add really.
Oh okay thanks, I thought it was only on localhost. I'll keep this in mind when i started working on the private videos. Thanks @19peaches
@19peaches If you want to play domain protected videos at outside, you have to build a proxy script in your allowed domain.
You can build a player page in your domain; then you may call that page inside an iframe from wherever you want...
There is no way else...
The problem is that unlisted videos have an additional STRING element in the identifier:
"NOTE: When you want to embed a video with the unlisted privacy setting, be sure to send the entire URL, not just the portion with the video ID. The URL of an unlisted video contains an additional string of characters that you must include with your GET request to receive embed data of any kind."
I'm missing the issue here, you just add your local domain to the domain exclusion list? Definitely not an issue with this package as I'm using this exact setup with no issue, if I remove my local domain, then the video 404's as you've mentioned.
Try a proxy.
@19peaches I managed to use the component and play private videos using the api, something like that
<vimeo-player ref="player" :options="options" video-url="https://player.vimeo.com/video/{video_id}" :video-id="null" :autoplay="false" :player-height="320" :player-width="640"> </vimeo-player>
You get the url by clicking on the video > insert code.
@dobromir-hristov There's a bug in the implementation of it, it appears. The Vimeo API expects a video ID or a video URL. Not both. When I pass both, I get a 404 error. When I only pass the URL, it works - but I get a nasty warning in the console saying that the ID is required. Either don't make the ID property required, or don't pass the ID to the vimeo player when passing the URL.
Great find, care to make a PR? I am not using the package anymore so such things might happen.
I don't think I can put the level of TCL that would be required with the change. I see that you have branches for vue2 and vue3 and the change would need to be applied and tested in both. But I'm just working with vue2 right now. Also, the recent pull request that fixes the "update" method to support options needs to be taken into consideration as well to ensure both ID and URL based configuration works appropriately.
For reference:
This has been fixed in v1.0.4.
It's now possible to pass only a video-url
in the props which works with unlisted (private) videos:
<vimeo-player video-url="https://vimeo.com/video/{video_id}/{hash}" />