When council is choosing to reward channels and videos, and they happen to be coming from YT, then it would be very useful to be able to identify possible duplicate uploads/channels, whether intentional or not. It will also help substantially with raising certainty that such videos, of which there could quickly be many, are being published by the true owner - assuming the application itself is honest, as YouTube has a very robust rights management system. Establishing even a baseline level of confidence before deciding to pay someone from council will require far more work.
Note: While Gleev intends to directly pay creators, this may not apply to all apps, and certainly the long term equilibrium has to be that the DAO itself is financing all the onboarding that builds it's network effect.
Proposal
Allow binding URL to relative path, so /... , for YouTube videos and channels. We only want the backend application to be able to set, and perhaps in the future edit?, such paths, so this information should be part of the AppAction metadata field, not CreateVideo, CreateChannel, UpdateVideo or Update Channel. However this information can still be exposed as nullable fields on the Video and Channel entities as properties in the QN/Orionv2 APIs, so as to make queries like "show me all videos not-from YT" very easy.
Example
Channel Creation
YT creator signs up to YPP, they have identifiers (read more here)
custom-URL (mutable before, unique, deprecated for new channels): e.g. YouTubeCreators for https://youtube.com/c/YouTubeCreators or youtube.com/user/YouTube
Normal auth flow succeeds.
YPP infra creates a member for creator on Joystream (does not use AppAction wrapper, as it is only meant for some specific content pallet extrinsics).
YPP infra creates a new channel, owned by this new member, using extrinsic create_channel(.., metadata: m_1) where m_1 encodes the message AppAction { ... metadata: m_2, ... } where m_2 is a message from a schema something like
Dependency
https://github.com/Joystream/joystream/issues/4307
Background
When council is choosing to reward channels and videos, and they happen to be coming from YT, then it would be very useful to be able to identify possible duplicate uploads/channels, whether intentional or not. It will also help substantially with raising certainty that such videos, of which there could quickly be many, are being published by the true owner - assuming the application itself is honest, as YouTube has a very robust rights management system. Establishing even a baseline level of confidence before deciding to pay someone from council will require far more work.
Note: While Gleev intends to directly pay creators, this may not apply to all apps, and certainly the long term equilibrium has to be that the DAO itself is financing all the onboarding that builds it's network effect.
Proposal
Allow binding URL to relative path, so
/...
, for YouTube videos and channels. We only want the backend application to be able to set, and perhaps in the future edit?, such paths, so this information should be part of theAppAction
metadata field, notCreateVideo
,CreateChannel
,UpdateVideo
orUpdate Channel
. However this information can still be exposed as nullable fields on the Video and Channel entities as properties in the QN/Orionv2 APIs, so as to make queries like "show me all videos not-from YT" very easy.Example
Channel Creation
UCUZHFZ9jIKrLroW8LcyJEQQ
for https://youtube.com/channel/UCUZHFZ9jIKrLroW8LcyJEQQ@JoshRichBJJ
for https://www.youtube.com/@JoshRichBJJ.YouTubeCreators
for https://youtube.com/c/YouTubeCreators or youtube.com/user/YouTubeAppAction
wrapper, as it is only meant for some specific content pallet extrinsics).create_channel(.., metadata: m_1)
wherem_1
encodes the messageAppAction { ... metadata: m_2, ... }
wherem_2
is a message from a schema something likeVideo Publishing
Hopefully it's clear how one does the analogous thing for individual videos.
┆Issue is synchronized with this Asana task by Unito