Agenda bot - Releases

← App details

Nextcloud 32

Agenda bot 1.6.0
Release Details
UpdatedSept. 27, 2025, 9:25 p.m.
Changelog

🚀 Major Release - Advanced Configuration Management (GitHub Issue #18)

📋 Configuration Templates

  • config template command suite: Pre-configured meeting room templates for instant setup
  • Five ready-to-use templates: Formal Business, Jour Fixe, Workshop, Brainstorming, Training
  • config template list: Browse all available templates with descriptions and settings preview
  • config template <name>: Apply complete room configuration in one command
  • Template categories: Business-focused, collaborative, creative, and educational meeting types
  • Smart template management: Templates apply multiple settings atomatically
  • Template reset: config template none to clear template and return to individual settings

📤 Configuration Export

  • config export command: Export room configuration as ready-to-use bulk commands
  • Copy-paste workflow: Generate clean command lists for easy room replication
  • Smart detection: Only exports room-specific settings, ignores global defaults
  • Complete coverage: Exports all configuration areas (time, response, limits, auto-behaviors, emojis)
  • Clean output: Simple command list without section headings for easy copying
  • Room replication: Perfect for sharing standardized setups across teams

🔧 Enhanced Bulk Configuration Feature

  • Multi-line configuration: Execute multiple config commands in a single message
  • Consolidated response: All commands processed sequentially with consolidated results
  • Error handling: Individual command failures don't block other commands
  • Line-by-line processing: Each command validated and executed independently
  • Permission control: Requires moderator/owner permissions like individual config commands
  • Smart validation: Invalid commands reported with line numbers for easy debugging

🎯 Use Cases

  • Room setup: Configure multiple settings for new meeting rooms at once
  • Bulk updates: Efficiently update several configuration options simultaneously
  • Template configuration: Apply standardized room configurations quickly
  • Meeting preparation: Set up complete room environments with one message

💻 Technical Implementation

  • CommandParser: New BULK_CONFIG_PATTERN regex and parseBulkCommands() method
  • BotInvokeListener: New handleBulkConfig() method for processing command arrays
  • Error resilience: Graceful handling of mixed valid/invalid commands
  • Complete localization: Full English and German translation support
  • Help integration: Bulk configuration documented in moderator help text

🌍 Multi-Language Support

  • English translations: Complete localization for all bulk command responses
  • German translations: Full German support with proper terminology
  • Error messages: Localized validation and error reporting
  • Help documentation: Bulk commands included in contextual help system

📊 Command Examples

```bash

Configuration Templates - Instant room setup

config template list # View all available templates config template workshop # Apply Collaborative Workshop template config template none # Reset template configuration

Configuration Export & Import

config export # Export current room configuration

Result: Clean command list ready for copy-paste:

config time enable

config time thresholds 80 120

config response minimal

config limits max-items 20

config emojis current-item 🎯

Bulk Configuration - Multiple commands at once

config time enable config limits max-items 15 config limits max-bulk 5 config limits default-duration 25 config time thresholds 80 120 config response minimal

Bot processes all commands with grouped response:

🎉 Bulk Configuration Applied (6 commands processed)

✅ Time Monitoring: enabled, thresholds set to 80%/120%

✅ Agenda Limits: max items 15, max bulk 5, default 25 min

✅ Response Mode: Minimal (reduced notifications)

```

⚙️ Features

  • Multi-command processing: Execute multiple config commands in one message
  • Individual validation: Each command validated independently
  • Error isolation: Invalid commands don't affect valid ones
  • Consolidated feedback: Single response with all results
  • Permission inheritance: Same permissions as individual config commands
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
Signature0mmsEr0+x9e0YVGn3TbD7ruVnAvWZsVJb7sbuoQ+kW9nUEj0lJz59aZ9aGvvDAMJEhZQJSLM2cVHC1dz9nz4nAqbxJsW+BxgeGfl72J8MlY3O/FPCwbW6BvBrTDoG+I+g+UFnFOl7NFcuwcwlfvpYla4xke+nKu7m8qNq98y9BIAWvxgU0fwJmfkNxCQ2zWIjk3WP0fXHEgjZocq4Akji3wcJPZ4i8Vc+kW7oX0teOJHH9it0pU79+9Krv3jc34JgedWOSAppHxYcVQpyo2d29wlAKKvaJAOxBi4qjVnnbu2VcuvixoQhvcCV1DK6DPQ6E+MpXQKKSo+oTiGhnl8H96+vJ9j3yX+AhJFsaNB9PD3JgAzwMt/wMlEeAI87CtqiGtG8MQqJn8rH4ZV0SkijxAxtDrx17hyFCZhH8/7rXtDhsYhSZkwE3fXJQeU2czfB6JydNmU923iHhduPTWA6HL4XdWNi5At9J802zMCQx6SyXUNTWHMwbzZ7LcqVIbu5BBcDDLx53QAr5zK+UukHjY+vTBi5i9YdOAm1A44Upedd4wvNu9sDVhmkUo4NlrQBal/1hR8j4ZvCK954lPWgyukmH/1BeCjMwB2doKEEi3ElwUF4MtNovserz8+LxX5N9C8prnAaRxyZiV41tcTV0Ev8hebugkQWZipN3HaefY=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.5.1
Release Details
UpdatedSept. 27, 2025, 11:45 a.m.
Changelog

🐛 Fixed

  • Fixed agenda reset not properly clearing active time tracking timestamps
  • Items no longer continue showing elapsed time after reset command
  • Enhanced reset messages with improved localization (EN/DE)
  • Fixed migration version tracking during app upgrades ensuring reliable migration execution
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignaturenVT9VNDKY/syBRh48rjxa/V8/sOAYXMjAF88fa4w0qs96QBZSxcass27M5X8BqjEXRDYiU5hcyyJxNejhTkR3lg2ILPE6Fo5nwRUz4ZpoaPNafxuhghnYsKgGtDZN/h+1nURR0mrmXLw+wXesnIvO30owfUQH2pNF8IWy4M581Y+SwqjUZqy9tRviU+60HsEkz3Uq1w3U2aoCv4mXpeX8SowDsEjTig+mvcORVyyawtcKLoHfKnZa8DKJBLpTnxbECmLxteagpYS2DTLUjDyoWr0zst64s/eEAEWlczFJPxNyGaho7EO2vbuZGvQM5Gwk7p/lMRssDcUBWPnfhTp0GFWOGz42/5VF3szU5iccy93JBUjrU3ukuTyv4LM1bXw1+kJ9OH+LD4idSslNzd28D5k5rMujQF9kQ54I4at491TJIXi8FFnLuHiKEUFGDC6aa5kT14T+qVG5A/hVs1A+togF5e5fSoDUKY6DnSZQIAqzvOVManmDJZF37sYl0DHTwwlvCJDs5HXvhTmVlWsgByz5IIM7mX0tW5gbvSW9/7lmigspAFnoRz+kRP2p3YYK4PfMTFD9FzvtwC+eX8ke8P5VW9Sr/1V2juGNfFnxzKT4moZtPofZsJVyQNZI/dcCHEEeNi4a1WzkmQcDI8YLVpr5CW/0bCfnFp/JmEsW6s=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.5.0
Release Details
UpdatedSept. 24, 2025, 12:07 p.m.
Changelog

🔄 Added - Migration Framework & German Formality Support

🚀 Migration Framework (NEW)

  • Automatic Version Detection: Seamlessly detects app version changes and triggers migrations
  • Background Job Processing: Non-blocking migration execution via Nextcloud's background job system
  • Version-Aware Logic: Detects upgrades by comparing current version (≥ 1.5.0) with last enabled version (< 1.5.0)
  • Safe Operation: Database transactions with rollback capabilities on migration failures
  • Extensible Architecture: Framework ready for future schema changes and feature migrations
  • Admin Monitoring: Complete observability of migration status through logs and job listings
  • Migration Tasks System: Modular migration tasks implementing IMigrationTask interface

🌍 German Formality Migration (GitHub Issue #16)

  • Formal German Language Support: Introduces new formal German bot variant (de_DE) alongside existing informal variant (de)
  • Room Assignment Migration: Migrates rooms from old formal bot (nextcloudapp://agenda_bot/de) to new formal bot (nextcloudapp://agenda_bot/de_DE)
  • Language Separation: de = Informal German ("Du"), de_DE = Formal German ("Sie")
  • Cultural Appropriateness: Dedicated formal German language variant suitable for business environments
  • Automatic Migration: Room assignments automatically updated on version upgrade to preserve formal language experience
  • Zero User Disruption: Migration happens transparently in the background via background jobs
  • Comprehensive Testing: Verified migration compatibility across all supported versions (v1.3.4-v1.4.1)

📚 Documentation

  • Migration Framework Guide: Complete documentation in docs/MIGRATION_FRAMEWORK.md
  • Architecture Overview: Detailed explanation of migration system components
  • Developer Guide: Instructions for creating new migration tasks
  • Troubleshooting: Common issues and admin commands for migration monitoring
  • Best Practices: Guidelines for safe and effective migrations
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
Signaturep6iN8JefKPkKgebLoaEZ8HGjGNP8UfKTjQ/o5OvNWSfANpg5y/WebkP/Q3N/LiX43HTclcZUr3HCh9PIBjlhWLlspzS7pmfBe7WjHBzCjxa2QmEKhp3Y9ugdtIqpqY5O1hxU1GOsdYNLdwR9JrdwIJYhMUFGqbpv4syk+Q0a8x+PaWDGM9oSU+lbWNAHr1B3XnycKmcN1570WmoLniF2TwTJ3El5mwnR1l4mVocPF15vhTfT2imDBhefnnq535tW5GxS1io1vt7H+dqzQi+U/Ej+pyrLvm6AxIryKM7t4NocxQ+rqwN7Znf24o5IBHtcwEYpjMcCiwguqXknM6IHJGaNqJ/1vzoDJDZEnZ+BxM9exCUAvSUhi3deDu8KQn6P8T1MK+OwIJUjSjOXW0EEMJwRLKCixh5XtEnwdDhOifyFewpu6sTbA7cgdyPn3NUpsUAkb4eHaWNONSJ7griN02DQoYe+YFaYQ8/PfUowEgBmb9C0ZK60Nu4kHwn/8Iq10h/NZGB3oc4kVo4y4uYIACZFiB/lvVOegcYzCgWKGqdtVYwmx8wlUbkld0rwdG44rUZ8zYhk6mnS8dsjeoQd4ZSDSnNLv8ma67oD5ydPIT1htU5OtNBhs5FLmz6wn6wHJ2SgYBTCNIgxb5AQvsiSNKTDssBmHtuAZABbxPJcxK8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.4.1
Release Details
UpdatedSept. 18, 2025, 5:35 a.m.
Changelog

✨ Added - Agenda Reset Command

🔄 New agenda reset Command

  • Bulk status reset: Reset all agenda items to incomplete status with a single command
  • Efficient workflow: Eliminates need for individual undone: X commands for each item
  • Perfect for recurring meetings: Weekly stand-ups, monthly reviews, and template meetings
  • Time tracking reset: Automatically resets time monitoring warnings for all items
  • Permission controlled: Requires moderator/owner permissions for data integrity
  • Smart handling: Graceful responses for edge cases (no items, already incomplete items)

🚀 Use Cases

  • Weekly team meetings: Quickly reset last week's completed agenda for reuse
  • Monthly reviews: Reset quarterly agenda items for the next cycle
  • Template meetings: Efficiently reuse standardized agenda formats
  • Recurring check-ins: Streamlined workflow for regular meeting patterns

💻 Technical Implementation

  • CommandParser: New RESET_PATTERN for command recognition
  • AgendaService: resetAllItems() method with comprehensive error handling
  • BotInvokeListener: Integrated reset command handler
  • Complete localization: Full English and German translation support
  • Help integration: Command documented in moderator help text

🌍 Localization

  • English: Complete translation keys for all reset functionality
  • German: Full German localization with proper pluralization
  • Error handling: Localized messages for all edge cases
  • Help text: Reset command included in contextual help system

📊 Command Examples

```bash agenda reset # Reset all agenda items to incomplete agenda status # Verify the reset worked

Before reset:

✅ 1. Project review (completed)

✅ 2. Budget discussion (completed)

✅ 3. Next steps (completed)

After reset:

📍 1. Project review (15 min)

📍 2. Budget discussion (20 min)

📍 3. Next steps (10 min)

```

🎯 Benefits

  • One command replaces many: agenda reset vs. multiple undone: 1, undone: 2, etc.
  • Time efficient: Instant bulk operation for recurring meetings
  • Preserves structure: Maintains item order, titles, and durations
  • Enables reuse: Perfect for template-based recurring meetings
  • Smart cleanup: Automatically resets time monitoring states
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureOLNoXEd32fCMdcC4qGHRH5Gl87zjM5qpUDc6I6bD6pfFnCOkNkrceR+pBVw2LMzD2R1vYT1QW7vmIUuOBapdDMwOl5K5B1bCYdRWN6qR1ltJ0Q1mZpaO8BN5ttoPkjwBzWAcz6jrdU3V83yP8/Q/bcBSU8Ky5AIlx0tCXeu16gl8qg3+LcPZq33/hTrFctVtsnnQa2xC7ltZvwfbt3uDL9xHBb7PRgGCuzr3Ym3KaLvifa0j+pAotnK5b+D9cShkflmjVNlcq7RByvFtjoEEmluQGEL5EqCjHgyR4dWqeacwHRJ5d0OLYjm4TLtIlxxwsDkp2JFkiPrVeLk78KAzztNtYMu+QCGrhznxqfKSmK9i9RqcX5+6le3l1MbpL9L3BcxXiB94+uq3Fy0xoei7L0Ovr1UXg1hfKaJ3BieHTCaltvn1gJFgXWmoj2VsSvDTLjVr4zy0Kij5PmuzoVg71GFaKOGL1k+si/mbGc7C2Cdq1dVsJqbaeN2qiHVubcdmfo+cOwMCTGyVfwA1yAWmpcsX5kw7b/Z7nJbksPAp4vqP0C1V+v1KSVockmfEb83jczS7DMpI3cg0vZCr+K07C0yWrw6jNnpzpNFmWURG7j1sE/8fqdkQCktburnUT4i1ucikKfosHFvGS7eOdBUQXyYmNIfGVjZo9auQwDpxzXk=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.4.0
Release Details
UpdatedSept. 14, 2025, 10:03 p.m.
Changelog

🚀 Added - Room-Level Bot Configuration

Each Talk room can now have its own unique bot configuration across five comprehensive areas:

⚙️ Unified Configuration System

  • New config show command: Display complete room configuration overview in a beautiful, organized format
  • Hierarchical configuration: Room-specific settings override global defaults with intelligent fallback
  • Configuration metadata: Track who configured what, when, with full audit trail
  • Atomic updates: Partial configuration updates preserve existing settings
  • Smart reset functionality: Individual sections can be reset to global defaults

🕙 Enhanced Time Monitoring Configuration

  • config time command suite: Unified interface for all time monitoring settings
  • Room-specific thresholds: Custom warning (10-95%) and overtime (105-300%) percentages
  • config time enable/disable: Toggle monitoring per room without affecting other rooms
  • config time warning X: Set warning threshold (e.g., config time warning 75)
  • config time overtime X: Set overtime threshold (e.g., config time overtime 110)
  • config time thresholds X Y: Set both thresholds in one command
  • config time reset: Return to global defaults
  • Backward compatibility: Existing time xxx commands remain fully functional

💬 Response Behavior Configuration

  • config response command suite: Control bot verbosity and notification levels
  • Normal mode: Full text responses for all commands and operations
  • Minimal mode: Emoji reactions only, reducing notifications while preserving functionality
  • Smart exceptions: Help, status, and critical notifications always use text in minimal mode
  • config response normal/minimal: Switch between response modes
  • config response reset: Return to global response defaults

🚧 Agenda Limits Configuration

  • config limits command suite: Fine-tune agenda capacity and behavior limits
  • config limits max-items X: Set maximum total agenda items (5-100)
  • config limits max-bulk X: Set maximum bulk operation size (3-50)
  • config limits default-duration X: Set default item duration in minutes (1-120)
  • config limits reset: Reset all limits to global defaults
  • Validation: All limits validated with sensible bounds to prevent abuse

🤖 Auto-behaviors Configuration

  • config auto command suite: Control automatic bot behaviors during meetings
  • config auto start-agenda enable/disable: Auto-set first agenda item as current on call start
  • config auto cleanup enable/disable: Automatically remove completed items after meetings
  • config auto summary enable/disable: Generate meeting summaries on call end
  • config auto reset: Reset all auto-behaviors to global defaults
  • Meeting flow optimization: Enhances natural meeting progression

😀 Custom Emojis Configuration

  • config emojis command suite: Personalize visual agenda item indicators
  • config emojis current-item 🎯: Set emoji for current agenda item
  • config emojis completed 🎉: Set emoji for completed items
  • config emojis pending 📋: Set emoji for pending items
  • config emojis on-time 👌: Set emoji for on-time status indicators
  • config emojis time-warning ⚠️: Set emoji for time warnings
  • config emojis reset: Reset to global emoji defaults
  • Validation: Emoji length limits and fallback to defaults for invalid entries

🛠️ Technical Architecture Enhancements

RoomConfigService Expansion

  • Five new configuration areas: Complete CRUD operations for each configuration type
  • Intelligent data merging: Partial updates preserve existing configuration sections
  • Metadata management: Comprehensive tracking of configuration changes with timestamps
  • Smart cleanup: Automatic removal of empty configuration entries
  • Method standardization: Consistent getXxxConfig(), setXxxConfig(), resetXxxConfig() patterns

CommandParser Extensions

  • 37 new command patterns: Comprehensive regex patterns for all configuration commands
  • Flexible parameter handling: Support for optional parameters and multiple command formats
  • Unified parsing: Consistent command structure across all configuration areas
  • Error resilience: Graceful handling of malformed commands with helpful feedback

BotInvokeListener Enhancements

  • 5 new command handlers: handleConfigShow, handleConfigTime, handleConfigResponse, handleConfigLimits, handleConfigAuto, handleConfigEmojis
  • Permission integration: All configuration commands respect moderator/owner permissions
  • Localization support: Complete translation integration for all new features
  • User ID extraction: Robust actor data processing for audit trails

📚 Comprehensive Documentation

  • Interactive help system: All new commands integrated into agenda help with examples
  • Contextual guidance: Each configuration area provides usage examples and tips
  • Permission indicators: Clear indication of required permission levels
  • Visual formatting: Beautiful markdown formatting with emojis and structured layout

🌍 Complete Localization Support

  • English translations: 150+ new translation keys for all configuration features
  • German translations: Complete German localization for all new functionality
  • Translation consistency: Standardized terminology across all configuration areas
  • Dynamic pluralization: Proper plural forms for counts and statistics
  • Cultural adaptation: Region-appropriate formatting and language patterns

🔒 Security & Permission Framework

  • Moderator/Owner restrictions: All configuration changes require appropriate permissions
  • Permission validation: Comprehensive checks before any configuration modifications
  • Audit trail: Complete logging of all configuration changes with user attribution
  • Data validation: Input sanitization and bounds checking for all configuration values
  • Graceful degradation: Non-privileged users see appropriate permission denied messages

Performance & Reliability

  • Efficient storage: JSON-based configuration storage with minimal overhead
  • Intelligent caching: Configuration values cached and loaded on-demand
  • Atomic operations: Database transactions ensure configuration consistency
  • Graceful fallbacks: Robust handling of missing or corrupted configuration data
  • Memory optimization: Lightweight configuration objects with efficient serialization

🎯 User Experience Improvements

  • Intuitive command structure: Logical, consistent command hierarchy across all areas
  • Rich visual feedback: Comprehensive status displays with emojis and formatting
  • Context-aware help: Relevant examples and usage tips for each configuration area
  • Error recovery: Clear error messages with suggestions for valid alternatives
  • Progressive disclosure: Basic commands with optional advanced parameters

🔧 Migration & Compatibility

  • Zero-disruption upgrade: Existing installations continue working without changes
  • Backward compatibility: All existing commands and behaviors preserved
  • Gradual adoption: Rooms can adopt new configuration features as needed
  • Global defaults: Unchanged global settings serve as fallback for all rooms
  • Legacy support: Old time xxx commands remain fully functional alongside new config suite

📊 Configuration Examples

Complete room setup for focused meetings: bash config time thresholds 70 110 # Tighter time management config response minimal # Reduce notification noise config limits default-duration 15 # Longer default discussions config auto start-agenda enable # Auto-start on call begin config emojis current-item 🎯 # Focused meeting aesthetic

Quick team standup configuration: bash config limits max-items 10 # Limit agenda size config limits default-duration 3 # Short discussion items config auto cleanup enable # Auto-remove completed items config response minimal # Minimal distractions

Executive boardroom setup: bash config time warning 85 # Conservative time warnings config auto summary enable # Automatic meeting summaries config limits max-bulk 5 # Controlled agenda imports config emojis completed ✅ # Professional appearance

🎉 Impact Summary

Version 1.4.0 represents the largest single enhancement in Agenda Bot history, introducing: - 5 comprehensive configuration areas with 25+ individual settings - 37 new commands for complete customization control - 200+ new translation keys across English and German - 500+ lines of new service methods and command handlers - Complete backward compatibility ensuring seamless upgrades

This release transforms Agenda Bot from a useful meeting tool into a highly personalized, room-specific assistant that adapts to each team's unique meeting culture and requirements.

Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureV4b213k7WAI+Tc80vdwxHjk/DuvOUBx5FotMXRPB1kUEtnebjAIEqv0FIuDT80SHXXfkMoPfGwPUznr3++BHVzN8zjbDBDh7rLbuw6nox5pEV8kuqgN+egL3SXrIKWtwcv/gKzWni4YBwwPvUJLcqDBnipvARY1+XITTsnJcp3fNTnM6O29WshBzuwR34AlvfBG2HwLVbM4DI6VR7RL9PicsuNFclo7/yrdSREt/K9yI5kUBBncOm3o7QQnmuocAOKff/sFxXxRv+SIgbpEXixlZJHLyZtJHIRrTi6LawR9IK+2KQ0Zmd1POchyqfReM0S33CEP0oaTgOwK7vhcv1Y4UxVa0/3PahRCOrA8xWjw1SjpBh295XRVQQj6hf4AhwMhXEQQFvCgRK3b49MWa7Dm/GqYoiyJ5fsZNEC3QZIqzqep87hg6y/Tf926el4c43lBgqq/l/BZvSNlhnM821RP2OWuKL/q+l6L0cPUEhEC3EWcUcCPv2k3XSoVRgR4rME462wvYlTJPYO1R/ZprpcjR41iPPUbjMKrPagy5oDUUIZgPQKH8QBIVv/n1OMT7MUIYp10kkWGplTE7uiDcq9PkW50C0W5hZ/KUH2ReCFnnS2HLhoK2Fxgw7LuI8IluRDDsKOqNRliVkGlGAHY6iuvk8EPCMy52CaYIwSw2Ykc=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.6
Release Details
UpdatedSept. 13, 2025, 1:56 p.m.
Changelog

🔧 Enhanced - Agenda Item Management

  • change: X command: New command to edit existing agenda item titles and durations
  • Flexible syntax: Supports changing title only, duration only, or both with natural language
  • Validation: Prevents modification of completed items with helpful user guidance
  • Permission control: Requires moderator/owner permissions for data integrity
  • Localized: Full support in English and German

⚡ Enhanced - Timing System

  • Unified timing logic: New TimingUtilityService centralizes duration formatting and calculations
  • Improved timing display: Planned duration now shown immediately at call start
  • Flexible formatting: Compact single-line for status, multi-line for detailed summaries
  • Consistent formatting: Unified duration display across all features
  • Better user experience: Enhanced visual formatting and alignment in timing summaries

🛠️ Technical Improvements

  • Code organization: Eliminated duplicate timing code across multiple services
  • CommandParser: Added regex patterns for modification command parsing
  • Service integration: TimingUtilityService properly integrated across components
  • Translation updates: New keys for modification features and separated timing labels
  • Performance: Reduced redundant calculations through shared utility methods
  • Bug fixes: Fixed time reset command error and threshold preservation in time monitoring

📚 New Commands

bash change: 2 New title (25 min) # Change both title and duration change: 3 Updated review # Change title only change: 1 (45 min) # Change duration only

Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignaturewZs14yhfkAXCzeCfVNBW5kTz4SWy9K+oW/DEESFmgGO182kI4m5QqboEfNT/UMe9oZt5IqYvI70QwOOQASDQVPLuYhuWu8K03es4AOXKhKLx9JDQwbZYk6gWzATJ3zrBO9StMIBiLHDN5nqSBRMeBCkDWBbiRt1p6SVkkHtlyalU85QysvG7xSTPGi0GOrhGdmOfyqzmxDWFLEFB+GLIfX+ytzJg9pInoDggoBxKGmMESiaKqRBZM6pj3GrcR6/EmB1OsN2z5XBqUVwHZH3t1GGFV//zX37fxOO4dS7v5H726f5H7VvTAwHBS4hc+5rZea6QOTFuTnWIMyPsiaXAc//e4EYitKTamcs5kwY2lxcLdkQXhmH0IcIUcnMYSm79wbsG44PJnm44McsJTiKNKjOo1tIwUY2zx96NvNTjLDshUhATTAMODzt1nJ6qG4RYeBQZvUVsFacQzKFMrkM/YFeVPC4pCetVZojxq3uvmyNY80ppoF2hzvLVy9QsYrVhzqB7z9oDOIl6bOGypU3AZJ1sijBP2wD4SyMUL4LoRIR/ojtnFJ3FiavoRBiAjUCRd7C/sFMqyK8CcGUN4KeVTGequh8T2tpi4OGpsJTr/2FACjt7SImmbPMkT2L03j3KjAIY1o2ttmOYF9EexzVJ7F5Wo0UrRRJxkqJSaEKBnMI=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.5
Release Details
UpdatedSept. 12, 2025, 9:13 p.m.
Changelog

🔧 Enhanced - Bot Identity & User Experience

  • Unified bot naming: Simplified bot names from "Agenda bot" to "Agenda" (English) and "Tagesordnung" (German)
  • Clean display names: Eliminated redundant naming like "Agenda bot (Bot)-bot" that occurred due to Nextcloud's automatic bot suffixing
  • Professional appearance: Bot now displays as "Agenda (Bot)" or "Tagesordnung (Bot)" across all languages
  • Consistent branding: Unified naming throughout bot registration, welcome messages, and all user interactions

🛠️ Fixed - Welcome Message Experience

  • Personal introduction: Updated welcome messages to be more engaging and personal
  • Friendly assistant approach: Bot now introduces itself as "Hi there! I'm your agenda assistant" instead of formal "Welcome to Agenda Bot!"
  • Clean bot identification: Fixed welcome message sender to display proper bot name without redundant suffixes
  • Localized greetings: German welcome messages now use "Hallo! Ich bin Ihr Tagesordnungs-Assistent" for consistency

⚡ Added - Command Flexibility

  • Enhanced next: command: Added support for next: without item number to match done: behavior
  • Consistent workflow: Both next: and done: commands now complete current item and auto-advance when used without numbers
  • Intuitive shortcuts: Users can choose whichever command feels more natural for their workflow
  • Backward compatibility: All existing next: X functionality preserved for setting specific agenda items as current

🌍 Enhanced - Multi-Language Support

  • Translation consistency: Updated all translation files to use simplified bot names
  • Welcome message localization: Improved German translations for more natural, professional tone
  • Command documentation: Updated help and documentation to reflect new command flexibility
  • Language-aware naming: Bot registration respects language preferences with appropriate names

🛠️ Technical Improvements

  • CommandParser: Enhanced NEXT_PATTERN regex to support optional item numbers
  • AgendaService: Updated setCurrentAgendaItem() method to handle null position parameter
  • BotService: Simplified bot registration to use clean base names
  • Translation updates: Comprehensive updates to English and German language files
  • Code consistency: Improved method signatures and parameter handling across services
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureDhmQco8G3Qpo4YYicDuabeFdOc2k/mV//qSBUI70ftWk3fG/i5RcmcHGPFVuk5DPFjnEACtqGw5bwqstEgm5u/spe0fGbqtSSJ4F1xYol1qf4XADNbWcnZ95oj4qYVKGEohGIqDsqcSMosRFCkLu2lqKt2HoWP527a7c6Ioj18AsmjB9StKSglaYhOJrhVHqMbwvJ3X5IQBh3zsbywDdcch49/KX1XmzGFm9dlLzocyHs/e6McGvbjTTcg05SB9xVZgeYL21h3QHtl6+QvcxgxNinbBNm6P2TI97qmslpSwM4TXTOQ4+qCJhppHZIOXtJfdw5xQ1VqR9s7q1hAKTLzc/LSAd+Cpmc4eB+ztGS/jRqnNjo66yh7I0U0ALgmaElbuwyYyaHUXKJQVLLG/hZQgiqxpjORVArtpVMiF3fsKdxMBqcvoOrzcSoS6nq1nCSsstzC1QOSeVtFeTdp7JJncc41WaMs/IBo30OCPASMx/55gFDrPDCBRTRMWblY2DenmlkG6nRIk4j/9TSVMqSi2sLEl/80RqXskbhhoMF1tUPn/9rEMWyPjSTnvnelCHro/zvF3IPRU2X9ACyr0xHOU9K3lolkeSyfHYBGPXYBUU/r9FlB3t8VhIKr8Mra+Jq1s6Rz+vFkku5ep4EU/wEzWWSfn6cOQgzd/IWh4EfiM=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.4
Release Details
UpdatedSept. 8, 2025, 9:24 p.m.
Changelog

🚀 Added - Silent Call Detection

  • Silent call detection: Bot now intelligently detects when calls are started silently and responds appropriately
  • Notification-aware responses: Agenda status messages are sent silently for silent calls to avoid unwanted notifications
  • Enhanced call handling: Preserves the intent of silent calls while still providing helpful agenda information

🔧 Enhanced - User Experience

  • Improved user experience: Silent calls won't trigger notification-heavy agenda messages
  • Better meeting flow: Respects user's choice to start calls quietly while maintaining functionality
  • Smart notification management: Bot messages match the notification behavior of the call that triggered them

🛠️ Technical Improvements

  • System message parsing: Enhanced event processing to detect silent call metadata in BotInvokeListener
  • Fallback detection: Multiple detection methods ensure reliable silent call identification
  • Debug logging: Added comprehensive logging for call event analysis and troubleshooting
  • Enhanced isCallStartedSilently() method: Analyzes ActivityPub system message events for silent call indicators
  • Smart response behavior: Uses addAnswer($message, $isCallSilent) to match notification behavior to call type

📚 Documentation

  • Technical documentation: Added comprehensive docs/SILENT_CALL_HANDLING.md with implementation details
  • Usage examples: Code snippets and testing guidelines for the new feature
  • Behavior explanation: Clear documentation of silent vs. regular call handling
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureS7a4pS6LeRpu8s/W0OHPBTzH6+72d3KLQoCUGGl4SsCrA1AO68igzQElNppsaHzxt69YOy8OA2wGbZbrAKjgIm7wu/PRUwOJ1FmXv/m6Xz+HA5fVK11dkyNTyF3rPG+sHWpGBB3rgdzZzjdRk+JxXbLhmhyDi+5GkPbwhhxn1PeFlHTGTUBN50rxEHwwbKzUPqHyOEHa1PqAHYUlYSZf45N9Kv6o2cIGfXOL8uGl52sj5cpDssHWccghyhweFR4v7gdUE0ZNqKdTmuJJPKtLBL/Sa3pTGmr7xbui+q/XXGIYkQhy2eBfK8HWTPHik/Mcmh9ZyP3CV5EpUOld352AGHHD+dFcemzlpyeYQSYOgxEmqPH5JU7uLyzPZRlnG4qSR8Tj1EiX4NmtHcmbs4z8DXLTxL+EOZTrq7nsGJVN52x5EG6lI+rLvjYn9EznHV1im96/UUz+FW7DeHjV8ag6BALZBv8/Vsbm1dFm1yv2+UNvNh5NUtlkwDd41GTGlTszSgesdkm2U3quvgXHGHb6F/8ronO1WudYH80PlLYgAOxzMrBO/LOGtznAozCmCWGlcAC2DpylRcEEL549FBclQJFCe4QOmG6H6uoJG5lU1U7cd87E0NeuRlLXP5hUrJMGtDvw66qQEhnnyca0VmJlfF8nWl9dKXGiPutrJ8bXFq0=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32

Nextcloud 31

Agenda bot 1.6.0
Release Details
UpdatedSept. 27, 2025, 9:25 p.m.
Changelog

🚀 Major Release - Advanced Configuration Management (GitHub Issue #18)

📋 Configuration Templates

  • config template command suite: Pre-configured meeting room templates for instant setup
  • Five ready-to-use templates: Formal Business, Jour Fixe, Workshop, Brainstorming, Training
  • config template list: Browse all available templates with descriptions and settings preview
  • config template <name>: Apply complete room configuration in one command
  • Template categories: Business-focused, collaborative, creative, and educational meeting types
  • Smart template management: Templates apply multiple settings atomatically
  • Template reset: config template none to clear template and return to individual settings

📤 Configuration Export

  • config export command: Export room configuration as ready-to-use bulk commands
  • Copy-paste workflow: Generate clean command lists for easy room replication
  • Smart detection: Only exports room-specific settings, ignores global defaults
  • Complete coverage: Exports all configuration areas (time, response, limits, auto-behaviors, emojis)
  • Clean output: Simple command list without section headings for easy copying
  • Room replication: Perfect for sharing standardized setups across teams

🔧 Enhanced Bulk Configuration Feature

  • Multi-line configuration: Execute multiple config commands in a single message
  • Consolidated response: All commands processed sequentially with consolidated results
  • Error handling: Individual command failures don't block other commands
  • Line-by-line processing: Each command validated and executed independently
  • Permission control: Requires moderator/owner permissions like individual config commands
  • Smart validation: Invalid commands reported with line numbers for easy debugging

🎯 Use Cases

  • Room setup: Configure multiple settings for new meeting rooms at once
  • Bulk updates: Efficiently update several configuration options simultaneously
  • Template configuration: Apply standardized room configurations quickly
  • Meeting preparation: Set up complete room environments with one message

💻 Technical Implementation

  • CommandParser: New BULK_CONFIG_PATTERN regex and parseBulkCommands() method
  • BotInvokeListener: New handleBulkConfig() method for processing command arrays
  • Error resilience: Graceful handling of mixed valid/invalid commands
  • Complete localization: Full English and German translation support
  • Help integration: Bulk configuration documented in moderator help text

🌍 Multi-Language Support

  • English translations: Complete localization for all bulk command responses
  • German translations: Full German support with proper terminology
  • Error messages: Localized validation and error reporting
  • Help documentation: Bulk commands included in contextual help system

📊 Command Examples

```bash

Configuration Templates - Instant room setup

config template list # View all available templates config template workshop # Apply Collaborative Workshop template config template none # Reset template configuration

Configuration Export & Import

config export # Export current room configuration

Result: Clean command list ready for copy-paste:

config time enable

config time thresholds 80 120

config response minimal

config limits max-items 20

config emojis current-item 🎯

Bulk Configuration - Multiple commands at once

config time enable config limits max-items 15 config limits max-bulk 5 config limits default-duration 25 config time thresholds 80 120 config response minimal

Bot processes all commands with grouped response:

🎉 Bulk Configuration Applied (6 commands processed)

✅ Time Monitoring: enabled, thresholds set to 80%/120%

✅ Agenda Limits: max items 15, max bulk 5, default 25 min

✅ Response Mode: Minimal (reduced notifications)

```

⚙️ Features

  • Multi-command processing: Execute multiple config commands in one message
  • Individual validation: Each command validated independently
  • Error isolation: Invalid commands don't affect valid ones
  • Consolidated feedback: Single response with all results
  • Permission inheritance: Same permissions as individual config commands
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
Signature0mmsEr0+x9e0YVGn3TbD7ruVnAvWZsVJb7sbuoQ+kW9nUEj0lJz59aZ9aGvvDAMJEhZQJSLM2cVHC1dz9nz4nAqbxJsW+BxgeGfl72J8MlY3O/FPCwbW6BvBrTDoG+I+g+UFnFOl7NFcuwcwlfvpYla4xke+nKu7m8qNq98y9BIAWvxgU0fwJmfkNxCQ2zWIjk3WP0fXHEgjZocq4Akji3wcJPZ4i8Vc+kW7oX0teOJHH9it0pU79+9Krv3jc34JgedWOSAppHxYcVQpyo2d29wlAKKvaJAOxBi4qjVnnbu2VcuvixoQhvcCV1DK6DPQ6E+MpXQKKSo+oTiGhnl8H96+vJ9j3yX+AhJFsaNB9PD3JgAzwMt/wMlEeAI87CtqiGtG8MQqJn8rH4ZV0SkijxAxtDrx17hyFCZhH8/7rXtDhsYhSZkwE3fXJQeU2czfB6JydNmU923iHhduPTWA6HL4XdWNi5At9J802zMCQx6SyXUNTWHMwbzZ7LcqVIbu5BBcDDLx53QAr5zK+UukHjY+vTBi5i9YdOAm1A44Upedd4wvNu9sDVhmkUo4NlrQBal/1hR8j4ZvCK954lPWgyukmH/1BeCjMwB2doKEEi3ElwUF4MtNovserz8+LxX5N9C8prnAaRxyZiV41tcTV0Ev8hebugkQWZipN3HaefY=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.5.1
Release Details
UpdatedSept. 27, 2025, 11:45 a.m.
Changelog

🐛 Fixed

  • Fixed agenda reset not properly clearing active time tracking timestamps
  • Items no longer continue showing elapsed time after reset command
  • Enhanced reset messages with improved localization (EN/DE)
  • Fixed migration version tracking during app upgrades ensuring reliable migration execution
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignaturenVT9VNDKY/syBRh48rjxa/V8/sOAYXMjAF88fa4w0qs96QBZSxcass27M5X8BqjEXRDYiU5hcyyJxNejhTkR3lg2ILPE6Fo5nwRUz4ZpoaPNafxuhghnYsKgGtDZN/h+1nURR0mrmXLw+wXesnIvO30owfUQH2pNF8IWy4M581Y+SwqjUZqy9tRviU+60HsEkz3Uq1w3U2aoCv4mXpeX8SowDsEjTig+mvcORVyyawtcKLoHfKnZa8DKJBLpTnxbECmLxteagpYS2DTLUjDyoWr0zst64s/eEAEWlczFJPxNyGaho7EO2vbuZGvQM5Gwk7p/lMRssDcUBWPnfhTp0GFWOGz42/5VF3szU5iccy93JBUjrU3ukuTyv4LM1bXw1+kJ9OH+LD4idSslNzd28D5k5rMujQF9kQ54I4at491TJIXi8FFnLuHiKEUFGDC6aa5kT14T+qVG5A/hVs1A+togF5e5fSoDUKY6DnSZQIAqzvOVManmDJZF37sYl0DHTwwlvCJDs5HXvhTmVlWsgByz5IIM7mX0tW5gbvSW9/7lmigspAFnoRz+kRP2p3YYK4PfMTFD9FzvtwC+eX8ke8P5VW9Sr/1V2juGNfFnxzKT4moZtPofZsJVyQNZI/dcCHEEeNi4a1WzkmQcDI8YLVpr5CW/0bCfnFp/JmEsW6s=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.5.0
Release Details
UpdatedSept. 24, 2025, 12:07 p.m.
Changelog

🔄 Added - Migration Framework & German Formality Support

🚀 Migration Framework (NEW)

  • Automatic Version Detection: Seamlessly detects app version changes and triggers migrations
  • Background Job Processing: Non-blocking migration execution via Nextcloud's background job system
  • Version-Aware Logic: Detects upgrades by comparing current version (≥ 1.5.0) with last enabled version (< 1.5.0)
  • Safe Operation: Database transactions with rollback capabilities on migration failures
  • Extensible Architecture: Framework ready for future schema changes and feature migrations
  • Admin Monitoring: Complete observability of migration status through logs and job listings
  • Migration Tasks System: Modular migration tasks implementing IMigrationTask interface

🌍 German Formality Migration (GitHub Issue #16)

  • Formal German Language Support: Introduces new formal German bot variant (de_DE) alongside existing informal variant (de)
  • Room Assignment Migration: Migrates rooms from old formal bot (nextcloudapp://agenda_bot/de) to new formal bot (nextcloudapp://agenda_bot/de_DE)
  • Language Separation: de = Informal German ("Du"), de_DE = Formal German ("Sie")
  • Cultural Appropriateness: Dedicated formal German language variant suitable for business environments
  • Automatic Migration: Room assignments automatically updated on version upgrade to preserve formal language experience
  • Zero User Disruption: Migration happens transparently in the background via background jobs
  • Comprehensive Testing: Verified migration compatibility across all supported versions (v1.3.4-v1.4.1)

📚 Documentation

  • Migration Framework Guide: Complete documentation in docs/MIGRATION_FRAMEWORK.md
  • Architecture Overview: Detailed explanation of migration system components
  • Developer Guide: Instructions for creating new migration tasks
  • Troubleshooting: Common issues and admin commands for migration monitoring
  • Best Practices: Guidelines for safe and effective migrations
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
Signaturep6iN8JefKPkKgebLoaEZ8HGjGNP8UfKTjQ/o5OvNWSfANpg5y/WebkP/Q3N/LiX43HTclcZUr3HCh9PIBjlhWLlspzS7pmfBe7WjHBzCjxa2QmEKhp3Y9ugdtIqpqY5O1hxU1GOsdYNLdwR9JrdwIJYhMUFGqbpv4syk+Q0a8x+PaWDGM9oSU+lbWNAHr1B3XnycKmcN1570WmoLniF2TwTJ3El5mwnR1l4mVocPF15vhTfT2imDBhefnnq535tW5GxS1io1vt7H+dqzQi+U/Ej+pyrLvm6AxIryKM7t4NocxQ+rqwN7Znf24o5IBHtcwEYpjMcCiwguqXknM6IHJGaNqJ/1vzoDJDZEnZ+BxM9exCUAvSUhi3deDu8KQn6P8T1MK+OwIJUjSjOXW0EEMJwRLKCixh5XtEnwdDhOifyFewpu6sTbA7cgdyPn3NUpsUAkb4eHaWNONSJ7griN02DQoYe+YFaYQ8/PfUowEgBmb9C0ZK60Nu4kHwn/8Iq10h/NZGB3oc4kVo4y4uYIACZFiB/lvVOegcYzCgWKGqdtVYwmx8wlUbkld0rwdG44rUZ8zYhk6mnS8dsjeoQd4ZSDSnNLv8ma67oD5ydPIT1htU5OtNBhs5FLmz6wn6wHJ2SgYBTCNIgxb5AQvsiSNKTDssBmHtuAZABbxPJcxK8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.4.1
Release Details
UpdatedSept. 18, 2025, 5:35 a.m.
Changelog

✨ Added - Agenda Reset Command

🔄 New agenda reset Command

  • Bulk status reset: Reset all agenda items to incomplete status with a single command
  • Efficient workflow: Eliminates need for individual undone: X commands for each item
  • Perfect for recurring meetings: Weekly stand-ups, monthly reviews, and template meetings
  • Time tracking reset: Automatically resets time monitoring warnings for all items
  • Permission controlled: Requires moderator/owner permissions for data integrity
  • Smart handling: Graceful responses for edge cases (no items, already incomplete items)

🚀 Use Cases

  • Weekly team meetings: Quickly reset last week's completed agenda for reuse
  • Monthly reviews: Reset quarterly agenda items for the next cycle
  • Template meetings: Efficiently reuse standardized agenda formats
  • Recurring check-ins: Streamlined workflow for regular meeting patterns

💻 Technical Implementation

  • CommandParser: New RESET_PATTERN for command recognition
  • AgendaService: resetAllItems() method with comprehensive error handling
  • BotInvokeListener: Integrated reset command handler
  • Complete localization: Full English and German translation support
  • Help integration: Command documented in moderator help text

🌍 Localization

  • English: Complete translation keys for all reset functionality
  • German: Full German localization with proper pluralization
  • Error handling: Localized messages for all edge cases
  • Help text: Reset command included in contextual help system

📊 Command Examples

```bash agenda reset # Reset all agenda items to incomplete agenda status # Verify the reset worked

Before reset:

✅ 1. Project review (completed)

✅ 2. Budget discussion (completed)

✅ 3. Next steps (completed)

After reset:

📍 1. Project review (15 min)

📍 2. Budget discussion (20 min)

📍 3. Next steps (10 min)

```

🎯 Benefits

  • One command replaces many: agenda reset vs. multiple undone: 1, undone: 2, etc.
  • Time efficient: Instant bulk operation for recurring meetings
  • Preserves structure: Maintains item order, titles, and durations
  • Enables reuse: Perfect for template-based recurring meetings
  • Smart cleanup: Automatically resets time monitoring states
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureOLNoXEd32fCMdcC4qGHRH5Gl87zjM5qpUDc6I6bD6pfFnCOkNkrceR+pBVw2LMzD2R1vYT1QW7vmIUuOBapdDMwOl5K5B1bCYdRWN6qR1ltJ0Q1mZpaO8BN5ttoPkjwBzWAcz6jrdU3V83yP8/Q/bcBSU8Ky5AIlx0tCXeu16gl8qg3+LcPZq33/hTrFctVtsnnQa2xC7ltZvwfbt3uDL9xHBb7PRgGCuzr3Ym3KaLvifa0j+pAotnK5b+D9cShkflmjVNlcq7RByvFtjoEEmluQGEL5EqCjHgyR4dWqeacwHRJ5d0OLYjm4TLtIlxxwsDkp2JFkiPrVeLk78KAzztNtYMu+QCGrhznxqfKSmK9i9RqcX5+6le3l1MbpL9L3BcxXiB94+uq3Fy0xoei7L0Ovr1UXg1hfKaJ3BieHTCaltvn1gJFgXWmoj2VsSvDTLjVr4zy0Kij5PmuzoVg71GFaKOGL1k+si/mbGc7C2Cdq1dVsJqbaeN2qiHVubcdmfo+cOwMCTGyVfwA1yAWmpcsX5kw7b/Z7nJbksPAp4vqP0C1V+v1KSVockmfEb83jczS7DMpI3cg0vZCr+K07C0yWrw6jNnpzpNFmWURG7j1sE/8fqdkQCktburnUT4i1ucikKfosHFvGS7eOdBUQXyYmNIfGVjZo9auQwDpxzXk=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.4.0
Release Details
UpdatedSept. 14, 2025, 10:03 p.m.
Changelog

🚀 Added - Room-Level Bot Configuration

Each Talk room can now have its own unique bot configuration across five comprehensive areas:

⚙️ Unified Configuration System

  • New config show command: Display complete room configuration overview in a beautiful, organized format
  • Hierarchical configuration: Room-specific settings override global defaults with intelligent fallback
  • Configuration metadata: Track who configured what, when, with full audit trail
  • Atomic updates: Partial configuration updates preserve existing settings
  • Smart reset functionality: Individual sections can be reset to global defaults

🕙 Enhanced Time Monitoring Configuration

  • config time command suite: Unified interface for all time monitoring settings
  • Room-specific thresholds: Custom warning (10-95%) and overtime (105-300%) percentages
  • config time enable/disable: Toggle monitoring per room without affecting other rooms
  • config time warning X: Set warning threshold (e.g., config time warning 75)
  • config time overtime X: Set overtime threshold (e.g., config time overtime 110)
  • config time thresholds X Y: Set both thresholds in one command
  • config time reset: Return to global defaults
  • Backward compatibility: Existing time xxx commands remain fully functional

💬 Response Behavior Configuration

  • config response command suite: Control bot verbosity and notification levels
  • Normal mode: Full text responses for all commands and operations
  • Minimal mode: Emoji reactions only, reducing notifications while preserving functionality
  • Smart exceptions: Help, status, and critical notifications always use text in minimal mode
  • config response normal/minimal: Switch between response modes
  • config response reset: Return to global response defaults

🚧 Agenda Limits Configuration

  • config limits command suite: Fine-tune agenda capacity and behavior limits
  • config limits max-items X: Set maximum total agenda items (5-100)
  • config limits max-bulk X: Set maximum bulk operation size (3-50)
  • config limits default-duration X: Set default item duration in minutes (1-120)
  • config limits reset: Reset all limits to global defaults
  • Validation: All limits validated with sensible bounds to prevent abuse

🤖 Auto-behaviors Configuration

  • config auto command suite: Control automatic bot behaviors during meetings
  • config auto start-agenda enable/disable: Auto-set first agenda item as current on call start
  • config auto cleanup enable/disable: Automatically remove completed items after meetings
  • config auto summary enable/disable: Generate meeting summaries on call end
  • config auto reset: Reset all auto-behaviors to global defaults
  • Meeting flow optimization: Enhances natural meeting progression

😀 Custom Emojis Configuration

  • config emojis command suite: Personalize visual agenda item indicators
  • config emojis current-item 🎯: Set emoji for current agenda item
  • config emojis completed 🎉: Set emoji for completed items
  • config emojis pending 📋: Set emoji for pending items
  • config emojis on-time 👌: Set emoji for on-time status indicators
  • config emojis time-warning ⚠️: Set emoji for time warnings
  • config emojis reset: Reset to global emoji defaults
  • Validation: Emoji length limits and fallback to defaults for invalid entries

🛠️ Technical Architecture Enhancements

RoomConfigService Expansion

  • Five new configuration areas: Complete CRUD operations for each configuration type
  • Intelligent data merging: Partial updates preserve existing configuration sections
  • Metadata management: Comprehensive tracking of configuration changes with timestamps
  • Smart cleanup: Automatic removal of empty configuration entries
  • Method standardization: Consistent getXxxConfig(), setXxxConfig(), resetXxxConfig() patterns

CommandParser Extensions

  • 37 new command patterns: Comprehensive regex patterns for all configuration commands
  • Flexible parameter handling: Support for optional parameters and multiple command formats
  • Unified parsing: Consistent command structure across all configuration areas
  • Error resilience: Graceful handling of malformed commands with helpful feedback

BotInvokeListener Enhancements

  • 5 new command handlers: handleConfigShow, handleConfigTime, handleConfigResponse, handleConfigLimits, handleConfigAuto, handleConfigEmojis
  • Permission integration: All configuration commands respect moderator/owner permissions
  • Localization support: Complete translation integration for all new features
  • User ID extraction: Robust actor data processing for audit trails

📚 Comprehensive Documentation

  • Interactive help system: All new commands integrated into agenda help with examples
  • Contextual guidance: Each configuration area provides usage examples and tips
  • Permission indicators: Clear indication of required permission levels
  • Visual formatting: Beautiful markdown formatting with emojis and structured layout

🌍 Complete Localization Support

  • English translations: 150+ new translation keys for all configuration features
  • German translations: Complete German localization for all new functionality
  • Translation consistency: Standardized terminology across all configuration areas
  • Dynamic pluralization: Proper plural forms for counts and statistics
  • Cultural adaptation: Region-appropriate formatting and language patterns

🔒 Security & Permission Framework

  • Moderator/Owner restrictions: All configuration changes require appropriate permissions
  • Permission validation: Comprehensive checks before any configuration modifications
  • Audit trail: Complete logging of all configuration changes with user attribution
  • Data validation: Input sanitization and bounds checking for all configuration values
  • Graceful degradation: Non-privileged users see appropriate permission denied messages

Performance & Reliability

  • Efficient storage: JSON-based configuration storage with minimal overhead
  • Intelligent caching: Configuration values cached and loaded on-demand
  • Atomic operations: Database transactions ensure configuration consistency
  • Graceful fallbacks: Robust handling of missing or corrupted configuration data
  • Memory optimization: Lightweight configuration objects with efficient serialization

🎯 User Experience Improvements

  • Intuitive command structure: Logical, consistent command hierarchy across all areas
  • Rich visual feedback: Comprehensive status displays with emojis and formatting
  • Context-aware help: Relevant examples and usage tips for each configuration area
  • Error recovery: Clear error messages with suggestions for valid alternatives
  • Progressive disclosure: Basic commands with optional advanced parameters

🔧 Migration & Compatibility

  • Zero-disruption upgrade: Existing installations continue working without changes
  • Backward compatibility: All existing commands and behaviors preserved
  • Gradual adoption: Rooms can adopt new configuration features as needed
  • Global defaults: Unchanged global settings serve as fallback for all rooms
  • Legacy support: Old time xxx commands remain fully functional alongside new config suite

📊 Configuration Examples

Complete room setup for focused meetings: bash config time thresholds 70 110 # Tighter time management config response minimal # Reduce notification noise config limits default-duration 15 # Longer default discussions config auto start-agenda enable # Auto-start on call begin config emojis current-item 🎯 # Focused meeting aesthetic

Quick team standup configuration: bash config limits max-items 10 # Limit agenda size config limits default-duration 3 # Short discussion items config auto cleanup enable # Auto-remove completed items config response minimal # Minimal distractions

Executive boardroom setup: bash config time warning 85 # Conservative time warnings config auto summary enable # Automatic meeting summaries config limits max-bulk 5 # Controlled agenda imports config emojis completed ✅ # Professional appearance

🎉 Impact Summary

Version 1.4.0 represents the largest single enhancement in Agenda Bot history, introducing: - 5 comprehensive configuration areas with 25+ individual settings - 37 new commands for complete customization control - 200+ new translation keys across English and German - 500+ lines of new service methods and command handlers - Complete backward compatibility ensuring seamless upgrades

This release transforms Agenda Bot from a useful meeting tool into a highly personalized, room-specific assistant that adapts to each team's unique meeting culture and requirements.

Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureV4b213k7WAI+Tc80vdwxHjk/DuvOUBx5FotMXRPB1kUEtnebjAIEqv0FIuDT80SHXXfkMoPfGwPUznr3++BHVzN8zjbDBDh7rLbuw6nox5pEV8kuqgN+egL3SXrIKWtwcv/gKzWni4YBwwPvUJLcqDBnipvARY1+XITTsnJcp3fNTnM6O29WshBzuwR34AlvfBG2HwLVbM4DI6VR7RL9PicsuNFclo7/yrdSREt/K9yI5kUBBncOm3o7QQnmuocAOKff/sFxXxRv+SIgbpEXixlZJHLyZtJHIRrTi6LawR9IK+2KQ0Zmd1POchyqfReM0S33CEP0oaTgOwK7vhcv1Y4UxVa0/3PahRCOrA8xWjw1SjpBh295XRVQQj6hf4AhwMhXEQQFvCgRK3b49MWa7Dm/GqYoiyJ5fsZNEC3QZIqzqep87hg6y/Tf926el4c43lBgqq/l/BZvSNlhnM821RP2OWuKL/q+l6L0cPUEhEC3EWcUcCPv2k3XSoVRgR4rME462wvYlTJPYO1R/ZprpcjR41iPPUbjMKrPagy5oDUUIZgPQKH8QBIVv/n1OMT7MUIYp10kkWGplTE7uiDcq9PkW50C0W5hZ/KUH2ReCFnnS2HLhoK2Fxgw7LuI8IluRDDsKOqNRliVkGlGAHY6iuvk8EPCMy52CaYIwSw2Ykc=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.6
Release Details
UpdatedSept. 13, 2025, 1:56 p.m.
Changelog

🔧 Enhanced - Agenda Item Management

  • change: X command: New command to edit existing agenda item titles and durations
  • Flexible syntax: Supports changing title only, duration only, or both with natural language
  • Validation: Prevents modification of completed items with helpful user guidance
  • Permission control: Requires moderator/owner permissions for data integrity
  • Localized: Full support in English and German

⚡ Enhanced - Timing System

  • Unified timing logic: New TimingUtilityService centralizes duration formatting and calculations
  • Improved timing display: Planned duration now shown immediately at call start
  • Flexible formatting: Compact single-line for status, multi-line for detailed summaries
  • Consistent formatting: Unified duration display across all features
  • Better user experience: Enhanced visual formatting and alignment in timing summaries

🛠️ Technical Improvements

  • Code organization: Eliminated duplicate timing code across multiple services
  • CommandParser: Added regex patterns for modification command parsing
  • Service integration: TimingUtilityService properly integrated across components
  • Translation updates: New keys for modification features and separated timing labels
  • Performance: Reduced redundant calculations through shared utility methods
  • Bug fixes: Fixed time reset command error and threshold preservation in time monitoring

📚 New Commands

bash change: 2 New title (25 min) # Change both title and duration change: 3 Updated review # Change title only change: 1 (45 min) # Change duration only

Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignaturewZs14yhfkAXCzeCfVNBW5kTz4SWy9K+oW/DEESFmgGO182kI4m5QqboEfNT/UMe9oZt5IqYvI70QwOOQASDQVPLuYhuWu8K03es4AOXKhKLx9JDQwbZYk6gWzATJ3zrBO9StMIBiLHDN5nqSBRMeBCkDWBbiRt1p6SVkkHtlyalU85QysvG7xSTPGi0GOrhGdmOfyqzmxDWFLEFB+GLIfX+ytzJg9pInoDggoBxKGmMESiaKqRBZM6pj3GrcR6/EmB1OsN2z5XBqUVwHZH3t1GGFV//zX37fxOO4dS7v5H726f5H7VvTAwHBS4hc+5rZea6QOTFuTnWIMyPsiaXAc//e4EYitKTamcs5kwY2lxcLdkQXhmH0IcIUcnMYSm79wbsG44PJnm44McsJTiKNKjOo1tIwUY2zx96NvNTjLDshUhATTAMODzt1nJ6qG4RYeBQZvUVsFacQzKFMrkM/YFeVPC4pCetVZojxq3uvmyNY80ppoF2hzvLVy9QsYrVhzqB7z9oDOIl6bOGypU3AZJ1sijBP2wD4SyMUL4LoRIR/ojtnFJ3FiavoRBiAjUCRd7C/sFMqyK8CcGUN4KeVTGequh8T2tpi4OGpsJTr/2FACjt7SImmbPMkT2L03j3KjAIY1o2ttmOYF9EexzVJ7F5Wo0UrRRJxkqJSaEKBnMI=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.5
Release Details
UpdatedSept. 12, 2025, 9:13 p.m.
Changelog

🔧 Enhanced - Bot Identity & User Experience

  • Unified bot naming: Simplified bot names from "Agenda bot" to "Agenda" (English) and "Tagesordnung" (German)
  • Clean display names: Eliminated redundant naming like "Agenda bot (Bot)-bot" that occurred due to Nextcloud's automatic bot suffixing
  • Professional appearance: Bot now displays as "Agenda (Bot)" or "Tagesordnung (Bot)" across all languages
  • Consistent branding: Unified naming throughout bot registration, welcome messages, and all user interactions

🛠️ Fixed - Welcome Message Experience

  • Personal introduction: Updated welcome messages to be more engaging and personal
  • Friendly assistant approach: Bot now introduces itself as "Hi there! I'm your agenda assistant" instead of formal "Welcome to Agenda Bot!"
  • Clean bot identification: Fixed welcome message sender to display proper bot name without redundant suffixes
  • Localized greetings: German welcome messages now use "Hallo! Ich bin Ihr Tagesordnungs-Assistent" for consistency

⚡ Added - Command Flexibility

  • Enhanced next: command: Added support for next: without item number to match done: behavior
  • Consistent workflow: Both next: and done: commands now complete current item and auto-advance when used without numbers
  • Intuitive shortcuts: Users can choose whichever command feels more natural for their workflow
  • Backward compatibility: All existing next: X functionality preserved for setting specific agenda items as current

🌍 Enhanced - Multi-Language Support

  • Translation consistency: Updated all translation files to use simplified bot names
  • Welcome message localization: Improved German translations for more natural, professional tone
  • Command documentation: Updated help and documentation to reflect new command flexibility
  • Language-aware naming: Bot registration respects language preferences with appropriate names

🛠️ Technical Improvements

  • CommandParser: Enhanced NEXT_PATTERN regex to support optional item numbers
  • AgendaService: Updated setCurrentAgendaItem() method to handle null position parameter
  • BotService: Simplified bot registration to use clean base names
  • Translation updates: Comprehensive updates to English and German language files
  • Code consistency: Improved method signatures and parameter handling across services
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureDhmQco8G3Qpo4YYicDuabeFdOc2k/mV//qSBUI70ftWk3fG/i5RcmcHGPFVuk5DPFjnEACtqGw5bwqstEgm5u/spe0fGbqtSSJ4F1xYol1qf4XADNbWcnZ95oj4qYVKGEohGIqDsqcSMosRFCkLu2lqKt2HoWP527a7c6Ioj18AsmjB9StKSglaYhOJrhVHqMbwvJ3X5IQBh3zsbywDdcch49/KX1XmzGFm9dlLzocyHs/e6McGvbjTTcg05SB9xVZgeYL21h3QHtl6+QvcxgxNinbBNm6P2TI97qmslpSwM4TXTOQ4+qCJhppHZIOXtJfdw5xQ1VqR9s7q1hAKTLzc/LSAd+Cpmc4eB+ztGS/jRqnNjo66yh7I0U0ALgmaElbuwyYyaHUXKJQVLLG/hZQgiqxpjORVArtpVMiF3fsKdxMBqcvoOrzcSoS6nq1nCSsstzC1QOSeVtFeTdp7JJncc41WaMs/IBo30OCPASMx/55gFDrPDCBRTRMWblY2DenmlkG6nRIk4j/9TSVMqSi2sLEl/80RqXskbhhoMF1tUPn/9rEMWyPjSTnvnelCHro/zvF3IPRU2X9ACyr0xHOU9K3lolkeSyfHYBGPXYBUU/r9FlB3t8VhIKr8Mra+Jq1s6Rz+vFkku5ep4EU/wEzWWSfn6cOQgzd/IWh4EfiM=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32
Agenda bot 1.3.4
Release Details
UpdatedSept. 8, 2025, 9:24 p.m.
Changelog

🚀 Added - Silent Call Detection

  • Silent call detection: Bot now intelligently detects when calls are started silently and responds appropriately
  • Notification-aware responses: Agenda status messages are sent silently for silent calls to avoid unwanted notifications
  • Enhanced call handling: Preserves the intent of silent calls while still providing helpful agenda information

🔧 Enhanced - User Experience

  • Improved user experience: Silent calls won't trigger notification-heavy agenda messages
  • Better meeting flow: Respects user's choice to start calls quietly while maintaining functionality
  • Smart notification management: Bot messages match the notification behavior of the call that triggered them

🛠️ Technical Improvements

  • System message parsing: Enhanced event processing to detect silent call metadata in BotInvokeListener
  • Fallback detection: Multiple detection methods ensure reliable silent call identification
  • Debug logging: Added comprehensive logging for call event analysis and troubleshooting
  • Enhanced isCallStartedSilently() method: Analyzes ActivityPub system message events for silent call indicators
  • Smart response behavior: Uses addAnswer($message, $isCallSilent) to match notification behavior to call type

📚 Documentation

  • Technical documentation: Added comprehensive docs/SILENT_CALL_HANDLING.md with implementation details
  • Usage examples: Code snippets and testing guidelines for the new feature
  • Behavior explanation: Clear documentation of silent vs. regular call handling
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIEBTCCAu0CAhK6MA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjUwOTA4MDc0NjUxWhcNMzUxMjE1MDc0NjUxWjAVMRMwEQYD
VQQDDAphZ2VuZGFfYm90MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
2t4YutKpUyqDt3k0DGrV1xDX6EBtvvXcSGnxX4jDD/Xu7ikSucF3RbOPx6WLUdYj
ZNVC9bjizZidgueQJqqX1LBwXaP79jQ2x8tKnq8elrQfmkknQftmb5iBO1O55Tdy
2K9vllWXtYwxCU/6+HxeU9NQfgjNkCpMWyyjcxY8m13QcPj8YYuEB2vg+6aSlSgz
LjXN+71hrK+NbN87nz1umL14vWcGMyUEyuK6XGEKnmlbkvRGPjr/vWxvdgrDUhjw
11GVwaFfpyOvfi9Ji6X8FVHphzfdT/dBWD+sYNkvqtVRhSl2/Vq1PMb08dUXVa1w
3DmOac74MkQ4T79+eLJT/PQ5yb2DA5zQSQtiHbQl/tiHmXeByajKxp1t5I4iorGS
9BycsLBRbDM1+YscRI7MhVoiAlwD2Lz+X4A4uWHlGQ+/3nrVa771OKj1fZGveRO7
lel5U4ATp8x8E1abhFLeipHOqBmipCq2bvxgAusWYF2LHny9eQgj8P6MxUfSYfJo
+Duqtmmvqrq/se/hLILh4UWlnFH5UynGSnjSu4NZVLrUDr2+vTJT1qKUK2DvCdSz
efvA0wh7XC41A/7l0dzBenHQIL7HobHP/Qr/KyLOQ6e0ZB5Cny17uNBCAkR0Lz1c
aEZyVJfOCzN/90yWpTeAu7mvMZIPc+W5KHs4L+DXT9ECAwEAATANBgkqhkiG9w0B
AQsFAAOCAQEAg0uZKWiCJHi3lhlspbDz+Wvr25GrwyaPA8dnveknrM5xy1v7o+59
j4NHlw4JHel8Z5spldnmhlr2XcClaWnfYc31gpjKfiqVL3zWE9fCE1J9A/gj1073
I5kiEuRhhs8kB8kmxPUDVenZKBVcvPAePbfIEqbj71tHeKHjV5nlPINFy1GoKlGE
w0K1vseAj8VM1mSDiTlVyjpH7sVA5gBA1oVD5WgYEZuX/Js/FbPm7P5mlnBjYR0F
glR4VNVj9BmoFcgyStmIbaLa0l2R0oKWLYWabPFbg/kCMu82szUsGlKsnpbMHz/X
krHd/e15zeHA/Kx6URG3iKse/VCeZenFgw==
-----END CERTIFICATE-----
SignatureS7a4pS6LeRpu8s/W0OHPBTzH6+72d3KLQoCUGGl4SsCrA1AO68igzQElNppsaHzxt69YOy8OA2wGbZbrAKjgIm7wu/PRUwOJ1FmXv/m6Xz+HA5fVK11dkyNTyF3rPG+sHWpGBB3rgdzZzjdRk+JxXbLhmhyDi+5GkPbwhhxn1PeFlHTGTUBN50rxEHwwbKzUPqHyOEHa1PqAHYUlYSZf45N9Kv6o2cIGfXOL8uGl52sj5cpDssHWccghyhweFR4v7gdUE0ZNqKdTmuJJPKtLBL/Sa3pTGmr7xbui+q/XXGIYkQhy2eBfK8HWTPHik/Mcmh9ZyP3CV5EpUOld352AGHHD+dFcemzlpyeYQSYOgxEmqPH5JU7uLyzPZRlnG4qSR8Tj1EiX4NmtHcmbs4z8DXLTxL+EOZTrq7nsGJVN52x5EG6lI+rLvjYn9EznHV1im96/UUz+FW7DeHjV8ag6BALZBv8/Vsbm1dFm1yv2+UNvNh5NUtlkwDd41GTGlTszSgesdkm2U3quvgXHGHb6F/8ronO1WudYH80PlLYgAOxzMrBO/LOGtznAozCmCWGlcAC2DpylRcEEL549FBclQJFCe4QOmG6H6uoJG5lU1U7cd87E0NeuRlLXP5hUrJMGtDvw66qQEhnnyca0VmJlfF8nWl9dKXGiPutrJ8bXFq0=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<33.0.0
Minimum Integer bits32