Rafi Bro Hub

Stream recorder. Straight to your cloud, then to Telegram.

M3U8 / HLSMPD / DASHMP4 · MKV · TSM3U listsWebsite linksSeekable MP4

1 Add streams

Works with M3U8, MPD, direct video or audio files, M3U channel lists and normal website links (the page is searched for streams). DRM-protected links are accepted too, but they cannot be played or recorded (a proxy does not change that), so they show a clear "DRM protected" note instead of an upload.

2 MAC portal (Stalker) (optional)

Loads the channel list so you can tick channels and record them. You can also paste a channel's source link (like ffrt http://localhost/ch/1234, or a finished stream link) into the link box above. Portal links are turned into a fresh stream link just before recording. This needs the proxy in panel 6.

3 Quality and length

Seekable MP4 keeps the recording in this browser while it records and uploads a normal MP4 when you stop, so you can drag the timeline in Telegram. Keep this tab open.
Plays an inaudible sound and holds a lock, so the phone does not freeze this page when you turn the screen off or switch apps. Open this page in Chrome (not inside Telegram), press Start from the page, plug in the charger, and turn off Battery saver for Chrome. Phones differ, so check the first recording by watching the time counter after you turn the screen back on.

4 Cloud storage

How to get a token
    Dropbox: record for many hours (auto-renew)
    1. In your Dropbox app, enable files.content.write and sharing.write (needed for the Mirror Leech link) on the Permissions tab and click Submit. If you connected before, press Connect again afterwards so the new permission is included.
    2. On the Settings tab, copy the App key and App secret into the boxes below.
    3. Press Open Dropbox approval, allow access, and copy the code Dropbox shows.
    4. Paste the code and press Connect. The page then renews the token by itself.
    Google Drive: record for many hours (auto-renew)
    1. Open console.cloud.google.com, make a project, then turn on the Google Drive API.
    2. Go to Google Auth Platform (or OAuth consent screen), set it up, and press Publish app so it is "In production". If it stays in Testing, the refresh token dies after 7 days.
    3. Go to Clients (or Credentials) → Create OAuth client ID → type Web application. Under Authorized redirect URIs add https://developers.google.com/oauthplayground. Copy the Client ID and Client secret.
    4. Open developers.google.com/oauthplayground. Press the gear icon, tick Use your own OAuth credentials, and paste the Client ID and secret. Make sure Access type is Offline.
    5. Pick Drive API v3 → https://www.googleapis.com/auth/drive.file → Authorize APIs → Allow. Press Exchange authorization code for tokens and copy the Refresh token.
    6. Paste the three values below and press Connect. The page then renews the token by itself.

    5 Telegram (Mirror Leech)

    /leech sends the file to Telegram, /mirror copies it to the bot's cloud. If your group has several bots, write /leech@YourBotName. Options go after the link.
    After the cloud save, the page sends the /leech command for you from your own Telegram account, and your Mirror Leech bot then sends the video (up to 4 GB if that bot runs on a Premium account). Login once first: in section 4 choose "Telegram (your account)", login, then switch back to Dropbox or Google Drive. Use the group's @username.

    6 Proxy and headers (for blocked streams)

    Referer and User-Agent are sent by the proxy below. A browser alone cannot set them.
    Stream blocked in your country (Fancode, geo-blocked or CORS)? Make a free proxy in 2 minutes
    1. If you used an older proxy code, paste this new code over it and Deploy again (MAC portals need the new parts).
    2. A website cannot hide your own internet address from a stream host, so a small server outside the blocked country has to fetch the stream for you.
    3. Open dash.cloudflare.com, go to Workers & Pages, press Create, choose Hello World, then Deploy.
    4. Press Edit code, delete everything, paste the code below, and press Deploy.
    5. Copy your worker address (it ends in workers.dev) and paste it above with /?url= at the end. Example: https://rafi.yourname.workers.dev/?url=
    6. Portals that use a raw IP address (like http://1.2.3.4:8080/c/) may be refused by Cloudflare. If so, use Deno Deploy or your own server.
    7. Press Test proxy. If the stream is still blocked, the host also blocks that server's country. Host the same code on Deno Deploy (see the last line of the code) and pick a US or Europe region.

    7 Schedule (optional)

    Leave empty to start right now. For a scheduled start this tab must stay open. The recording begins at that time and the stream is checked again then.