Since 1.4.0 little bug with cache i think
### Analysis

Since 1.4.0 when i switch a light or outlet in on mode or off mode



### Expected Behavior

Mqtthing object 

I change state and immediatly come back in original state but in reality command is ok, i close home and i restart and the state is the good state 

In 1.3.9 all is ok 
it's Mqtthing object 

https://user-images.githubusercontent.com/24509422/150740382-45fbed67-7ee3-4479-b11b-2033df09f2aa.MP4




### Steps To Reproduce

Just change state 
the second change is ok statut 

### Logs

```markdown
[24/01/2022, 08:38:02] [Escalier] Publishing MQTT: zigbee2mqtt/boutonentree2/right/set = ON
[24/01/2022, 08:38:04] [Escalier] Received MQTT: zigbee2mqtt/boutonentree2 = {"action":null,"last_seen":"2022-01-24T07:38:04.730Z","linkquality":61,"operation_mode_left":null,"operation_mode_right":null,"state_left":"OFF","state_right":"OFF"}
[24/01/2022, 08:38:04] [Escalier] apply() function decoded message to [OFF]
[24/01/2022, 08:38:04] [Escalier] Received MQTT: zigbee2mqtt/boutonentree2 = {"action":null,"last_seen":"2022-01-24T07:38:04.730Z","linkquality":61,"operation_mode_left":null,"operation_mode_right":null,"state_left":"OFF","state_right":"ON"}
[24/01/2022, 08:38:04] [Escalier] apply() function decoded message to [ON]
[24/01/2022, 08:38:04] [Escalier] Received MQTT: zigbee2mqtt/boutonentree2 = {"action":null,"last_seen":"2022-01-24T07:38:04.861Z","linkquality":61,"operation_mode_left":null,"operation_mode_right":null,"state_left":"OFF","state_right":"ON"}
[24/01/2022, 08:38:04] [Escalier] apply() function decoded message to [ON]
```


### Configuration

```json
{
            "accessory": "mqttthing",
            "type": "lightbulb",
            "name": "Escalier",
            "topics": {
                "getOn": {
                    "topic": "zigbee2mqtt/boutonentree2",
                    "apply": "return JSON.parse(message).state_right"
                },
                "setOn": "zigbee2mqtt/boutonentree2/right/set",
                "getOnline": {
                    "topic": "zigbee2mqtt/boutonentree2/availability",
                    "apply": "return message == 'online' ? 'ON' : 'OFF';"
                }
            },
            "logMqtt": false,
            "integerValue": false,
            "onValue": "ON",
            "offValue": "OFF",
            "turnOffAfterms": "120000",
            "onlineValue": "ON",
            "offlineValue": "OFF"
        },
```


### Environment

- OS: RPY last 
- Software: 1.4.0
- Node:16.13.1
- npm:8.1.2


### Process Supervisor

hb-service

### Additional Context

_No response_