message: fix: update valueIds on metadata updated
diff: @@ -431,8 +431,8 @@ function onNodeValueRemoved (zwaveNode, args) {
  }
  function onNodeMetadataUpdated (zwaveNode, args) {
  - updateValueMetadata.call(this, zwaveNode, args, args.metadata)
  - debug(`Node ${zwaveNode.id}: metadata updated: ${getValueID(args)}`)
  + const valueId = initValue.call(this, zwaveNode, args, args.metadata)
  + debug(`Node ${valueId.nodeId}: metadata updated: ${getValueID(args)}`)
  this.emit(
  'event',
  eventEmitter.node,
  @@ -711,6 +711,17 @@ function addValue (zwaveNode, zwaveValue) {
  } else {
  const zwaveValueMeta = zwaveNode.getValueMetadata(zwaveValue)
  + const valueId = initValue.call(this, zwaveNode, zwaveValue, zwaveValueMeta)
  +
  + debug(`Node ${zwaveNode.id}: value added ${valueId.id} => ${valueId.value}`)
  +
  + this.emit('valueChanged', valueId, node)
  + }
  +}
  +
  +function initValue (zwaveNode, zwaveValue, zwaveValueMeta) {
  + const node = this.nodes[zwaveNode.id]
  +
  const valueId = updateValueMetadata.call(
  this,
  zwaveNode,
  @@ -730,12 +741,9 @@ function addValue (zwaveNode, zwaveValue) {
  }
  }
  - debug(`Node ${zwaveNode.id}: value added ${valueId.id} => ${valueId.value}`)
  -
  node.values[getValueID(valueId)] = valueId
  - this.emit('valueChanged', valueId, node)
  - }
  + return valueId
  }
  // Triggered when a node is ready and a value changes
  