В экономике внимания (Web 2.0) пользователей «вынуждают» платить подписку для доступа к эксклюзивному контенту (всем типам контента, включая контент для взрослых), но нет никакой гарантии, что вы получите те преимущества, которые вы ищете за плату. может быть из-за контента. Создатель не занимается инновациями, или вам придется оформить подписку на более длительный период, если вы просто хотите платить за то, что едите.
Однако Web 3.0, сознательная экономика, предлагает пользователям возможность платить только за то, что они потребляют, а не за более низкую плату в долгосрочной перспективе. В свою очередь, это побуждает создателей контента быть в курсе новых творений и получать доход быстрее и с гораздо меньшими затратами, не полагаясь на централизованные порталы.
Содержание
Монетизированный протокол цепочки платежей
Monetizado — это платформа с оплатой по цепочке, которая позволяет вам монетизировать любую веб-страницу и статический контент (если у вас нет доступа к серверной части для внесения изменений) через Web3.
Вы можете внедрить Monetizado на новостных сайтах, в социальных сетях, порталах с эксклюзивным контентом и т. д. Вы также можете использовать его, чтобы побудить пользователей платить и не видеть рекламу на ваших сайтах.
Функции
С Monetizado вы можете:
- Укажите защищенный контент с определенной суммой, которую пользователи должны заплатить за доступ к нему.
- Просмотрите созданный вами защищенный контент.
- Платите за то, чтобы ваши подписчики/пользователи видели ваш контент.
- Проверьте, есть ли у пользователя доступ к вашему контенту.
- При необходимости измените стоимость доступа к контенту.
- Снимите защиту с контента (если в конечном итоге вы захотите поделиться им со всеми).
- Вычтите деньги, которые вы собираете за свой контент.
Используйте материал
Вы можете использовать монетизацию, чтобы защитить страницы, чтобы их могли видеть только участники, например:
- Новостные отделы.
- видео.
- Аудиод.
- файлы
- Блоки.
- Социальные сети.
- И многие другие.
Стек разработки
Для создания этой платформы мы использовали следующее:
- Надежность для смарт-контракта
- Ремикс, реализация смарт-контракта
- Rootstock testnet, как сеть для проекта
- Разрабатывайте Javascript, SDK и интегрируйте их в веб-сайты.
Наш смарт-контракт очень прост и позволяет вам, среди прочего, указать название контента, который будет монетизироваться, валюту (в rBTC) и несколько функций для активации/деактивации контента, а также оплаты и получения платежей.
МонетизированоBokgobapuku.sol
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; library MonetizadoLibrary { struct ProtectedContent { string name; uint256 accessCost; bool isProtected; uint256 sequenceId; address creator; uint256 amountAvailable; uint256 amountCollected; mapping(address => Subscriber) subscribers; } struct Subscriber { bool paid; uint256 amount; } }
Монетизадов1.соль денег
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./MonetizadoLibrary.sol"; contract Monetizadov1 { // Struct with info about the protected content (for paying to access) struct ProtectedContentInfo { string name; uint256 accessCost; bool isProtected; uint256 sequenceId; address creator; uint256 amountAvailable; uint256 amountCollected; } mapping(address => bool) private creators; mapping(address => bool) public hosting; mapping(address => MonetizadoLibrary.ProtectedContent[]) private paginasProtegidas; event GrantedAccess(address usuario, address creator, uint256 sequenceId); address private _owner; uint256 private _platformFeePercentage; uint256 private _platformBalance; modifier onlyOwner() { require(msg.sender == _owner, "Only the owner can call this function"); _; } constructor() { _owner = msg.sender; _platformFeePercentage = 0; _platformBalance = 0; } function addProtectedContent(string memory name, uint256 accessCost) public returns (uint256) { uint256 cantidadPaginasCreador = paginasProtegidas[msg.sender].length; MonetizadoLibrary.ProtectedContent[] storage paginas = paginasProtegidas[msg.sender]; MonetizadoLibrary.ProtectedContent storage pagina = paginas.push(); pagina.name = name; pagina.accessCost = accessCost; pagina.isProtected = true; pagina.sequenceId = cantidadPaginasCreador; pagina.creator = msg.sender; pagina.amountCollected = 0; pagina.amountAvailable = 0; creators[msg.sender] = true; return cantidadPaginasCreador; } function getProtectedContentsForCurrentUser() public view returns (ProtectedContentInfo[] memory) { uint256 cantidadPaginasPorCreador = paginasProtegidas[msg.sender].length; ProtectedContentInfo[] memory paginas = new ProtectedContentInfo[](cantidadPaginasPorCreador); for (uint256 i = 0; i = amount, "Insufficient balance"); uint256 amountForPlatform = amount * _platformFeePercentage / 10000; _platformBalance += amountForPlatform; payable(_owner).transfer(amountForPlatform); payable(msg.sender).transfer(amount - amountForPlatform); pagina.amountAvailable -= amount; } function getPlatformFee() public view returns(uint256) { return _platformFeePercentage; } function getPlatformBalance() public view returns(uint256) { return _platformBalance; } function withdrawMoneyPlatform(uint256 amount) external onlyOwner { require(_platformBalance >= amount, "Insufficient balance"); payable(msg.sender).transfer(amount); _platformBalance -= amount; } }
Кроме того, мы создали Javascript SDK, который позволяет использовать смарт-контракты на веб-сайтах, особенно для пользователей, которые хотят платить за доступ к определенному контенту.
использовать
- На сайте, который вы хотите монетизировать, установите Web3.JS и Ethers.JS. Например, вы можете сделать это через CDN:
- Скачайте monetizadov1.js и монетизируйте его
-
Создавайте безопасный контент с помощью смарт-контракта или черезМенеджер. -
Добавьте тег ссылки в заголовок HTML-кода вашей страницы с атрибутом «rel» со значением «monetized» и href в следующем формате:
- Сеть: это сеть, в которой контент защищен.
- Creator_address: это адрес (0x..) создателя контента. Это может быть ваш адрес, если вы YouTuber.
- последовательность_id: это идентификатор, используемый для расторжения контракта при указании нового защищенного контента (начинается с 0 и является числовым).
Пример:
В предыдущем примере указано, что контент защищен (с идентификатором 0) создателем (например, 0xda3ec0b8bddd2e8bdedede3333fbaf938fcc18c5) и что комбинация представляет собой платеж, который необходимо внести, чтобы разблокировать его.
- Используйте свойство window.monetizado (инструкции здесь).
Прохождение проекта
Проект уже загружен в тестовую сеть Rootstock, и вы можете просмотреть различные ссылки ниже, включая репозитории и демо-версии:
- Условия смарт-контракта:
- Javascript SDK: .
чтобы заработать деньги - Monetizado Proxy SDK (позволяет монетизировать целые страницы, используя промежуточную страницу для оплаты и проверки):
Деньги - Менеджер монетизации (для управления вашим контентом, сбором средств и многим другим без взаимодействия со смарт-контрактом):
. - Демо от Rootstock: .
- Демонстрационное видео:
Проблемы и решения
Специально для этой идеи мы взяли на себя задачу монетизации платформ Web 2.0 с помощью Web3 без существенного влияния как на создателя контента, так и на пользователя.
Поэтому нам пришлось создать SDK на Javascript, который позволяет монетизировать контент с небольшими изменениями на веб-сайте, поскольку у большинства создателей контента, скорее всего, возникнут проблемы с организацией собственных веб-сайтов (или использованием внешних платформ, где у них мало места). редактировать).
С помощью этого решения нам затем нужно было определить, как идентифицировать контент, который следует монетизировать, и при этом мы использовали тег ссылки HTML для загрузки этого контента, и SDK распознал бы эту сумму в rBTC, если бы пользователь уже заплатил и имел доступ или пришлось заплатить.
Диплом
Rootstock представляет собой огромную возможность для BitcoinFi, поскольку он использует свои возможности и надежность децентрализованной сети. В данном контексте речь идет о внедрении микроплатежей и их связи с креационной экономикой.
Этот пример, «Монетизированный», демонстрирует простоту использования Web3 на платформах Web2, где достаточно места для всех типов пользователей и снижает сложность интеграции этих технологий.