Ferdi: WhatsApp doesn't work any more due to a request to update Google Chrome

Created on 27 Sep 2020  路  9Comments  路  Source: getferdi/ferdi

" are comments from us and won't be
visible in your bug report, so please don't put any text in them.
-->
Bug description:

I have installed the latest beta version of Ferdi.
Unfortunately, although all other services work fine, the WhatsApp refuses to launch
Instead it welcomes me with a screen wanting me to update to Chrome 49+

Attached a screenshot.

Steps to reproduce:

Launch the Whatsapp service.
Even tried to uninstall & install it again, same problem.

Expected behavior

To display Whatsapp, as it used to.

Screenshots

Screen Shot 2020-09-27 at 9 22 01 AM


Environment:

  • Operating System: macOS Catalina 10.15.5
  • Ferdi Version: 5.6.0-beta.2 (5.6.0-beta.2.2329)
  • Server: Using without an account

  • Debug information:

{"host":{"platform":"darwin","release":"19.5.0","screens":[{"id":459113841,"bounds":{"x":0,"y":0,"width":2560,"height":1440},"workArea":{"x":0,"y":23,"width":2560,"height":1417},"accelerometerSupport":"unknown","monochrome":false,"colorDepth":24,"colorSpace":"{primaries:BT709, transfer:IEC61966_2_1, matrix:RGB, range:FULL}","depthPerComponent":8,"size":{"width":2560,"height":1440},"workAreaSize":{"width":2560,"height":1417},"scaleFactor":2,"rotation":0,"internal":false,"touchSupport":"unknown"},{"id":188921274,"bounds":{"x":-1920,"y":360,"width":1920,"height":1080},"workArea":{"x":-1852,"y":383,"width":1852,"height":1057},"accelerometerSupport":"unknown","monochrome":false,"colorDepth":24,"colorSpace":"{primaries_d50_referred: [[0.6416, 0.3471], [0.3517, 0.5992], [0.1630, 0.0593]], transfer:BT709_APPLE, matrix:RGB, range:FULL}","depthPerComponent":8,"size":{"width":1920,"height":1080},"workAreaSize":{"width":1852,"height":1057},"scaleFactor":1,"rotation":0,"internal":false,"touchSupport":"unknown"},{"id":188921275,"bounds":{"x":2560,"y":72,"width":1920,"height":1080},"workArea":{"x":2560,"y":95,"width":1920,"height":1057},"accelerometerSupport":"unknown","monochrome":false,"colorDepth":24,"colorSpace":"{primaries_d50_referred: [[0.6416, 0.3471], [0.3517, 0.5992], [0.1630, 0.0593]], transfer:BT709_APPLE, matrix:RGB, range:FULL}","depthPerComponent":8,"size":{"width":1920,"height":1080},"workAreaSize":{"width":1920,"height":1057},"scaleFactor":1,"rotation":0,"internal":false,"touchSupport":"unknown"}]},"ferdi":{"version":"5.6.0-beta.2","electron":"8.2.3","installedRecipes":[{"id":"android-messages","version":"1.3.0"},{"id":"discord","version":"1.1.3"},{"id":"facebook","version":"1.0.1"},{"id":"franz-custom-website","version":"1.0.2"},{"id":"github","version":"2.0.0"},{"id":"gitter","version":"1.0.2"},{"id":"gmail","version":"1.3.1"},{"id":"hangouts","version":"1.0.4"},{"id":"linkedin","version":"1.0.0"},{"id":"messenger","version":"1.1.0"},{"id":"msteams","version":"1.3.2"},{"id":"rocketchat","version":"1.0.6"},{"id":"skype","version":"1.4.1"},{"id":"slack","version":"1.0.15"},{"id":"telegram","version":"3.0.0"},{"id":"trello","version":"1.0.2"},{"id":"whatsapp","version":"2.0.5"},{}],"devRecipes":[],"services":[{"id":"2f898561-c074-427c-b429-f3f3d7118460","recipe":"whatsapp","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":false,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"ce2c5fdf-dbe0-434d-987e-a96e9f63c721","recipe":"msteams","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"e8d7984d-23e0-4da8-86f6-0d0e7e5b9505","recipe":"telegram","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"0c5e2cbe-3aaa-4972-bc85-41bf19d3de95","recipe":"skype","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"58ba5a46-6dc5-466c-81d9-6a9efc500780","recipe":"trello","isAttached":false,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"7f45ed44-2900-4514-8827-87ee586ba18b","recipe":"messenger","isAttached":false,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"e6e5dda1-dde5-4f31-bac8-031de2ac635d","recipe":"linkedin","isAttached":false,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"b8515e8e-d875-48e1-85c4-db0897d37a50","recipe":"hangouts","isAttached":false,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"7e921921-a848-4dda-8c0c-53823ee3d245","recipe":"android-messages","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"d27d86a5-bd3c-4dff-9ae7-550d8cde8dad","recipe":"discord","isAttached":false,"isActive":false,"isEnabled":true,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"b4479ac7-64a9-4465-9a62-46659b3f3a9f","recipe":"gitter","isAttached":false,"isActive":false,"isEnabled":false,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"363f0430-ede4-4dcc-b7e9-8507188f49c2","recipe":"github","isAttached":false,"isActive":false,"isEnabled":false,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true},{"id":"ed21d967-bc6b-477c-ac73-2e547ef21a32","recipe":"slack","isAttached":false,"isActive":false,"isEnabled":false,"isHibernating":true,"hasCrashed":false,"isDarkModeEnabled":true}],"messages":[{"type":"error","info":["error","[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: 'Reaction[Autorun@160]'",{}]},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"getInfo"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"features"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"all"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"error","info":["error","Warning: You cannot PUSH the same path using hash history"]},{"type":"error","info":["error","Warning: Failed prop type: Invalid prop serviceStatus of type number supplied to _class2, expected mobx.ObservableArray or javascript array.\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _class2)\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _class2)\n in _class2 (created by inject-_class2-with-stores-actions)\n in inject-_class2-with-stores-actions (created by RouterContext)\n in div (created by _class2)\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _class2)\n in div (created by _class2)\n in CSSTransitionGroupChild (created by TransitionGroup)\n in span (created by TransitionGroup)\n in TransitionGroup (created by CSSTransitionGroup)\n in CSSTransitionGroup (created by Appear)\n in Appear (created by _class2)\n in _class2 (created by _temp)\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _temp)\n in _temp (created by inject-_temp-with-stores-actions)\n in inject-_temp-with-stores-actions (created by RouterContext)\n in div (created by _class2)\n in div (created by _class2)\n in div (created by _class2)\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _class2)\n in _class2 (created by Jss(_class2))\n in Jss(_class2) (created by _class2)\n in ThemeProvider (created by _class2)\n in _class2 (created by inject-_class2-with-stores-actions)\n in inject-_class2-with-stores-actions (created by RouterContext)\n in RouterContext (created by Router)\n in Router (created by _class)\n in _class (created by inject-_class-with-stores-actions)\n in inject-_class-with-stores-actions\n in IntlProvider (created by _class)\n in _class (created by inject-_class-with-stores)\n in inject-_class-with-stores\n in Provider"]},{"type":"error","info":["error","Warning: Cannot update during an existing state transition (such as within render). Render methods should be a pure function of props and state."]}],"workspaces":[],"windowSettings":{"width":1591,"height":983,"x":-1738,"y":401,"displayBounds":{"x":-1920,"y":360,"width":1920,"height":1080},"isMaximized":false,"isFullScreen":false},"settings":{"autoLaunchInBackground":false,"runInBackground":true,"reloadAfterResume":true,"enableSystemTray":false,"startMinimized":true,"minimizeToSystemTray":false,"privateNotifications":false,"showDisabledServices":true,"showMessageBadgeWhenMuted":true,"showDragArea":false,"enableSpellchecking":true,"spellcheckerLanguage":"en-us","darkMode":true,"locale":"en-US","fallbackLocale":"en-US","beta":false,"isAppMuted":false,"enableGPUAcceleration":true,"serviceLimit":5,"server":"You are using Ferdi without a server","predefinedTodoServer":"https://todo.microsoft.com/?app#","autohideMenuBar":false,"lockingFeatureEnabled":false,"locked":false,"lockedPassword":"**","useTouchIdToUnlock":true,"scheduledDNDEnabled":false,"scheduledDNDStart":"17:00","scheduledDNDEnd":"09:00","hibernate":true,"hibernateOnStartup":false,"hibernationStrategy":"300","inactivityLock":0,"automaticUpdates":true,"showServiceNavigationBar":false,"universalDarkMode":true,"adaptableDarkMode":true,"accentColor":"#7367f0","serviceRibbonWidth":68,"iconSize":20,"sentry":false,"navigationBarBehaviour":"never","customTodoServer":"","todoServer":"isUsingCustomTodoService"},"features":{"isSpellcheckerIncludedInCurrentPlan":true,"needToWaitToProceed":false,"needToWaitToProceedConfig":{"delayOffset":3600000,"wait":10000},"isServiceProxyEnabled":true,"isServiceProxyIncludedInCurrentPlan":true,"isAnnouncementsEnabled":true,"isWorkspaceIncludedInCurrentPlan":true,"isWorkspaceEnabled":true,"isCommunityRecipesIncludedInCurrentPlan":true,"isSpellcheckerPremiumFeature":false,"isServiceProxyPremiumFeature":true,"isWorkspacePremiumFeature":false,"isSettingsWSEnabled":false,"isServiceLimitEnabled":false,"serviceLimitCount":0,"isCommunityRecipesPremiumFeature":false,"isCustomUrlIncludedInCurrentPlan":true,"isMagicBarEnabled":true,"isTeamManagementIncludedInCurrentPlan":true,"isTodosEnabled":true,"isTodosIncludedInCurrentPlan":true,"defaultTrialPlan":"franz-pro-yearly","subscribeURL":"https://getferdi.com","planSelectionURL":"https://getferdi.com","hasInlineCheckout":true,"isPlanSelectionEnabled":false,"isTrialStatusBarEnabled":false,"canSkipTrial":true,"pricingConfig":{"currency":"$","currencyID":"USD","plans":{"personal":{"monthly":{"id":"ferdi-free","price":0,"billed":0},"yearly":{"id":"ferdi-completely-free","price":0,"billed":0}},"pro":{"monthly":{"id":"ferdi-still-free","price":0,"billed":0},"yearly":{"id":"ferdi-forever-free","price":0,"billed":0}}}}},"user":"82c1cf9d-ab58-4da2-b55e-aaa41d2142d8"}}

bug

Most helpful comment

Issue-Label Bot is automatically applying the label bug to this issue, with a confidence of 0.79. Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

All 9 comments

Issue-Label Bot is automatically applying the label bug to this issue, with a confidence of 0.79. Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

The google problem, with updating and or insecure browser, is not in version 5.5.0 but only in 5.6.0, i managed to make gmail and other services that require google to make on 5.5.0, and then i updated to 5.6.0, after some changing in config files, that they not collidate it works.
Also i dont connect to server, maybe this is important too

@teras Can you share your whatsapp recipe's index.js file?

@mahadevans87

Sure.
I haven't installed anything, just Ferdi from here.
Where can I find this file?

@teras - Since I am not sure on what OS you are using Ferdi, the easiest way is to click on Settings -> Your Services -> Gmail -> Scroll Down and click on 'Open User.css'. This will open the file explorer into the Gmail recipe directory. There you will find an index.js. Can you paste the contents of the file here?

image

I wrote my system version in the first post, if you need more clarification, please tell me so!

Here's its content:

"use strict";

module.exports = (Franz) =>
  class Messenger extends Franz {
    modifyRequestHeaders() {
      return [
        {
          headers: {
            'user-agent': window.navigator.userAgent.replace(/(Ferdi|Electron)\/\S+ \([^)]+\)/g,"").trim(),
          },
          requestFilters: {
            urls: ['*://*/*'],
          }
        }
      ]
    }
  };

This works

'user-agent': window.navigator.userAgent.replace(/(Ferdi|Electron)\/\S+/g,"").trim()

this PR https://github.com/getferdi/ferdi/pull/779 breaks whatsapp recipe

fixed in PR https://github.com/getferdi/recipes/pull/292

This works

Indeed this works. I can confirm that.

Also, I have similar problems with MS Teams.
The login procedure is fine, and when I'm logged in, I can only see a white page.
Does it have the same problem?

The index.js is here:

```javascript
"use strict";

module.exports = Franz => class MicrosoftTeams extends Franz {
overrideUserAgent() {
return window.navigator.userAgent.replace(/(Ferdi|Electron)\/\S+ ([^)]+)/g, '');
}
};
```

EDIT follow up for the Teams problem, if the login page stays long enough I get the following view:

Screen Shot 2020-09-29 at 1 58 15 AM

Can confirm. It worked for me. I'll test with teams too next week!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pktiuk picture pktiuk  路  3Comments

YourWishes picture YourWishes  路  3Comments

Jendker picture Jendker  路  3Comments

probablykasper picture probablykasper  路  4Comments

maciesse picture maciesse  路  3Comments