samna
Samna Documentation
samna
Samna Documentation
General Documentation

icon picker
System Architecture Overview

Understanding the architecture of Samna is crucial for effectively deploying, managing, and integrating it with your existing systems. This section provides a high-level overview of the system architecture, detailing the components and their interactions.
The system architecture of Samna is designed to ensure modularity, scalability, and security. It is composed of several key components that work together seamlessly to provide a robust meeting room booking and digital signage solution.

1. Client Applications

Samna Meet:
A tablet application installed outside meeting rooms.
Displays current room status and allows users to book or confirm room bookings.
Provides real-time updates on room availability.
Samna Area:
An overview application that provides a comprehensive view of all rooms in a specified area.
Displays a dynamic map showing room statuses and an information bar with relevant updates (e.g., weather, canteen information).
Integrates with various data sources to keep the information bar updated.
Samna Digital Signage:
An upcoming application designed to display various types of content on digital screens.
Intended for use in common areas to show schedules, announcements, and other dynamic content.

2. Backend Services

API Gateway:
Acts as the central access point for all API requests from client applications.
Manages routing, load balancing, and security for incoming requests.
Authentication Service:
Handles user authentication and authorization.
Issues and validates tokens for secure access to other services.
Room Management Service:
Manages room bookings, schedules, and availability.
Processes requests from Samna Meet to book or confirm room reservations.
Area Management Service:
Maintains and updates the status of all rooms in an area.
Manages dynamic maps and the content displayed in information bars.
Content Management Service:
(Planned) Will manage the scheduling and distribution of content for digital signage.
Provides tools for creating and organizing content to be displayed on various screens.

3. Database

Relational Database:
Stores structured data, including user information, room details, booking records, and configurations.
Ensures data consistency and integrity across the system.
NoSQL Database:
(Optional) Used for storing unstructured or semi-structured data, such as logs and dynamic content.
Provides high scalability and flexibility for handling large volumes of data.

4. Integration Services

Third-Party Integrations:
Supports integration with external systems, such as Google Calendar and Microsoft Exchange, for calendar synchronization.
Integrates with data sources for real-time updates, such as weather services and canteen menus.
Webhooks and APIs:
Enables real-time updates and notifications to other systems.
Provides endpoints for external systems to interact with Samna services programmatically.

High-Level Diagram

Below is a high-level diagram illustrating the key components and their interactions:
lua
+-------------------------+
| Client Devices |
| |
| +---------------------+ |
| | Samna Meet | |---------------------------+
| +---------------------+ | |
| +---------------------+ | |
| | Samna Area | | |
| +---------------------+ | |
| +---------------------+ | |
| | Samna Digital Signage| | (Future) |
| +---------------------+ | |
+-------------------------+ |
| |
| API Requests |
| |
v v
+-------------------------+ +-----------------------+
| API Gateway |<----->| Authentication |
+-------------------------+ | Service |
| +-----------------------+
|
v
+-------------------------+
| Backend Services |
| |
| +---------------------+ |
| | Room Management | |
| +---------------------+ |
| +---------------------+ |
| | Area Management | |
| +---------------------+ |
| +---------------------+ |
| | Content Management | | (Future)
| +---------------------+ |
+-------------------------+
|
v
+-------------------------+
| Database |
| +---------------------+ |
| | Relational Database | |
| +---------------------+ |
| +---------------------+ |
| | NoSQL Database | |
| +---------------------+ |
+-------------------------+
|
v
+-------------------------+
| Integration Services |
| +---------------------+ |
| | Third-Party | |
| | Integrations | |
| +---------------------+ |
| +---------------------+ |
| | Webhooks & APIs | |
| +---------------------+ |
+-------------------------+

This architecture ensures that Samna is robust, scalable, and capable of integrating with various external systems to provide a seamless user experience.

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.