Change Icon dinamic

Hi. I am trying to change the icon according to the value of an item.
If I show the item in the sitemap it appears for example a 3 but it does not show anything.
As if the values ​​were not numerical.
Do you have any ideas?
Thank you very much.

Number FanWifiLevel "Fan Wifi Level: RSSI [%d %%]" {mqtt="<[broker:tele/acuario/principal/temperatura/STATE:state:JSONPATH($.Wifi.RSSI)]"}
Number FanWifiicon "Fan Icono [SCALE(wifilevel.scale):%s]" {mqtt="<[broker:tele/acuario/principal/temperatura/STATE:state:JSONPATH($.Wifi.RSSI)]"}
sitemap home label="My Home" {
    Frame label="Prueba {
        Default item=FanWifiicon 
        Text item=FanWifiLevel label="Wifi %d" icon="qualityofservice_0" visibility=[FanWifiicon==0]
        Text item=FanWifiLevel label="Wifi %d" icon="qualityofservice_1" visibility=[FanWifiicon==1]
        Text item=FanWifiLevel label="Wifi %d" icon="qualityofservice_2" visibility=[FanWifiicon==2]
        Text item=FanWifiLevel label="Wifi %d" icon="qualityofservice_3" visibility=[FanWifiicon==3]
        Text item=FanWifiLevel label="Wifi %d" icon="qualityofservice_4" visibility=[FanWifiicon==4]
    }
}

wifilevel,scale

[0..1]=0
[2..25]=1
[26..50]=2
[51..75]=3
[76..100]=4

For the one that serves him, I could solve it.
I made a major mistake in the item

Number FanWifiicon “Fan Icono [SCALE(wifilevel.scale):%s]” {mqtt="<[broker:tele/acuario/principal/temperatura/STATE:state:JSONPATH($.Wifi.RSSI)]"}

I assumed that the value of the item was between 0 and 4 since that was what it showed. But in reality it had the value that the mqtt delivered

Resolved:

Number FanWifiLevel "Fan Wifi Level: RSSI [%d %%]" {mqtt="<[broker:tele/acuario/principal/temperatura/STATE:state:JSONPATH($.Wifi.RSSI)]"}
Number FanWifiicon "Fan Icono [%d]" 
sitemap home label="My Home" {
   Frame label="Prueba" {
        Text item=FanWifiLevel label="Wifi" icon="qualityofservice_0" visibility=[FanWifiicon==0]
        Text item=FanWifiLevel label="Wifi" icon="qualityofservice_1" visibility=[FanWifiicon==1]
        Text item=FanWifiLevel label="Wifi" icon="qualityofservice_2" visibility=[FanWifiicon==2]
        Text item=FanWifiLevel label="Wifi" icon="qualityofservice_3" visibility=[FanWifiicon==3]
        Text item=FanWifiLevel label="Wifi" icon="qualityofservice_4" visibility=[FanWifiicon==4]
    }
}
rule "Cambio de Nivel Wifi" 
when	 
	Item FanWifiLevel changed
then
	if(FanWifiLevel.state < 1) 
		sendCommand(FanWifiicon, 0)
	else if(FanWifiLevel.state <= 25) 
		sendCommand(FanWifiicon, 1)
	else if(FanWifiLevel.state <= 50) 
		sendCommand(FanWifiicon, 2)
	else if(FanWifiLevel.state <= 75) 
		sendCommand(FanWifiicon, 3)
	else if(FanWifiLevel.state <= 100) 
		sendCommand(FanWifiicon, 4)
end

Thanks

1 Like