Remove default response parsing since not reliable
This commit is contained in:
parent
f9e0308618
commit
18f879e02a
@ -555,7 +555,6 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandOnOffNoEffects(quint8 ad
|
||||
stream << static_cast<quint8>(command);
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeCluserOnOff, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::InterfaceMessageType::MessageTypeDefaultResponse);
|
||||
request.setDescription("Send on/off cluster command");
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -593,7 +592,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToLevel(quint8 addre
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToLevelOnOff, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to level on/off %1").arg(level));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -612,7 +611,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToColourTemperature(
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToColorTemperature, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to colour temperature %1").arg(colourTemperature));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -631,7 +630,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToColor(quint8 addre
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToColor, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to colour %1, %2").arg(x).arg(y));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -650,7 +649,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToHueSaturation(quin
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToHueSaturation, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to hue %1 saturation %2").arg(hue).arg(saturation));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -669,7 +668,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToHue(quint8 address
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToHue, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to hue %1").arg(hue));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
@ -688,7 +687,7 @@ ZigbeeInterfaceReply *ZigbeeBridgeControllerNxp::commandMoveToSaturation(quint8
|
||||
stream << transitionTime;
|
||||
|
||||
ZigbeeInterfaceRequest request(ZigbeeInterfaceMessage(Zigbee::MessageTypeMoveToSaturation, data));
|
||||
request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
//request.setExpectedAdditionalMessageType(Zigbee::MessageTypeDefaultResponse);
|
||||
request.setDescription(QString("Move to saturation %1").arg(saturation));
|
||||
request.setTimoutIntervall(5000);
|
||||
|
||||
|
||||
@ -803,6 +803,7 @@ void ZigbeeNetworkNxp::processDefaultResponse(const ZigbeeInterfaceMessage &mess
|
||||
qCDebug(dcZigbeeNetwork()) << " Command:" << ZigbeeUtils::convertByteToHexString(commandId);
|
||||
qCDebug(dcZigbeeNetwork()) << " Command status:" << static_cast<Zigbee::ZigbeeStatus>(commandStatus);
|
||||
|
||||
// FIXME: check if this is related to a current reply
|
||||
}
|
||||
|
||||
void ZigbeeNetworkNxp::onMessageReceived(const ZigbeeInterfaceMessage &message)
|
||||
|
||||
@ -41,7 +41,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::readAttribute(ZigbeeCluster *cluster,
|
||||
qCDebug(dcZigbeeNode()) << "Read" << node() << cluster << attributes;
|
||||
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandReadAttributeRequest(0x02, node()->shortAddress(), 0x01,
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandReadAttributeRequest(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01,
|
||||
endpointId(), cluster, attributes,
|
||||
false, node()->manufacturerCode());
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
@ -72,7 +72,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::configureReporting(ZigbeeCluster *clu
|
||||
// FIXME: check the report configuration and the direction field according to specs
|
||||
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandConfigureReportingRequest(0x02, node()->shortAddress(), 0x01,
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandConfigureReportingRequest(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01,
|
||||
endpointId(), cluster, 0x00,
|
||||
false, node()->manufacturerCode(), reportConfigurations);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
@ -97,7 +97,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::identify(quint16 seconds)
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Identify" << node() << seconds << seconds;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandIdentify(0x02, node()->shortAddress(), 0x01, endpointId(), seconds);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandIdentify(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), seconds);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -185,7 +185,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendOnOffClusterCommand(ZigbeeCluster
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Send on/off cluster command" << node() << command;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandOnOffNoEffects(0x02, node()->shortAddress(), 0x01, endpointId(), command);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandOnOffNoEffects(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), command);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -206,7 +206,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::addGroup(quint8 destinationEndpoint,
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Add group request" << node() << destinationEndpoint << groupAddress;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandAddGroup(0x02, node()->shortAddress(), 0x01, endpointId(), groupAddress);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandAddGroup(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), groupAddress);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -228,7 +228,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendLevelCommand(ZigbeeCluster::Level
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Move to level request" << node() << command << level;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToLevel(0x02, node()->shortAddress(), 0x01, endpointId(), triggersOnOff, level, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToLevel(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), triggersOnOff, level, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -251,7 +251,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendMoveToColorTemperature(quint16 co
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Move to level request" << node() << colourTemperature << transitionTime;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToColourTemperature(0x02, node()->shortAddress(), 0x01, endpointId(), colourTemperature, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToColourTemperature(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), colourTemperature, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -278,7 +278,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendMoveToColor(double x, double y, q
|
||||
quint16 normalizedY = static_cast<quint16>(qRound(y * 65536));
|
||||
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToColor(0x02, node()->shortAddress(), 0x01, endpointId(), normalizedX, normalizedY, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToColor(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), normalizedX, normalizedY, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -301,7 +301,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendMoveToHueSaturation(quint8 hue, q
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Move to hue saturation request" << node() << hue << saturation << transitionTime;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToHueSaturation(0x02, node()->shortAddress(), 0x01, endpointId(), hue, saturation, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToHueSaturation(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), hue, saturation, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -324,7 +324,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendMoveToHue(quint8 hue, quint16 tra
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Move to hue request" << node() << hue << transitionTime;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToHue(0x02, node()->shortAddress(), 0x01, endpointId(), hue, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToHue(Zigbee::DestinationAddressModeShortAddress, node()->shortAddress(), 0x01, endpointId(), hue, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
@ -347,7 +347,7 @@ ZigbeeNetworkReply *ZigbeeNodeEndpointNxp::sendMoveToSaturation(quint8 saturatio
|
||||
{
|
||||
qCDebug(dcZigbeeNode()) << "Move to saturation request" << node() << saturation << transitionTime;
|
||||
ZigbeeNetworkReply *networkReply = createNetworkReply();
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToSaturation(0x02, node()->shortAddress(), 0x01, endpointId(), saturation, transitionTime);
|
||||
ZigbeeInterfaceReply *reply = m_controller->commandMoveToSaturation(Zigbee::DestinationAddressModeShortAddress , node()->shortAddress(), 0x01, endpointId(), saturation, transitionTime);
|
||||
connect(reply, &ZigbeeInterfaceReply::finished, this, [this, reply, networkReply](){
|
||||
reply->deleteLater();
|
||||
|
||||
|
||||
@ -535,6 +535,7 @@ public:
|
||||
|
||||
enum DestinationAddressMode {
|
||||
DestinationAddressModeGroup = 0x01,
|
||||
DestinationAddressModeShortAddress = 0x02,
|
||||
DestinationAddressModeUnicastIeee = 0x03
|
||||
};
|
||||
Q_ENUM(DestinationAddressMode)
|
||||
|
||||
Reference in New Issue
Block a user