Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
MiroTalkM

MiroTalk

@MiroTalk
About
Posts
97
Topics
1
Shares
0
Groups
0
Followers
2
Following
3

Posts

Recent Best Controversial

  • Allow Invited Users to Access MiroTalk
    MiroTalkM MiroTalk

    @james said in Allow Invited Users to Access MiroTalk:

    But, maybe your client (phone) can simply not share the screen.

    At the moment, the getDisplayMedia API is not supported on mobile devices. Support may be introduced in future browser versions. For up-to-date information, see the MDN browser compatibility table.

    MiroTalk

  • Allow Invited Users to Access MiroTalk
    MiroTalkM MiroTalk

    Hey @visamp,

    I will answer you bellow:

    I have setup Mirotalk SFU and it works great for team members on our cloudron.

    Thank you for the feedback!

    I do not see a "let the app handle" the users.

    If you do not want to use OIDC authentication but still want to define your own user logins, you can disable OIDC and enable MiroTalk SFU internal Host Protection Mode:

    In the Cloudron File Manager, open your app’s .env file and update it as follows:

    # Disable Cloudron OIDC
    OIDC_ENABLED=false
    
    # Host protection
    HOST_PROTECTED=true
    
    # Define host users in the format:
    # username:password:displayName:allowedRooms (comma-separated)
    HOST_USERS="user1:pass1:user-1:*|user2@mail.com:pass2:user-2:*|user3:pass3:user-3:*"
    
    • HOST_PROTECTED=true — Enables Host Protection mode.
    • HOST_USERS — List of host users, with * allowing access to all rooms or specific room names separated by commas.

    ⚠️ After making changes, restart your MiroTalk instance for them to take effect.


    You can customize your instance as needed by editing the .env file. For more details, check out this post.


    For a complete environment configuration, check the .env.template file:
    Full env example

    The environment variables are loaded in config.js and serve both as runtime configuration and documentation for additional features:
    Full config.js example


    MiroTalk

  • Mirotalk - Participants can't see each other 2
    MiroTalkM MiroTalk

    @james said in Mirotalk - Participants can't see each other 2:

    I have figured out what the issue is with changing ports.
    An app update will be available soon that fixes this issue.

    Good! 👍

    MiroTalk

  • "read-only" - can't edit static page in MiroTalk
    MiroTalkM MiroTalk

    @slfhstng said in "read-only" - can't edit static page in MiroTalk:

    @MiroTalk Thank you for such a detailed overview! I'm really enjoying MiroTalk (I'm telling everyone about it).

    Thanks again!

    You're welcome! and Thank you! ♥

    MiroTalk

  • "read-only" - can't edit static page in MiroTalk
    MiroTalkM MiroTalk

    @slfhstng said in "read-only" - can't edit static page in MiroTalk:

    I wanted to edit some of the text on this page, but it wouldn't let me save when using Cloudron console. The message said it was read-only.

    With MiroTalk SFU, everything is possible! ✨

    By editing the env file via the Cloudron App file manager:

    1. Open the MiroTalk SFU settings.

    01-settings.png

    1. Navigate to the File Manager.

    02-filemenager.png

    1. Open the env file (double-click to edit), make your changes, save, and then restart the instance for the changes to take effect.

    03-edit-env-and-restart-instance.png

    you can fully rebrand MiroTalk, including changing the app name, logo, description, language, and even customizing which buttons appear in the meeting interface, among many other options:

    env example

    Here’s an example of a simple landing page rebranding, without touching the source code. Everything is centralized in a single env file, which is injected into config.js for documentation purposes:

    landing.png

    # App
    UI_LANGUAGE=en                                    # Interface language (en, es, fr, etc.)
    APP_NAME=YOUR-APP-NAME                            # Application name
    APP_TITLE=YOUR-APP-TITLE                          # Custom HTML title (leave empty for default)
    APP_DESCRIPTION=YOUR-APP-DESC                     # Application description
    JOIN_DESCRIPTION=JOIN-DESC                        # Join screen description
    JOIN_BUTTON_LABEL=JOIN ROOM                       # Join button text
    JOIN_LAST_LABEL=Your recent room:                 # Recent room label text
    
    # OG
    OG_TYPE=app-webrtc                                # OpenGraph type
    OG_SITE_NAME=YOUR-APP-NAME                        # OG site name
    OG_TITLE=                                         # OG title
    OG_DESCRIPTION=                                   # OG description
    OG_IMAGE_URL=https://MIROTALK-CLOUDRON-URL/images/mirotalksfu.png # OG image
    OG_URL=https://MIROTALK-CLOUDRON-URL              # OG URL
    
    # HTML
    SHOW_TOP_SPONSORS=false                            # Show top sponsors section (true|false)
    SHOW_FEATURES=false                                # Show features section (true|false)
    SHOW_TEAMS=false                                   # Show teams section (true|false)
    SHOW_TRY_EASIER=false                              # Show "try easier" section (true|false)
    SHOW_POWERED_BY=false                              # Show powered by (true|false)
    SHOW_SPONSORS=false                                # Show sponsors (true|false)
    SHOW_ADVERTISERS=false                             # Show advertisers (true|false)
    SHOW_FOOTER=false                                  # Show footer (true|false)
    

    For the Who Are You page (which I believe you’re referring to), you can customize the following environment variables in the env file as well to adapt the page to your preferences:

    # Who Are You
    WHO_ARE_YOU_TITLE="Who are you?"  
    WHO_ARE_YOU_DESCRIPTION="If you're the presenter, please log in now.<br />Otherwise, please wait for the presenter to join."  
    WHO_ARE_YOU_BUTTON_LOGIN_LABEL="LOGIN"  
    WHO_ARE_YOU_JOIN_LABEL="JOIN ROOM"
    

    ⚠️ Important: To use these rebranding and customization features, a Regular License is required. This ensures legal compliance and supports the ongoing development and deployment of MiroTalk.

    You can purchase the license directly from CodeCanyon here:

    👉 MiroTalk SFU – WebRTC Real-time Video Conferences

    One-time payment for a lifetime license, including all updates.

    Thank you for your support! ♥

    MiroTalk

  • Error installing Miro SFU
    MiroTalkM MiroTalk

    @joseph said in Error installing Miro SFU:

    I think this issue was boiled down to the usage of ephermeral ports . That port which you are trying to install mirotalk in is in use by some other process . See https://forum.cloudron.io/topic/14259/sftpgo-or-mirotalk-sfu-not-starting-because-they-use-ephemeral-ports/ . In essence, use ports < 32767 . The coming version already shows a warning when you try this range.

    In case MiroTalk SFU support also WebRTCServer mode:

    🛰 How to Enable WebRTCServer Mode in MiroTalk SFU (Use Fewer Ports)

    If you want to reduce the number of ports used by MiroTalk SFU and make it easier to scale, you can enable the WebRTCServer Mode. This mode lets the internal WebRTC server handle all the media traffic, meaning you don’t need big port ranges anymore.


    ⚙️ Step-by-Step Setup

    1. Open your environment file
      In your file manager (or terminal), open the env file for your MiroTalk SFU instance.

    2. Add the following line

      SFU_SERVER=true
      
    3. Understand the new port behavior

      • If you start from port 25000, here’s what happens:

        • 1 CPU → 1 worker → uses port 25000
        • 2 CPUs → 2 workers → use ports 25000–25001
        • and so on…

      🔹 Each worker uses only one port, not a whole range.
      🔹 The WebRTCServer manages all internal media traffic automatically.
      🔹 MiroTalk SFU keeps working just like before only the port handling changes.

    4. Restart your instance
      After saving the env file, restart your MiroTalk SFU instance.


    ✅ Benefits

    • 🚪 Fewer open ports → simpler firewall setup
    • ⚡ Less chance of port conflicts
    • 📈 Better scalability → easy to scale by CPU count
    • 🔒 Cleaner and more secure port configuration

    🧠 Notes

    This mode is still being tested, but early results look promising.
    You can learn more about the WebRTCServer concept here:
    👉 Mediasoup Discussion: WebRTCServer and Port Binding

    MiroTalk

  • Use Cloudron Logins for host protected settings
    MiroTalkM MiroTalk

    @admeister said in Use Cloudron Logins for host protected settings:

    I'm trying to configure Mirotalk SFU to only allow logged in Cloudron users to join a room.

    Simply remove all the old or unnecessary entries from your env file:

    del.png

    Note: The parameter ALLOW_ROOM_CREATION_WITHOUT_HOST is not related to MiroTalk SFU.

    To explicitly configure MiroTalk with Cloudron OIDC Authentication (this is also the default behavior if not explicitly set), use the following environment variables:

    OIDC_ENABLED=true
    OIDC_ALLOW_ROOMS_CREATION_FOR_AUTH_USERS=true
    
    • OIDC_ENABLED=true — Enables OIDC authentication.
    • OIDC_ALLOW_ROOMS_CREATION_FOR_AUTH_USERS=true — Allows all authenticated users via OIDC to create their own rooms.

    If you do not want to use OIDC authentication but still want to define your own user logins, you can disable OIDC and enable MiroTalk SFU internal Host Protection Mode:

    # Disable Cloudron OIDC
    OIDC_ENABLED=false
    
    # Host protection
    HOST_PROTECTED=true
    HOST_USER_AUTH=false
    
    # Define host users in the format:
    # username:password:displayName:allowedRooms (comma-separated)
    HOST_USERS="user1:pass1:user-1:*|user2@mail.com:pass2:user two:*|user3:pass3:user name:*"
    
    • HOST_PROTECTED=true — Enables Host Protection mode.
    • HOST_USER_AUTH=false — Disables additional user authentication beyond host users.
    • HOST_USERS — List of host users, with * allowing access to all rooms or specific room names separated by commas.

    ⚠️ After making changes, restart your MiroTalk instance for them to take effect.


    For a complete environment configuration, check the .env.template file:
    Full env example

    The environment variables are loaded in config.js and serve both as runtime configuration and documentation for additional features:
    Full config.js example

    MiroTalk mirotalk

  • Mirotalk - Participants can't see each other 2
    MiroTalkM MiroTalk

    @ekevu123 said in Mirotalk - Participants can't see each other 2:

    If I am not mistaken, a new Mirotalk installation on Cloudron sets the port automatically to 25000. I have verified that I have that set up once more.

    Not sure why, but in the Cloudron setup, it only works when the port range starts from 25000. 🤷

    In theory, it should work with any port range, as long as the selected ports are not already in use by another application and are not blocked by your firewall or ISP.

    MiroTalk

  • Should MiroTalk SFU work well for 6-10 people?
    MiroTalkM MiroTalk

    It’s very important that the RTC port range you configure is:

    • Not already in use by any other application
    • Not blocked by your firewall or ISP

    For testing purposes, you can enable the SFU server mode by editing the env file (via the File Manager) and setting:

    SFU_SERVER=true
    

    After saving the change, restart the service and check if anything improves.
    In this mode, MiroTalk SFU uses fewer ports while maintaining nearly the same functionality.

    For more details, see the discussion here:
    🔗 Mediasoup: WebRTCServer – Firewall Settings and Port Binding

    💡 Note: MiroTalk SFU can handle approximately 100 concurrent participants per CPU core, depending on your hardware and network conditions.

    MiroTalk

  • Calls not working on updated instances past v2.2.22
    MiroTalkM MiroTalk

    @james said in Calls not working on updated instances past v2.2.22:

    Thanks for the clarification.

    You're welcome 😉

    MiroTalk update loading

  • Calls not working on updated instances past v2.2.22
    MiroTalkM MiroTalk

    otherwise what's the different between the SFU and P2P versions?

    • MiroTalk P2P → Works without a central media server. All peers connect directly to each other. For this reason, it does need STUN/TURN configuration. STUN helps peers discover their public IP/port, and TURN relays media when direct connections aren’t possible (e.g. behind strict NAT/firewalls).

    • MiroTalk SFU → Works through a Selective Forwarding Unit (based on mediasoup). Here, all peers send their media streams to the SFU, which then forwards them to others. Because every client only needs to connect to the SFU, it doesn’t require TURN in most cases. The SFU is the “meeting point,” so peers don’t have to negotiate direct NAT traversal with each other. STUN/TURN isn’t part of its configuration by default, since mediasoup handles the media routing internally.

    But it seems MiroTalk SFU itself has no option to configure TURN/STUN.

    • P2P → needs STUN/TURN for NAT traversal.
    • SFU → doesn’t usually require STUN/TURN, since the media server acts as the central hub for all streams. However, you must ensure that the necessary port ranges are open and not blocked by firewalls or the ISP.
    MiroTalk update loading

  • MiroTalk P2P cannot join rooms if OIDC user is same as .env user
    MiroTalkM MiroTalk

    @robi said in MiroTalk P2P cannot join rooms if OIDC user is same as .env user:

    API_KEY_SECRET=<redacted>
    HOST_PROTECTED=true
    HOST_USER_AUTH=false
    HOST_USERS=<includes 'robi'>

    Hi Rob,

    Please try using the following settings in your env file:

    API_KEY_SECRET=your-api-key-secret
    OIDC_ENABLED=false
    HOST_PROTECTED=true
    HOST_USER_AUTH=false
    HOST_USERS='[{"username": "robi", "password": "your-password"}]'
    

    Make sure to add OIDC_ENABLED=false to explicitly disable OIDC, and update HOST_USERS to use the correct JSON format as shown above. Then restart the your MiroTalk P2P instance.

    MiroTalk

  • MiroTalk P2P cannot join rooms if OIDC user is same as .env user
    MiroTalkM MiroTalk

    @robi said in MiroTalk P2P cannot join rooms if OIDC user is same as .env user:

    My install is from before OIDC was available, hence my Cloudron user 'robi' was added to the .env file.

    It's not entirely clear what you mean by ".env user." Just to clarify, MiroTalk P2P supports two ways to protect your instance from unauthorized access:

    1. Using OIDC (OpenID Connect):

    OIDC_ENABLED=true
    OIDC_ALLOW_ROOMS_CREATION_FOR_AUTH_USERS=true
    
    • This allows all users authenticated via your OIDC provider to access the instance.
    • If OIDC_ALLOW_ROOMS_CREATION_FOR_AUTH_USERS is set to true, they can also create their own rooms.

    2. Without OIDC (Local Auth):

    HOST_PROTECTED=true
    HOST_USER_AUTH=false
    HOST_USERS='[{"username": "admin", "password": "admin"},{"username": "guest", "password": "guest"}]'
    
    • In this mode, users defined in HOST_USERS are allowed to log in and join rooms.
    • This is a simple JSON-based user/password list stored in your .env file.

    So when you refer to a ".env user," I assume you mean a user defined in the HOST_USERS list.

    For additional context please refer to this post as well:
    🔗 https://forum.cloudron.io/post/108348

    MiroTalk

  • MiroTalk P2P cannot join rooms if OIDC user is same as .env user
    MiroTalkM MiroTalk

    So if i understand well the issue you encountered was related to an older version of MiroTalk P2P?


    In the latest release, I’m unable to reproduce the problem, everything seems works as expected with OIDC enabled.

    Please update your MiroTalk P2P instance to the latest version, and let me know if the issue persists.

    Thank you!


    MiroTalk

  • MiroTalk P2P cannot join rooms if OIDC user is same as .env user
    MiroTalkM MiroTalk

    @robi said in MiroTalk P2P cannot join rooms if OIDC user is same as .env user:

    Since I somehow ended up in this configuration, the workaround was to edit the username in the .env file so it's not the same.

    Hi Robi, could you please provide the exact steps and configuration you used to reproduce the issue? Thank you!

    MiroTalk

  • ♥️ Support MiroTalk
    MiroTalkM MiroTalk

    Thank you so much @James — I really appreciate it! ❤️

    MiroTalk

  • Room link gets lost after OIDC login
    MiroTalkM MiroTalk

    ✅ Done in MiroTalk SFU v1.8.84

    MiroTalk

  • ♥️ Support MiroTalk
    MiroTalkM MiroTalk

    mirotalk-preview.png

    MiroTalk is built with love to power seamless, secure, and open communication for everyone. If you find it valuable, please consider supporting the project — your contribution helps us:

    ✅ Keep the platform free and open
    ✅ Develop powerful new features
    ✅ Enhance performance and reliability
    ✅ Deliver timely updates and support

    You can support MiroTalk in three impactful ways:

    🔹 Support us via GitHub Sponsors – Choose from different sponsorship tiers, each offering unique perks and ways to get involved. Your support helps us maintain, improve, and grow MiroTalk.
    🔹 Support with a Donation – Every contribution, big or small, truly makes a difference
    🔹 Purchase a License – Build with confidence in your private or commercial projects, and help us keep improving MiroTalk.

    👉 GitHub
    👉 PayPal
    👉 Stripe
    👉 CodeCanyon

    Stay tuned! Join the community forum: https://discord.gg/rgGYfeYW3N

    Let’s build the future of communication together. Thank you for being part of the MiroTalk journey! ❤️

    MiroTalk

  • Host Users not defined in env
    MiroTalkM MiroTalk

    @kmz010101 said in Host Users not defined in env:

    And now it works with the new instance.

    Good! 👍

    MiroTalk mirotalk configuration

  • Room link gets lost after OIDC login
    MiroTalkM MiroTalk

    @imc67 said in Room link gets lost after OIDC login:

    @mirotalk-57bab571 indeed 1.8.81 solved the issue!! Many many thanks for that!

    Good! You're welcome.

    Just one more thing: can you make the (button)texts on the WhoAreYou page configurable via .env just like the main page?

    Sure, I like the idea, it will be available in the next release!

    You’ll then be able to configure WhoAreYou as needed with the following options in the env:

    # Who Are You
    WHO_ARE_YOU_TITLE="Who are you?"                  # Title
    WHO_ARE_YOU_DESCRIPTION="If you're the presenter, please log in now.<br />Otherwise, kindly wait for the presenter to join." # Description
    WHO_ARE_YOU_BUTTON_LOGIN_LABEL="LOGIN"            # Login button label
    WHO_ARE_YOU_JOIN_LABEL="JOIN ROOM"                # Join button label
    
    MiroTalk
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search