Skip to main content

RTA Protocol

Real-Time Assets (RTAs) are NFTs that acquire value in real-time through streaming activities. The RTA protocol is implemented through the integration of VibeFactory and PPM contracts.

Protocol Overview

RTAs represent vibestreams as ERC-721 tokens that generate revenue through time-based participation. Unlike traditional NFTs with static value, RTAs accumulate value through active streaming sessions.
RTAs are minted through VibeFactory and monetized via the PPM (Pay-Per-Minute) contract.

Core Mechanics

RTA Creation

RTAs are created through the VibeFactory.createVibestream() function:

Real-Time Value Accrual

When payPerStream is enabled, the RTA generates value through:
  1. Participant Allowances: Users authorize spending for specific RTAs
  2. Time-Based Deductions: PPM contract deducts payments every 60 seconds
  3. Automatic Distribution: 80% to creator, 20% to treasury

RTA Data Structure

Each RTA contains the following immutable and mutable properties:

Payment Flow

1

Authorization

Participants call PPM.authorizeSpending() with tMETIS to create allowances for specific RTAs.
2

Stream Entry

Users call PPM.joinVibestream() to begin time-based payment processing.
3

Real-Time Deduction

PPM contract automatically deducts payments every 60 seconds while participants remain active.
4

Revenue Distribution

Payments are distributed immediately: 80% to RTA creator, 20% to treasury.

Value Accumulation Model

RTAs accumulate value through the following formula:
Where:
  • participant_allowances: Total authorized spending across all participants
  • time_active: Cumulative active streaming time
  • pay_per_minute_rate: Rate defined at RTA creation (in wei per minute)

Security Features

Per-RTA Isolation

Each RTA maintains isolated allowance tracking to prevent cross-contamination of funds.

Emergency Controls

  • PPM.emergencyStop(): Immediately removes participants from streams
  • Pausable functionality for system-wide halts
  • Maximum allowance limits (1000 tMETIS per transaction)

Gas Optimization

  • Minimum 60-second payment intervals prevent gas griefing
  • Batch payment processing for multiple participants
  • Gas-limited external calls (50,000 gas limit)

Integration Points

VibeFactory Integration

VibeKiosk Integration

RTAs can simultaneously support both ticket sales and real-time streaming:

Protocol Diagram

graph TD A[User] —>|createVibestream| B[VibeFactory] B —>|mint RTA NFT| C[ERC-721 Token] B —>|register if payPerStream| D[PPM Contract]E[Participant] —>|authorizeSpending| D E —>|joinVibestream| D D —>|deduct per minute| F[Payment Processing]F —>|80%| G[RTA Creator] F —>|20%| H[Treasury]style C fill:#e1f5fe style D fill:#f3e5f5 style F fill:#fff3e0

Implementation Constants

Next Steps

VibeFactory Contract

Explore RTA creation mechanics

PPM Contract

Learn about payment processing