MCPcopy Create free account
hub / github.com/chirpstack/chirpstack / save_downlink_frame_relayed

Method save_downlink_frame_relayed

chirpstack/src/downlink/join.rs:587–605  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

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()?;

Callers 1

_handle_relayedMethod · 0.45

Calls 7

unwrapMethod · 0.80
as_refMethod · 0.80
get_device_sessionMethod · 0.80
get_a_f_cnt_downMethod · 0.80
saveFunction · 0.50
to_vecMethod · 0.45
to_be_bytesMethod · 0.45

Tested by

no test coverage detected