()
| 117 | } |
| 118 | |
| 119 | pub async fn get_uplink_event() -> Option<integration::UplinkEvent> { |
| 120 | if UPLINK_EVENTS.read().await.is_empty() { |
| 121 | return None; |
| 122 | } |
| 123 | |
| 124 | UPLINK_EVENTS |
| 125 | .write() |
| 126 | .await |
| 127 | .drain(0..1) |
| 128 | .collect::<Vec<integration::UplinkEvent>>() |
| 129 | .first() |
| 130 | .cloned() |
| 131 | } |
| 132 | |
| 133 | pub async fn get_ack_event() -> Option<integration::AckEvent> { |
| 134 | if ACK_EVENTS.read().await.is_empty() { |