I’ve been experiencing this issue for over a year across dozens of servers with FPBX 15-16.
FPBX iCal calendar syncing is a mess when repeating events are set up in google calendar.
My biggest issue is that if an event repeats in any way, it is completely unreliable on if freepbx syncs following events. Some are missing, some are repeated extra days, some don’t actually trigger the time condition.
Has anyone experienced similar issues and if so, would you be willing to go and upvote my untouched yearlong bug report in github?
opened 04:58PM - 21 Apr 24 UTC
bug
triage
### FreePBX Version
FreePBX 15
### Issue Description
Hi there, thank you for … all your work on this project.
Found a few issues with Calendaring when linking to a Google calendar and creating repeating events.
1. Events that repeat by more than every 2 weeks just repeat weekly no matter the range. (Tested every 2 weeks to every 8 weeks)
2. Week-long events that have time set at the same start and end time (but different days) will not show times and will occur at midnight (and not display times) instead of set times.
3. Events that are set to reoccur more than every 30 days (daily) (as a workaround to the reoccur weekly issue) will not reset BLF status until feature code is toggled. (Calendar and call flow operate properly but BLF keys are stuck and do not switch to unmatched despite calendar reflecting event has ended)
- All issues occur when creating calendar events in a Google Calendar that has been linked to FPBX via Remote iCal
- All issues affect FPBX version 15.0.37.4 (Asterisk Version: 16.30.0) and 16.0.40.7 (Asterisk Version:16.30.0)
(Tested on 4 different servers, each 15 or 16)
- All tested servers with issues are hosted on:
Operating System: Sangoma Linux 7 (Core)
CPE OS Name: cpe:/o:sangoma:sng:7::server:utf8
Kernel: Linux 3.10.0-1127.19.1.el7.x86_64
- Browsers used and tested in:
Chrome Version 123.0.6312.106 (Official Build) (64-bit)
Firefox Version 124.0.2 (64-bit)
### Issue 1: Events that repeat weekly, more than every 2 weeks, just repeat weekly.
**Issue:** When creating an event that needs to repeat every 2+ weeks in Google Calendar, events will just be repeated weekly.
**Reproducibility:** 98%.
**Expected:** Events should repeat at the specified intervals, such as every 3 weeks, without reverting to weekly repetition.
**Actual:** Events set to repeat every 2+ weeks revert to repeating weekly.
**Steps to Reproduce:**
1. Link a Google Calendar to FPBX via Remote iCal.
2. Create an event and set it to repeat every 3 weeks.
3. Observe that the event repeats weekly instead of every 3 weeks.
### Issue 2: Multi-day events that start and end at the same time do not show the time in Calendar/Event View and occur at Midnight instead of set time.
**Issue:** Week-long events with the same start and end time across multiple days fail to display times and default to occurring at midnight.
**Reproducibility:** 90%.
**Expected:** Multi-day events should display and occur at the set times, regardless of the event duration.
**Actual:** Events are scheduled at midnight and do not display set times in the calendar.
**Steps to Reproduce:**
1. Link a Google Calendar to FPBX via Remote iCal.
2. Create a multi-day event, setting the start and end times to be the same.
3. Observe that the event time is not displayed and defaults to midnight.
### Issue 3: Events that are set to reoccur more than every 30 days properly reoccur in the calendar and in regards to the call flow but BLF hints remain stuck.
**Issue:** Events set to recur every 30+ days display correctly in the calendar and affect call flow as expected, but BLF hints do not reset post-event without toggling the feature code.
**Reproducibility:** 95%.
**Expected:** BLF status should automatically update to reflect the end of an event.
**Actual:** BLF keys remain stuck and do not switch to "unmatched" status despite the calendar reflecting that the event has ended.
**Steps to Reproduce:**
1. Link a Google Calendar to FPBX via Remote iCal.
2. Set an event to reoccur every 31 days.
3. After the event, observe that the BLF status does not reset unless the feature code is toggled manually.
### Operating Environment
All issues affect FPBX version 15.0.37.4 (Asterisk Version: 16.30.0) and 16.0.40.7 (Asterisk Version:16.30.0)
Calendar 15.0.10 Stable
+---------------------+------------+---------+------------+-----------+
| Module | Version | Status | License | Signature |
+---------------------+------------+---------+------------+-----------+
| accountcodepreserve | 13.0.2.2 | Enabled | GPLv2 | Sangoma |
| amd | 15.0.3 | Enabled | GPLv3+ | Sangoma |
| announcement | 15.0.3.13 | Enabled | GPLv3+ | Sangoma |
| api | 15.0.11 | Enabled | AGPLv3+ | Sangoma |
| arimanager | 15.0.3.20 | Enabled | GPLv3+ | Sangoma |
| asterisk-cli | 14.0.4 | Enabled | GPLv3+ | Sangoma |
| asteriskinfo | 15.0.14 | Enabled | GPLv3+ | Sangoma |
| backup | 15.0.26 | Enabled | GPLv3+ | Sangoma |
| blacklist | 15.0.4 | Enabled | GPLv3+ | Sangoma |
| builtin | | Enabled | | Unsigned |
| bulkhandler | 15.0.4 | Enabled | GPLv3+ | Sangoma |
| calendar | 15.0.10 | Enabled | GPLv3+ | Sangoma |
| callback | 15.0.12 | Enabled | GPLv3+ | Sangoma |
| callforward | 15.0.16 | Enabled | AGPLv3+ | Sangoma |
| callrecording | 15.0.7.29 | Enabled | AGPLv3+ | Sangoma |
| callwaiting | 15.0.4.6 | Enabled | GPLv3+ | Sangoma |
| campon | 13.0.4.1 | Enabled | GPLv3+ | Sangoma |
| cdr | 15.0.24.6 | Enabled | GPLv3+ | Sangoma |
| cel | 15.0.17 | Enabled | GPLv3+ | Sangoma |
| certman | 15.0.49 | Enabled | AGPLv3+ | Sangoma |
| cidlookup | 15.0.27 | Enabled | GPLv3+ | Sangoma |
| conferences | 15.0.7.11 | Enabled | GPLv3+ | Sangoma |
| configedit | 13.0.7.3 | Enabled | AGPLv3+ | Sangoma |
| contactmanager | 15.0.13 | Enabled | GPLv3+ | Sangoma |
| core | 15.0.22.34 | Enabled | GPLv3+ | Sangoma |
| customappsreg | 15.0.14 | Enabled | GPLv3+ | Sangoma |
| dashboard | 15.0.18 | Enabled | AGPLv3+ | Sangoma |
| daynight | 15.0.12 | Enabled | GPLv3+ | Sangoma |
| directory | 15.0.19 | Enabled | GPLv3+ | Sangoma |
| disa | 15.0.4.9 | Enabled | AGPLv3+ | Sangoma |
| donotdisturb | 15.0.10 | Enabled | GPLv3+ | Sangoma |
| extensionsettings | 13.0.4 | Enabled | GPLv3+ | Sangoma |
| fax | 15.0.22 | Enabled | GPLv3+ | Sangoma |
| featurecodeadmin | 13.0.6.11 | Enabled | GPLv3+ | Sangoma |
| filestore | 15.0.9 | Enabled | AGPLv3 | Sangoma |
| findmefollow | 15.0.37 | Enabled | GPLv3+ | Sangoma |
| firewall | 15.0.43 | Enabled | AGPLv3+ | Sangoma |
| framework | 15.0.37.4 | Enabled | GPLv2+ | Sangoma |
| fw_langpacks | 14.0.1 | Enabled | GPLv3+ | Sangoma |
| hotelwakeup | 15.0.5.5 | Enabled | GPLv2 | Sangoma |
| infoservices | 15.0.3 | Enabled | GPLv2+ | Sangoma |
| irc | 13.0.1 | Enabled | GPLv3+ | Sangoma |
| ivr | 15.0.30 | Enabled | GPLv3+ | Sangoma |
| languages | 15.0.13 | Enabled | GPLv3+ | Sangoma |
| logfiles | 15.0.15 | Enabled | GPLv3+ | Sangoma |
| manager | 15.0.23 | Enabled | GPLv2+ | Sangoma |
| miscapps | 15.0.10 | Enabled | GPLv3+ | Sangoma |
| miscdests | 15.0.2.12 | Enabled | GPLv3+ | Sangoma |
| music | 15.0.22 | Enabled | GPLv3+ | Sangoma |
| outroutemsg | 15.0.9 | Enabled | GPLv3+ | Sangoma |
| paging | 15.0.4.35 | Enabled | GPLv3+ | Sangoma |
| pagingpro | 15.0.2 | Enabled | Commercial | Sangoma |
| parking | 15.0.15.4 | Enabled | GPLv3+ | Sangoma |
| pbdirectory | 2.11.0.6 | Enabled | GPLv3+ | Sangoma |
| phonebook | 15.0.12 | Enabled | GPLv3+ | Sangoma |
| phpinfo | 13.0.2 | Enabled | GPLv2+ | Sangoma |
| pinsets | 15.0.1.15 | Enabled | GPLv3+ | Sangoma |
| pm2 | 15.0.10 | Enabled | AGPLv3+ | Sangoma |
| presencestate | 15.0.11 | Enabled | GPLv3+ | Sangoma |
| printextensions | 13.0.3.4 | Enabled | GPLv3+ | Sangoma |
| queueprio | 15.0.10 | Enabled | GPLv3+ | Sangoma |
| queues | 15.0.39 | Enabled | GPLv2+ | Sangoma |
| queuestats | 15.0.14 | Enabled | Commercial | Sangoma |
| recordings | 15.0.6 | Enabled | GPLv3+ | Sangoma |
| ringgroups | 15.0.11.17 | Enabled | GPLv3+ | Sangoma |
| setcid | 15.0.9 | Enabled | GPLv3+ | Sangoma |
| sipsettings | 15.0.11 | Enabled | AGPLv3+ | Sangoma |
| sms | 15.0.37 | Enabled | Commercial | Sangoma |
| soundlang | 15.0.5.10 | Enabled | GPLv3+ | Sangoma |
| speeddial | 2.11.0.4 | Enabled | GPLv3+ | Sangoma |
| superfecta | 15.0.5 | Enabled | GPLv2+ | Sangoma |
| sysadmin | 15.0.33.14 | Enabled | Commercial | Sangoma |
| timeconditions | 15.0.15.11 | Enabled | GPLv3+ | Sangoma |
| tts | 15.0.12 | Enabled | GPLv3+ | Sangoma |
| ttsengines | 15.0.4.7 | Enabled | AGPLv3 | Sangoma |
| ucp | 15.0.15 | Enabled | AGPLv3+ | Sangoma |
| userman | 15.0.69.19 | Enabled | AGPLv3+ | Sangoma |
| vmblast | 15.0.11.8 | Enabled | GPLv3+ | Sangoma |
| voicemail | 15.0.32 | Enabled | GPLv3+ | Sangoma |
| weakpasswords | 13.0.2 | Enabled | GPLv3+ | Sangoma |
| xmpp | 15.0.6.12 | Enabled | AGPLv3 | Sangoma |







### Relevant log output
_No response_
Here is a more detailed description of all the issues;
Multiple calendar-related bugs occur when syncing a Google Calendar with FreePBX (versions 15 and 16) via Remote iCal. The issues include:
1. Repetition Interval Errors
Events set to repeat more than every 1 or 2 weeks (e.g., every 3 weeks, every 4 weeks) incorrectly show up and behave as weekly events in FreePBX.
2. Multi-Day Event Time Handling
- Multi-day events that begin and end at the same time on different days default to starting at midnight in FreePBX, rather than displaying or respecting the actual set times.
- Changing start/end times by at least one minute apart fixes the display, indicating a parsing or validation issue when the times are identical.
3. BLF Hint “Stuck” Status
- Events repeating more than every 30 days display correctly and route calls as expected, but the BLF keys never revert to “unmatched” after the event ends. Toggling the feature code manually is required to reset the BLF state.
4. Missing Events with End Dates
- When an event repeats until a specific end date, some occurrences between the start and end may be missing or not displayed in FreePBX at all.
Additionally, we ran into a strange issue that manually running fwconsole job --run can cause calendars to refresh every second instead of following the configured interval. These issues appear consistently across multiple FreePBX instances, Asterisk versions, and browser environments.
Instant Sync:
https://github-production-user-asset-6210df.s3.amazonaws.com/119361408/403166283-c2b9683c-106f-477f-b1d8-f05792b68a44.mp4?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20250123%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250123T201945Z&X-Amz-Expires=300&X-Amz-Signature=ef0c9c5f0af09bdb392da1b0b817724ebe198496cc02c73912fe1d3c7824ec9e&X-Amz-SignedHeaders=host