Skip to content

Commit 3e619e1

Browse files
IsmaelMartinezclaudegemini-code-assist[bot]
authored
[Docs]: Add MQTT documentation (#1939)
* Add comprehensive MQTT integration documentation - Add new docs-site/docs/mqtt-integration.md with complete MQTT guide - Configuration options and examples - Message format and status values - Home Assistant and Node-RED integration examples - Testing and troubleshooting sections - Security considerations - Architecture details with diagrams - Advanced use cases (office signs, Slack sync, Grafana) - Update docs-site/docs/index.md to list MQTT as a main feature - Update docs-site/docs/configuration.md with MQTT configuration section - Add mqtt-integration to docs-site/sidebars.ts navigation This addresses the lack of user-facing documentation for the MQTT feature introduced in PR #1926, making it discoverable and providing comprehensive guidance for home automation integration. * Update MQTT documentation with corrections and improvements - Add "disabled by default" notice at the top - Update broker URL formats section to note WebSocket URLs are untested - Replace specific Home Assistant/Node-RED examples with call to action for users to share their working automations on GitHub Discussions - Fix debug logging to use ELECTRON_ENABLE_LOGGING=true format and link to troubleshooting guide instead of incorrect config options - Revise security considerations with stronger warning about sharing status externally and reference to LICENSE.md disclaimer - Remove "Advanced Configuration" section - Remove "Use Case Examples" section (office signs, Slack sync, Grafana) These changes make the documentation more accurate, conservative about untested features, and encourage community contributions of working automation configurations. * Replace GitHub Discussions references with Issues and Matrix chat * Add MQTT documentation release note to version 2.6.3 in appdata.xml * Update docs-site/docs/mqtt-integration.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update docs-site/docs/mqtt-integration.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --------- Co-authored-by: Claude <[email protected]> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
1 parent 7b07e70 commit 3e619e1

File tree

5 files changed

+378
-10
lines changed

5 files changed

+378
-10
lines changed

com.github.IsmaelMartinez.teams_for_linux.appdata.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@
108108
<li>Fix: Proper event listener cleanup to prevent memory leaks when ConnectionManager is restarted</li>
109109
<li>Enhancement: Add start:dev npm script with --no-sandbox flag for easier development testing</li>
110110
<li>Fix: Revert to core22 and Electron 37.7.0 for snap compatibility - electron-builder doesn't support core24 yet (issue #8548)</li>
111+
<li>Documentation: Add comprehensive MQTT integration documentation with configuration guide, troubleshooting, and home automation examples</li>
111112
</ul>
112113
</description>
113114
</release>

docs-site/docs/configuration.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ This document details all available configuration options for the Teams for Linu
1414
- [Notifications & UI](#notifications--ui)
1515
- [Screen Sharing & Media](#screen-sharing--media)
1616
- [System Integration](#system-integration)
17+
- [MQTT Integration](#mqtt-integration)
1718
- [Advanced Options](#advanced-options)
1819
- [Usage Examples & Guides](#usage-examples--guides)
1920
- [Basic Setup Examples](#basic-setup-examples)
@@ -123,6 +124,38 @@ Place your `config.json` file in the appropriate location based on your installa
123124
| `disableGlobalShortcuts` | `array` | `[]` | Array of global shortcuts to disable while app is in focus |
124125
| `globalShortcuts` | `array` | `[]` | Global keyboard shortcuts that work system-wide (opt-in, disabled by default). See [Global Shortcuts](#global-shortcuts) |
125126

127+
### MQTT Integration
128+
129+
| Option | Type | Default | Description |
130+
|--------|------|---------|-------------|
131+
| `mqtt.enabled` | `boolean` | `false` | Enable/disable MQTT status publishing |
132+
| `mqtt.brokerUrl` | `string` | `""` | MQTT broker URL (e.g., `mqtt://192.168.1.100:1883` or `mqtts://broker:8883` for TLS) |
133+
| `mqtt.username` | `string` | `""` | MQTT username for authentication (optional) |
134+
| `mqtt.password` | `string` | `""` | MQTT password for authentication (optional) |
135+
| `mqtt.clientId` | `string` | `"teams-for-linux"` | Unique MQTT client identifier |
136+
| `mqtt.topicPrefix` | `string` | `"teams"` | Topic prefix for all MQTT messages |
137+
| `mqtt.statusTopic` | `string` | `"status"` | Topic name for status messages (combined with topicPrefix) |
138+
| `mqtt.statusCheckInterval` | `number` | `10000` | Polling interval in milliseconds for status detection fallback |
139+
140+
**Example MQTT Configuration:**
141+
```json
142+
{
143+
"mqtt": {
144+
"enabled": true,
145+
"brokerUrl": "mqtt://192.168.1.100:1883",
146+
"username": "teams-user",
147+
"password": "secret",
148+
"clientId": "teams-for-linux",
149+
"topicPrefix": "home/office",
150+
"statusTopic": "teams/status",
151+
"statusCheckInterval": 10000
152+
}
153+
}
154+
```
155+
156+
> [!NOTE]
157+
> Messages are published to `{topicPrefix}/{statusTopic}` (e.g., `home/office/teams/status`). See the **[MQTT Integration Guide](mqtt-integration.md)** for complete documentation, home automation examples, and troubleshooting.
158+
126159
### Advanced Options
127160

128161
| Option | Type | Default | Description |

docs-site/docs/index.md

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,17 @@ slug: /
88

99
**Unofficial Microsoft Teams client for Linux** — a native desktop app that wraps the Teams web version with enhanced Linux integration.
1010

11-
**System notifications**
12-
**System tray integration**
13-
**Custom backgrounds & themes**
14-
**Screen sharing support**
15-
**Multiple account profiles**
16-
**Certificate management**
17-
**Proxy server support**
18-
**Microsoft Intune SSO integration**
19-
**Secure token storage**
20-
**Protocol handler support**
11+
**System notifications**
12+
**System tray integration**
13+
**Custom backgrounds & themes**
14+
**Screen sharing support**
15+
**Multiple account profiles**
16+
**Certificate management**
17+
**Proxy server support**
18+
**Microsoft Intune SSO integration**
19+
**Secure token storage**
20+
**Protocol handler support**
21+
**MQTT integration for home automation**
2122
**Advanced logging & debugging**
2223

2324
:::info Project Status
@@ -36,6 +37,7 @@ This is an independent project, not affiliated with Microsoft. Some features are
3637
- **[Screen Sharing Guide](screen-sharing.md)** - Complete screen sharing implementation and usage
3738
- **[Custom Backgrounds](custom-backgrounds.md)** - Setting up custom video call backgrounds
3839
- **[Certificate Management](certificate.md)** - Custom CA certificate handling for corporate environments
40+
- **[MQTT Integration](mqtt-integration.md)** - Home automation and status publishing via MQTT
3941

4042
## Developer Documentation
4143
- **[Contributing Guide](development/contributing.md)** - Development setup, code standards, and contribution guidelines

0 commit comments

Comments
 (0)