WordPress.org

Make WordPress Core

Opened 3 years ago

Closed 2 years ago

#38367 closed enhancement (fixed)

Adding Screencast.com as an oEmbed provider

Reported by: paulstanos Owned by: ENDif Media
Milestone: 4.8 Priority: normal
Severity: normal Version:
Component: Embeds Keywords: good-first-bug has-patch
Focuses: Cc:
PR Number:

Description

This ticket is a request to have Screencast.com added to the list of oEmbed providers.

Screencast.com is an image and video sharing site created by TechSmith Corporation. It has 2.2 million monthly active users and integrates with other TechSmith products like Snagit, Camtasia, and Jing.

Screencast oEmbed documentation can be found here. The oEmbed API URL is https://api.screencast.com/external/oembed and is also available at http://www.screencast.com/api/external/oembed.

Example embeddable URLs:

  1. http://www.screencast.com/t/<hash>
  1. http://www.screencast.com/users/<user_name>/folders/<folder_name>/media/<media_GUID>

Attachments (4)

38367.diff (1.3 KB) - added by ENDif Media 3 years ago.
38367_v2.diff (821 bytes) - added by ENDif Media 3 years ago.
38367_v3.diff (1.2 KB) - added by ENDif Media 3 years ago.
38367_v4.diff (1.2 KB) - added by ENDif Media 3 years ago.

Download all attachments as: .zip

Change History (30)

#1 @swissspidy
3 years ago

Hey there,

Thanks for opening this ticket! Could you please answer the questions on whitelisting providers? This will help us in the decision process.

#2 @paulstanos
3 years ago

  1. Is the service popular enough for core developers to have heard of it before? Is it “mainstream?”
    • After searching this site I found quite a few instances of developers and other users posting links to screenshots and videos hosted on Screencast.com. Developers may also know of other TechSmith products such as Snagit, Camtasia, or Jing which all integrate with Screencast to share images and video. Screencast has been around for 10 years and hosts roughly 99 million pieces of content. We also have a free offering, allowing anyone to sign up and share their content.
  2. If similar services are already supported, how does this service compare in terms of size, features, and backing?
    • Screencast has 2.2 million active monthly users and it hosts over 80 million images and 19 million videos. As mentioned above, it integrates with many of TechSmith's other products including the latest versions of Snagit and Camtasia. Advanced features like captions and quizzing are supported with videos on Screencast. Screencast is actively being worked on and supported by TechSmith.
  3. Does this service have a large following on Twitter, Facebook, or other social media? Is its Twitter account verified?
    • Screencast itself doesn't have a Twitter account, but TechSmith does. The account is verified and has 33.9k followers. TechSmith also has a Facebook page here.
  4. Is its oEmbed endpoint clearly established and properly documented? (Sometimes, they are just a developer’s pet project that may not be supported.)
    • The oEmbed API on Screencast was recently added, but is fully supported and is currently in use with the live service. You can find the documentation on the oEmbed API here.
  5. Does the service make an effort to build relationships with developers, such as through robust APIs?
    • Screencast APIs are documented here in a public GitHub repository, and is available for developers to integrate with the service.
  6. How old is the service?
    • Screencast is 10 years old.
  7. Does it have a well-established Wikipedia article?
    • Screencast does not have its own Wikipedia article, but does have a section on the TechSmith Wikipedia article here.
  8. Has anyone written a WordPress plugin that leverages the service in some way, whether adding it as an oEmbed provider, creating a shortcode, or leveraging other APIs of the service? Do these plugins have any noticeable adoption or traction that would indicate usage and demand?
    • A Screencast plugin was developed several years ago, but it has not been maintained for quite a while.
  9. Is the provider frequently proposed?
    • oEmbed support was added less than 2 months ago, so this is likely the first proposal to add support.

I would also like to note that Screencast has been added to the list of oEmbed providers for the hosted WordPress option. Getting support in WordPress Core for self-hosted sites would keep the experience consistent across both.

#3 @pento
3 years ago

Thank you for the answers, @paulstanos! I just added a new question (that I'd been meaning to do for ages) to the list, could you provide your input on this one, too?

Does the oEmbed endpoint work with WordPress’ oEmbed auto-discovery? If not, could it be made to work with additional HTML tags or attributes being whitelisted?

#4 @paulstanos
3 years ago

Does the oEmbed endpoint work with WordPress’ oEmbed auto-discovery?

Yes. We've tested Screencast links with hosted and self-hosted WordPress sites and the content is embedded as expected when the post is previewed or submitted.

#5 @paulstanos
3 years ago

I would like to bring up one issue I've discovered with embedding Screencast videos. Using a WordPress 4.5.4 site and pasting a link to a video does result in it getting auto-expanded in the editor (which I would only expect if Screencast was added as an oEmbed provider). However, I noticed some issues loading plugins and also CORS requests that I believe are due to iframe sandboxing: see the errors here.

Users can normally embed videos using an embed code we provide them that involves using an iframe, which works as I expect when used directly in the WordPress editor. The oEmbed endpoint just returns that same embed code to be used in the HTML, so I'm not sure why I would be seeing different results here.

I did find this post about embedding of other WordPress posts explaining some about sandboxed iframes. One thing I noted was that the link ends in /embed/ when embedding other WordPress posts. Screencast's content links also ends in /embed/ in the src to our embeddable iframe.

This might be a long shot, but could the fact that our links end in /embed/ are resulting in WordPress embedding our content in this way without us being an oEmbed provider? Is there anything we can do about the iframe sandboxing so videos will work in the same way that using the embed code does?

Last edited 3 years ago by paulstanos (previous) (diff)

#6 follow-up: @swissspidy
3 years ago

@paulstanos The URL is irrelevant. The auto-discovery just sees the iframe tag in the embed code and uses this.

#7 in reply to: ↑ 6 @paulstanos
3 years ago

Replying to swissspidy:

@paulstanos The URL is irrelevant. The auto-discovery just sees the iframe tag in the embed code and uses this.

Any suggestions with how to deal with the iframe sandboxing issue? The auto-discovery seems to be working seeing as it is expanding the links into an iframe, but it just can't load the content due to the issues I mentioned previously.

#8 @swissspidy
3 years ago

So I was just looking for some video I can test this with and used http://www.screencast.com/t/6Da7G6EpV to embed a screencast in a post. Auto-discovery kicked in and the video was embedded without problems. No CORS errors.

#9 @paulstanos
3 years ago

By the looks of it the link you used was embedding using an older Flash player to show that MP4. If you want to test this with the latest player you can use http://www.screencast.com/t/pLPoObW9yNiV. The new player is HTML 5 based, so this may account for the difference in behavior between the two links.

Last edited 3 years ago by paulstanos (previous) (diff)

#10 @paulstanos
3 years ago

@swissspidy I was hoping you could provide an update on the status of this ticket. Were you able to reproduce the issue I'm seeing using the link above? Is there any additional information you need from me to help move this forward?

#11 @chrislarson
3 years ago

@swissspidy @pento Just checking in! I'm the Product Lead for Snagit/Jing/Screencast over at TechSmith. Wanted to make myself available if you have any other questions. @paulstanos answered them well thus far.

I haven't used or set up a WordPress site in a couple years, but you guys do great work. Kudos. 🎉

#12 @swissspidy
3 years ago

  • Keywords needs-patch added
  • Milestone changed from Awaiting Review to Future Release

@paulstanos Thanks for the ping! Sorry for my late reply, apparently I never submitted it despite writing one.

So yeah, I was able to reproduce the issue with the second URL, which means that the oEmbed endpoint does not work with WordPress' oEmbed auto-discovery. Screencast.com would need to be added to the oEmbed provider whitelist in WP_oEmbed in order for that to be fixed.

I'm therefore moving this to the milestone for consideration.

#13 @paulstanos
3 years ago

I'm therefore moving this to the milestone for consideration.

Much appreciated @swissspidy. I'll keep an eye on the ticket to see how this progresses. If you need any more information from us just let me know. Thanks!

#14 @austinnort
3 years ago

Hi @swissspidy and @pento, I'm just checking in on this ticket. I'm the project manager for Screencast.com here at TechSmith. We are really looking forward to being whitelisted so that our mutual customers will be able to utilize our services to the fullest potential.
It looks like this was moved to the milestone for consideration 2 weeks ago. Do you have an idea of when we can expect this to be completed? Feel free to reach out with any questions!

Cheers!

#15 @swissspidy
3 years ago

@austinnort I moved the ticket to the 'Future Release' milestone as 4.7 was already in beta at the time and no patch is available. If there's a patch in time, we'll consider this enhancement for the next release.

#16 @austinnort
3 years ago

Thanks @swissspidy. Do you know when the next milestone will be? (weeks? months?)
Also, is the patch for the next release something you are expecting from our devs?

#17 @swissspidy
3 years ago

  • Keywords good-first-bug added

@austinnort I was going to say spring, but it looks like WordPress Releases will be handled a bit differently in the future, so I can't guarantee anything. The patch doesn't need to be provided by y'all, anyone can contribute.

As soon as a patch emerges, we can add this to trunk and it would be included in the next release.

@ENDif Media
3 years ago

@ENDif Media
3 years ago

#18 @ENDif Media
3 years ago

  • Keywords has-patch added; needs-patch removed

checkout 38367_v2.diff there is a typo in the first, couldn't find a way to remove the upload.

Last edited 3 years ago by ENDif Media (previous) (diff)

#19 follow-up: @swissspidy
3 years ago

  • Owner set to ENDif Media
  • Status changed from new to assigned

@ENDif Media Assigning this ticket to you to mark this good-first-bug as claimed. Would you mind updating the inline documentation as well? There's a table showing all the providers and when they were added.

#20 in reply to: ↑ 19 @ENDif Media
3 years ago

Replying to swissspidy:

@ENDif Media Assigning this ticket to you to mark this good-first-bug as claimed. Would you mind updating the inline documentation as well? There's a table showing all the providers and when they were added.

@swissspidy coo, thanks. which version do i attribute this update to?

#21 @swissspidy
3 years ago

@ENDif Media That would be 4.8.0 for now, as we usually do not add oEmbed providers in minor releases. Alternatively, you could use 4.x.0 to be more flexible :)

@ENDif Media
3 years ago

#22 @ENDif Media
3 years ago

@swissspidy cool, updated :)

#23 @swissspidy
3 years ago

  • Milestone changed from Future Release to 4.8

Note that the entry for twitter.com/lists is duplicated in 38367_v3.diff. Otherwise it's fine.

@ENDif Media
3 years ago

#24 @ENDif Media
3 years ago

duplicate twitter line removed in 38367_v4.diff

This ticket was mentioned in Slack in #core by jeffpaul. View the logs.


2 years ago

#26 @swissspidy
2 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

In 40574:

Embeds: Add screencast.com to oEmbed provider whitelist.

Props ENDif Media.
Fixes #38367.

Note: See TracTickets for help on using tickets.