(&self)
| 585 | } |
| 586 | |
| 587 | async fn save_downlink_frame_relayed(&self) -> Result<()> { |
| 588 | trace!("Saving ForwardDownlinkReq frame"); |
| 589 | |
| 590 | let relay_ctx = self.relay_context.as_ref().unwrap(); |
| 591 | let relay_ds = relay_ctx.device.get_device_session()?; |
| 592 | |
| 593 | let df = chirpstack_api::internal::DownlinkFrame { |
| 594 | dev_eui: relay_ctx.device.dev_eui.to_be_bytes().to_vec(), |
| 595 | downlink_id: self.downlink_frame.downlink_id, |
| 596 | downlink_frame: Some(self.downlink_frame.clone()), |
| 597 | nwk_s_enc_key: relay_ds.nwk_s_enc_key.clone(), |
| 598 | a_f_cnt_down: relay_ds.get_a_f_cnt_down(), |
| 599 | n_f_cnt_down: relay_ds.n_f_cnt_down, |
| 600 | ..Default::default() |
| 601 | }; |
| 602 | |
| 603 | downlink_frame::save(&df).await?; |
| 604 | Ok(()) |
| 605 | } |
| 606 | |
| 607 | fn _prefer_rx2_dr(&self) -> Result<bool> { |
| 608 | let ds = self.device.get_device_session()?; |
no test coverage detected