diff --git a/src-lib/libopenzwave/libopenzwave.pyx b/src-lib/libopenzwave/libopenzwave.pyx index 2753a7d5..487646d7 100644 --- a/src-lib/libopenzwave/libopenzwave.pyx +++ b/src-lib/libopenzwave/libopenzwave.pyx @@ -4950,3 +4950,25 @@ sceneGetValues_ ''' return self.manager.ActivateScene(sceneid) + + def sendRawData(self, homeId, nodeId, logText, msgType, sendSecure, content): + ''' +.. _sendRawData: + +Send a custom message to a node. + +:param homeId: The ID of the network. +:type homeId: int +:param nodeId: The ID of the target node. +:type nodeId: int +:param logText: The text to prefix the resulting log message. +:type logText: str +:param msgType: The type of the message. +:type msgType: int +:param sendSecure: Indicates whether the packet should be encrypted (if the CC accepts it). +:type sendSecure: bool +:param content: The message content. +:type content: bytes + ''' + return self.manager.SendRawData(homeId, nodeId, logText, msgType, sendSecure, content, len(content)) + diff --git a/src-lib/libopenzwave/manager.pxd b/src-lib/libopenzwave/manager.pxd index 93f7203f..7634fe0a 100644 --- a/src-lib/libopenzwave/manager.pxd +++ b/src-lib/libopenzwave/manager.pxd @@ -246,6 +246,7 @@ cdef extern from "Manager.h" namespace "OpenZWave": void SetSceneLabel( uint8_t sceneId, string value ) bool SceneExists( uint8_t sceneId ) bool ActivateScene( uint8_t sceneId ) + void SendRawData( uint32_t _homeId, uint8_t _nodeId, string _logText, uint8_t _msgType, bool _sendSecure, uint8_t* _content, uint8_t _length ) cdef extern from "Manager.h" namespace "OpenZWave::Manager": Manager* Create()