async updateCheckResponse(response) {
        let notifications = [];
        let notificationGroups = (this.config.notificationGroups || []).concat(['all']);

        debug('Notification Groups', notificationGroups);
        debug('Response Update Check Service', response);

        await this.api.settings.edit({
            settings: [{
                key: 'next_update_check',
                value: response.next_check
            }]
        }, internal);

        /**
         * @NOTE:
         *
         * When we refactored notifications in Ghost 1.20, the service did not support returning multiple messages.
         * But we wanted to already add the support for future functionality.
         * That's why this helper supports two ways: returning an array of messages or returning an object with
         * a "notifications" key. The second one is probably the best, because we need to support "next_check"
         * on the root level of the response.
         */
        if (_.isArray(response)) {
            notifications = response;
        } else if ((Object.prototype.hasOwnProperty.call(response, 'notifications') && _.isArray(response.notifications))) {
            notifications = response.notifications;
        } else {
            // CASE: default right now
            notifications = [response];
        }

        // CASE: Hook into received notifications and decide whether you are allowed to receive custom group messages.
        if (notificationGroups.length) {
            notifications = notifications.filter(function (notification) {
                // CASE: release notification, keep
                if (!notification.custom) {
                    return true;
                }

                // CASE: filter out messages based on your groups
                return _.includes(notificationGroups.map(function (groupIdentifier) {
                    if (notification && notification.version && notification.version.match(new RegExp(groupIdentifier))) {
                        return true;
                    }

                    return false;
                }), true) === true;
            });
        }

        for (const notification of notifications) {
            await this.createCustomNotification(notification);
        }
    }
@description This function handles the response from the update check service.

The helper does three things:

1. Updates the time in the settings table to know when we can execute the next update check request.
2. Iterates over the received notifications and filters them out based on your notification groups.
3. Calls a custom helper to generate a Ghost notification for the database.

The structure of the response is:

{
 id: 20,
 version: 'all4',
 messages:
    [{
         id: 'f8ff6c80-aa61-11e7-a126-6119te37e2b8',
         version: '^2',
         content: 'Hallouuuu custom',
         top: true,
         dismissible: true,
         type: 'info'
     }],
 created_at: '2021-10-06T07:00:00.000Z',
 custom: 1,
 next_check: 1555608722
}


Example for grouped custom notifications in config:

 "notificationGroups": ["migration", "something"]

The group 'all' is a reserved name for general custom notifications, which every self hosted blog can receive.

@param {Object} response
@return {Promise}