From 2a287fa6cf45b5982dd7e64658260fa9d916360b Mon Sep 17 00:00:00 2001 From: fancar <33594115+fancar@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:36:07 +0300 Subject: [PATCH] downlink tasks order changed: first save frame, then send it. No avoid recieving ack for the frames that not saved yet' (#584) --- internal/downlink/ack/ack.go | 2 +- internal/downlink/data/data.go | 6 +++--- internal/downlink/multicast/multicast.go | 2 +- internal/downlink/proprietary/proprietary.go | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/internal/downlink/ack/ack.go b/internal/downlink/ack/ack.go index 71b701b27..0451d3bfc 100644 --- a/internal/downlink/ack/ack.go +++ b/internal/downlink/ack/ack.go @@ -50,8 +50,8 @@ var handleDownlinkTXAckTasks = []func(*ackContext) error{ ), // Backwards compatibility. - sendDownlinkFrame, saveDownlinkFrames, + sendDownlinkFrame, ), onNoError( // Start a transaction so that we can lock the device record. Without diff --git a/internal/downlink/data/data.go b/internal/downlink/data/data.go index 6c91ae3b8..90fc4d436 100644 --- a/internal/downlink/data/data.go +++ b/internal/downlink/data/data.go @@ -124,14 +124,14 @@ var responseTasks = []func(*dataContext) error{ setMACCommandsSet, stopOnNothingToSend, setPHYPayloads, + saveDownlinkFrame, + saveDeviceSession, isRoaming(false, sendDownlinkFrame, ), isRoaming(true, sendDownlinkFramePassiveRoaming, ), - saveDeviceSession, - saveDownlinkFrame, isRoaming(true, handleRoamingTxAck, ), @@ -160,9 +160,9 @@ var scheduleNextQueueItemTasks = []func(*dataContext) error{ getNextDeviceQueueItem, stopOnNothingToSend, setPHYPayloads, - sendDownlinkFrame, saveDeviceSession, saveDownlinkFrame, + sendDownlinkFrame, setDeviceQueueItemRetryAfter, } diff --git a/internal/downlink/multicast/multicast.go b/internal/downlink/multicast/multicast.go index 5ee9fc3c9..8a3037b61 100644 --- a/internal/downlink/multicast/multicast.go +++ b/internal/downlink/multicast/multicast.go @@ -40,8 +40,8 @@ var multicastTasks = []func(*multicastContext) error{ validatePayloadSize, setTXInfo, setPHYPayload, - sendDownlinkData, saveDownlinkFrame, + sendDownlinkData, } var ( diff --git a/internal/downlink/proprietary/proprietary.go b/internal/downlink/proprietary/proprietary.go index e2dca20ae..8b132f799 100644 --- a/internal/downlink/proprietary/proprietary.go +++ b/internal/downlink/proprietary/proprietary.go @@ -20,8 +20,8 @@ import ( const defaultCodeRate = "4/5" var tasks = []func(*proprietaryContext) error{ - sendProprietaryDown, saveDownlinkFrames, + sendProprietaryDown, } type proprietaryContext struct {