Set an attribute of multiple nodes datavalue is a ua.DataValue object
(self, nodeids, datavalues, attributeid=ua.AttributeIds.Value)
| 659 | return response.Results |
| 660 | |
| 661 | def set_attributes(self, nodeids, datavalues, attributeid=ua.AttributeIds.Value): |
| 662 | """ |
| 663 | Set an attribute of multiple nodes |
| 664 | datavalue is a ua.DataValue object |
| 665 | """ |
| 666 | self.logger.info("set_attributes of several nodes") |
| 667 | request = ua.WriteRequest() |
| 668 | for idx, nodeid in enumerate(nodeids): |
| 669 | attr = ua.WriteValue() |
| 670 | attr.NodeId = nodeid |
| 671 | attr.AttributeId = attributeid |
| 672 | attr.Value = datavalues[idx] |
| 673 | request.Parameters.NodesToWrite.append(attr) |
| 674 | data = self._uasocket.send_request(request) |
| 675 | response = struct_from_binary(ua.WriteResponse, data) |
| 676 | response.ResponseHeader.ServiceResult.check() |
| 677 | return response.Results |
| 678 |
no test coverage detected