# Working with object name variables

**URL:** <https://discourse.nodered.org/t/working-with-object-name-variables/36464>\
**Category:** General\
**Created:** [24 November 2020 16:33 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464 "2020-11-24T16:33:59Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![StrongTown](https://avatars.discourse-cdn.com/v4/letter/s/4bbf92/32.png) [@StrongTown](https://discourse.nodered.org/u/StrongTown)\
**Post date:** [24 November 2020 16:33 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/1 "2020-11-24T16:33:59Z")

</div>

I have a pop up whereby I can choose one of many Sonoff (MQTT Tasmota) switches and via notification see that switches operating info such as RSSI, network, gui\_name, hw\_name, etc...

So if I choose "`1`" in my pop up, the switch info that is displayed via a notification node is for `context.flow.sw1_wifi` . If I choose "`2`" the switch is `context.flow.sw2_wifi` .

But so far I have to write a function node such as:

```auto
if (msg.payload === 1) 
{
RSSI = context.flow.sw1_wifi.RSSI;
network = context.flow.sw1_wifi.network;
   etc....
}
if(msg.payload === 2)
{
RSSI = context.flow.sw2_wifi.RSSI;
network = context.flow.sw2_wifi.network;
   etc....
}

```

Is there any way to make it work along these lines?

```auto
if (msg.payload === 1) object = context.flow.sw1_wifi;
if (msg.payload === 2) object = context.flow.sw2_wifi;
RSSI = object + . RSSI;
network = object + . network;
   etc....

```

TIA

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [24 November 2020 16:40 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/2 "2020-11-24T16:40:55Z")

</div>

If i understand correctly, something like,  
`RSSI = context.flow["sw"+msg.payload.toString()+"_wifi"].RSSI;`

---

<div class="post-metadata">

**Author:** ![StrongTown](https://avatars.discourse-cdn.com/v4/letter/s/4bbf92/32.png) [@StrongTown](https://discourse.nodered.org/u/StrongTown)\
**Post date:** [24 November 2020 16:42 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/3 "2020-11-24T16:42:34Z")

</div>

Neat. Let me try that.  
Thnx

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [24 November 2020 16:45 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/4 "2020-11-24T16:45:26Z")

</div>

I missed that you will need to set `msg.payload.toString()` as msg.payload is a number.

---

<div class="post-metadata">

**Author:** ![StrongTown](https://avatars.discourse-cdn.com/v4/letter/s/4bbf92/32.png) [@StrongTown](https://discourse.nodered.org/u/StrongTown)\
**Post date:** [24 November 2020 16:48 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/5 "2020-11-24T16:48:59Z")

</div>

Got it.  
Interestingly it works whether `msg.payload` is a string or a number from the popup.  
Thanks again `E1cid`

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [23 January 2021 16:49 UTC](https://discourse.nodered.org/t/working-with-object-name-variables/36464/6 "2021-01-23T16:49:01Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
