Rooms
Rooms are collaborative spaces where teams gather to discuss ideas, share updates, and make decisions. Each Room is a dedicated environment with its own chat, voice channels, and collection of Sparks.
What Are Rooms?
Section titled “What Are Rooms?”Think of a Room as a virtual meeting space that persists over time. Unlike a calendar meeting that ends when the call drops, a Room stays active. Conversations, Sparks, and shared context accumulate, creating a living record of your team’s work.
Rooms appear as tiles on your canvas. Click a Room to enter it and see all the Sparks, messages, and activity inside.
Room Anatomy
Section titled “Room Anatomy”Every Room includes:
Identity
Section titled “Identity”- Title: A clear name that describes the Room’s purpose
- Description: Additional context about what the Room is for
- Color: A visual identifier that makes the Room easy to spot on the canvas
- Icon: A symbol that represents the Room’s theme or purpose
These elements help teams quickly identify and navigate between Rooms.
Canvas Presence
Section titled “Canvas Presence”Rooms exist as tiles on your personal canvas. Each tile shows:
- Room name and icon
- Color coding
- Activity indicators (new messages, active participants)
- Quick access to enter the Room
You can position Room tiles anywhere on your canvas, grouping related Rooms together or arranging them by priority.
Communication Channels
Section titled “Communication Channels”Rooms support multiple modes of real-time communication:
Text Chat
Section titled “Text Chat”Every Room has a persistent chat powered by Agora Chat SDK. Messages are threaded, searchable, and preserved over time. Use chat for:
- Asynchronous updates and questions
- Sharing links and resources
- Quick coordination
- Documenting decisions
Voice and Video Calls
Section titled “Voice and Video Calls”Rooms support live audio and video calls powered by Agora RTC SDK. Start a call when you need:
- Real-time discussion
- Screen sharing and demos
- Face-to-face collaboration
- Quick sync-ups
Calls are ephemeral, but you can summarize key points in chat or update Sparks to preserve decisions.
Organized Channels
Section titled “Organized Channels”Rooms can have multiple channels for different types of conversations:
- General discussion
- Announcements
- Specific topics or workstreams
- Social and off-topic
Channels keep conversations organized without requiring separate Rooms for every topic.
Sparks Collection
Section titled “Sparks Collection”Rooms are where Sparks live. Every Spark you create exists within a specific Room. The Room provides:
- A canvas where Sparks are positioned spatially
- Context for understanding what each Spark is about
- A shared space where team members can discuss and refine Sparks
Rooms and Sparks work together: Rooms provide the space, Sparks provide the structure.
Public vs. Private Rooms
Section titled “Public vs. Private Rooms”Rooms can be configured as public or private:
Public Rooms
Section titled “Public Rooms”Public Rooms are visible to everyone in your organization. Anyone can:
- See the Room on the canvas
- Enter the Room and view Sparks
- Participate in chat and calls
- Create new Sparks
Use public Rooms for:
- Company-wide announcements
- Open brainstorming
- Cross-team collaboration
- Shared resources
Private Rooms
Section titled “Private Rooms”Private Rooms are visible only to invited members. Access is controlled by:
- Explicit invitations
- Membership lists
- Permission settings
Use private Rooms for:
- Sensitive discussions
- Executive planning
- Client projects
- Small team coordination
You can change a Room’s visibility at any time, though moving from public to private requires careful consideration of who currently has access.
Creating and Managing Rooms
Section titled “Creating and Managing Rooms”Creating a Room
Section titled “Creating a Room”To create a new Room:
- Click the “New Room” button on your canvas
- Choose a title and description
- Select a color and icon
- Set visibility (public or private)
- Invite initial members (for private Rooms)
The Room appears immediately on your canvas and is ready to use.
Room Settings
Section titled “Room Settings”Room owners and administrators can configure:
- Basic information: Title, description, color, icon
- Visibility: Public or private
- Membership: Who can access the Room
- Channels: Create, rename, or archive channels
- Moderation: Content policies and reporting settings
- Notifications: How members are alerted to activity
Settings can be updated at any time to adapt to changing needs.
Inviting Members
Section titled “Inviting Members”For private Rooms, you can invite members by:
- Email: Send an invitation to any email address
- Shareable link: Generate a link that grants access when clicked
- Direct selection: Choose from existing team members
Invited members receive a notification and can enter the Room immediately.
Room Activity and Presence
Section titled “Room Activity and Presence”Rooms show real-time activity indicators:
Active Participants
Section titled “Active Participants”See who’s currently in the Room:
- Profile pictures of active members
- Presence indicators (online, away, offline)
- Activity status (typing, in a call, viewing Sparks)
This helps you know when it’s a good time to start a conversation or join a call.
Recent Activity
Section titled “Recent Activity”Room tiles show recent activity:
- Unread message counts
- New Sparks created
- Ongoing calls
- Recent updates
These indicators help you prioritize which Rooms need your attention.
Notifications
Section titled “Notifications”Rooms can notify you of important events:
- Direct mentions in chat
- New Sparks created
- Calls starting
- Announcements
Configure notification preferences to stay informed without being overwhelmed.
Content Moderation
Section titled “Content Moderation”Rooms include moderation tools to maintain productive, respectful spaces:
Reporting
Section titled “Reporting”Any Room member can report:
- Inappropriate messages
- Problematic Sparks
- Disruptive behavior
Reports are reviewed by Room administrators and platform moderators.
Admin Actions
Section titled “Admin Actions”Room administrators can:
- Hide or remove messages
- Hide Sparks (see Sparks documentation)
- Mute or remove disruptive members
- Archive or lock channels
These actions are logged for transparency and accountability.
Appeals
Section titled “Appeals”Members can appeal moderation decisions. Appeals are reviewed by administrators, who can reverse actions if appropriate.
Room Workflows
Section titled “Room Workflows”Brainstorming Sessions
Section titled “Brainstorming Sessions”Use Rooms for structured brainstorming:
- Create a Room for the brainstorming topic
- Invite relevant team members
- Use chat to share initial thoughts
- Create Sparks for promising ideas
- Use voice/video to discuss and refine
- Position Sparks on the canvas to show relationships
The Room becomes a permanent record of the session, with all ideas preserved and organized.
Project Coordination
Section titled “Project Coordination”Use Rooms to coordinate ongoing projects:
- Create a Room for the project
- Set up channels for different workstreams
- Create Sparks for key deliverables and decisions
- Use chat for daily updates and questions
- Use calls for weekly syncs and reviews
- Update Sparks as the project evolves
The Room provides a single source of truth for project status and history.
Team Discussions
Section titled “Team Discussions”Use Rooms for recurring team discussions:
- Create a Room for the team or topic
- Use channels to organize different discussion threads
- Create Sparks for decisions and action items
- Use chat for asynchronous discussion
- Use calls for real-time debate and alignment
- Archive old channels as topics are resolved
The Room grows with your team, accumulating knowledge and context over time.
Best Practices
Section titled “Best Practices”Name Rooms Clearly
Section titled “Name Rooms Clearly”Choose names that make the Room’s purpose obvious. “Product Ideas” is better than “Brainstorming.” “Q1 Planning” is better than “Planning Room.”
Use Colors Intentionally
Section titled “Use Colors Intentionally”Assign colors to help categorize Rooms:
- Blue for product and engineering
- Green for operations and finance
- Purple for design and creative
- Red for urgent or high-priority
Consistent color coding makes navigation faster.
Keep Rooms Focused
Section titled “Keep Rooms Focused”Don’t try to use one Room for everything. Create separate Rooms for distinct topics or projects. It’s easier to navigate multiple focused Rooms than one cluttered Room.
Archive Inactive Rooms
Section titled “Archive Inactive Rooms”When a project ends or a topic is resolved, archive the Room. Archived Rooms are hidden from the canvas but remain accessible for reference.
Set Clear Expectations
Section titled “Set Clear Expectations”Use the Room description to set expectations:
- What the Room is for
- Who should participate
- How decisions are made
- When to use chat vs. calls
Clear expectations reduce confusion and improve collaboration.
Moderate Proactively
Section titled “Moderate Proactively”Don’t wait for problems to escalate. Address disruptive behavior early, clarify norms, and use moderation tools to maintain a productive environment.
Technical Details
Section titled “Technical Details”Data Model
Section titled “Data Model”Each Room includes:
- Unique identifier
- Title, description, color, icon
- Visibility setting (public or private)
- Membership list (for private Rooms)
- Channel configuration
- Moderation settings
- Position on the canvas (x, y coordinates)
- Timestamps (created, updated)
Real-Time Communication
Section titled “Real-Time Communication”Rooms use Agora SDKs for real-time features:
- Agora Chat SDK: Text messaging with presence and typing indicators
- Agora RTC SDK: Voice and video calls with screen sharing
These SDKs provide low-latency, high-quality communication with global reach.
Storage and Retrieval
Section titled “Storage and Retrieval”Room data is stored in MongoDB. Chat messages and call metadata are stored separately for performance:
- Room metadata: MongoDB
- Chat messages: Agora Chat cloud storage
- Call recordings (if enabled): Agora cloud storage
This separation ensures fast Room loading while preserving full communication history.
Integration with Other Features
Section titled “Integration with Other Features”Rooms integrate deeply with other Flowstate features:
Sparks
Section titled “Sparks”Sparks are created and stored within Rooms. The Room provides context for understanding what each Spark is about.
Offices
Section titled “Offices”Office workspaces can have their own Rooms, separate from personal canvas Rooms. This keeps team discussions organized and private.
Rooms can host Stage broadcasts, turning a discussion space into a presentation venue.
Widgets
Section titled “Widgets”Widgets can be added to Rooms to extend functionality (transcription, polls, shared documents, etc.).
Future Enhancements
Section titled “Future Enhancements”Planned improvements to Rooms include:
- Threaded conversations for better chat organization
- Pinned messages and Sparks for highlighting important content
- Room templates for common use cases
- Advanced search across all Room content
- Integration with external tools (Slack, Teams, etc.)
- Custom roles and permissions beyond public/private
Rooms are the foundation of collaboration in Flowstate. By providing persistent, organized spaces for discussion and decision-making, they help teams work together more effectively.