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

Method status_event

chirpstack/src/integration/thingsboard.rs:192–220  ·  view source on GitHub ↗
(
        &self,
        vars: &HashMap<String, String>,
        pl: &integration::StatusEvent,
    )

Source from the content-addressed store, hash-verified

190 }
191
192 async fn status_event(
193 &self,
194 vars: &HashMap<String, String>,
195 pl: &integration::StatusEvent,
196 ) -> Result<()> {
197 let di = pl.device_info.as_ref().unwrap();
198 let mut telemetry: BTreeMap<String, Value> = BTreeMap::new();
199 telemetry.insert(
200 "status_margin".to_string(),
201 Value::Integer(pl.margin.into()),
202 );
203 telemetry.insert(
204 "status_external_power_source".to_string(),
205 Value::Bool(pl.external_power_source),
206 );
207 telemetry.insert(
208 "status_battery_level".to_string(),
209 Value::Float(pl.battery_level.into()),
210 );
211 telemetry.insert(
212 "status_battery_level_unavailable".to_string(),
213 Value::Bool(pl.battery_level_unavailable),
214 );
215
216 let telemetry = Payload(telemetry);
217
218 info!(dev_eui = %di.dev_eui, server = %self.server, "Sending device telemetry");
219 self.send_telemetry(vars, &telemetry).await
220 }
221
222 async fn location_event(
223 &self,

Callers 1

test_thingsboardFunction · 0.45

Calls 7

unwrapMethod · 0.80
as_refMethod · 0.80
insertMethod · 0.80
to_stringMethod · 0.80
send_telemetryMethod · 0.80
PayloadClass · 0.70
intoMethod · 0.45

Tested by 1

test_thingsboardFunction · 0.36