0

I use Slack in Safari browser to save memory usage and indirectly reduce battery usage from Slack. Slack in Safari browser used to display notifications and load new messages automatically till macOS got upgraded to Monterey 12.2.1.

Now in macOS Monterey, the Slack web in Safari browser always displays Load new messages alert. Also, the notifications from Slack in Safari are not received.

Slack in Safari displaying load new messages

I tried to find solutions in many forums and communities, but of no use. Can anyone please help me with the solution for this? How to make Slack in Safari to show notifications and automatically load new messages?

3
  • Have you checked all the settings in System Prefs > Notifications & Focus > Safari to see if Safari is enabled/disabled?
    – agarza
    Mar 17, 2022 at 19:32
  • @agarza Yes Safari is enabled for all notifications. Missing notifications from Slack in Safari being one problem, and the loading of new messages is another. Until or unless we click on Load new messages link, it doesn't show the new messages.
    – bprasanna
    Mar 18, 2022 at 5:57
  • After some searching i narrowed down the cause to be a regression related to NSURLSession WebSocket from macOS 12.2, and as per this thread the issue is being fixed as part of macOS 12.3.
    – bprasanna
    Mar 23, 2022 at 17:50

1 Answer 1

1

Based on the suggestion from Slack support team, analysing the Safari console output during the issue had following error related to websockets:

[Error] WebSocket connection to 'wss://wss-primary.slack.com/?token=xoxc-123131232101-83721934891-031941234108- 1230492lsajendf98u244lnwdfo19284u83u12ndsflae1220233dpodf01921lkd&sync_desync=1&slack_client=desktop&start_args=%3Fagent%3Dclient%26org_wide_a 4&enterprise_id=E10ASDLK1230&batch_presence_aware=1' failed: WebSocket is closed before the connection is established. close (gantry-shared.d106548.min.js:1:136366) _closeSocket (client-boot-imports.477648b.min.js:1:1886117)

This gave a hint on to look for issues related to Safari and websockets specific to Monterey. With this exploration, following forums/threads had useful information on WebSockets issue related to Safari post macOS 12.2 upgrade:

So, based on the discussions in the above listed pages, there are two causes of websockets failure in Safari in macOS 12.2.1:

  1. NSURLSession WebSockets's inability to process split messages normally.

  2. NSURLSession WebSockets requests compression by including the Sec-WebSocket-Extensions: permessage-deflate header, but ignores when the server responds as not supporting it, and continues assuming the connection is compressed.

The common solution suggested is to disable experimental feature NSURLSession WebSockets:

(macOS 12.2.1) Safari (Menu) -> Develop -> Experimental Features -> NSURLSession WebSockets (Untick to disable this experimental feature)

After disabling NSURLSession WebSockets in Safari now Slack is working as expected, the new messages load automatically and also notifications were sent for the new messages.

Also, the bug comment states that: This issue should be fixed in an upcoming iOS 15.4 Beta and macOS 12.3 Beta.

2
  • Both iOS 15.4 and macOS 12.3 are out already, assume the bug is fixed there?
    – nohillside
    Mar 24, 2022 at 6:37
  • I hope so, in my case my MacOS update is corporate governed I may need to wait for 12.3 upgrade to confirm if it works.
    – bprasanna
    Mar 24, 2022 at 8:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .