You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
5.4 KiB
67 lines
5.4 KiB
# మీ నైట్లైట్ను ఇంటర్నెట్ ద్వారా నియంత్రించండి - వర్చువల్ IoT హార్డ్వేర్ మరియు రెస్ప్బెర్రీ పై
|
|
|
|
ఈ పాఠంలో, మీరు మీ రెస్ప్బెర్రీ పై లేదా వర్చువల్ IoT పరికరం నుండి లైట్ స్థాయిల telemetryని MQTT బ్రోకర్కు పంపిస్తారు.
|
|
|
|
## మీట్రిక్స్ ప్రచురించండి
|
|
|
|
తరువాతి దశలో, మీట్రిక్స్తో JSON డాక్యుమెంట్ సృష్టించి దాన్ని MQTT బ్రోకర్కు పంపించాలి.
|
|
|
|
### పని
|
|
|
|
మీట్రిక్స్ను MQTT బ్రోకర్కు ప్రచురించండి.
|
|
|
|
1. VS కోడ్లో నైట్లైట్ ప్రాజెక్ట్ను తెరవండి.
|
|
|
|
1. మీరు వర్చువల్ IoT పరికరం ఉపయోగిస్తున్నట్లయితే, టెర్మినల్ వర్చువల్ వాతావరణాన్ని నడుపుతున్నదని నిర్ధారించండి. మీరు రెస్ప్బెర్రీ పై ఉపయోగిస్తున్నట్లయితే, వర్చువల్ వాతావరణాన్ని ఉపయోగించరు.
|
|
|
|
1. `app.py` ఫైల్ టాప్లో క్రింది దిగుమతిని జోడించండి:
|
|
|
|
```python
|
|
import json
|
|
```
|
|
|
|
`json` లైబ్రరీ మీట్రిక్స్ని JSON డాక్యుమెంట్గా ఎంకోడ్ చేయడానికి ఉపయోగిస్తారు.
|
|
|
|
1. `client_name` ঘোষణ తర్వాత క్రిందివి జోడించండి:
|
|
|
|
```python
|
|
client_telemetry_topic = id + '/telemetry'
|
|
```
|
|
|
|
`client_telemetry_topic` అనేది పరికరం లైట్ స్థాయిలను ప్రచురించే MQTT టాపిక్.
|
|
|
|
1. ఫైల్ చివరలోని `while True:` లూప్ ఉన్నాయి వాటిని క్రిందివి ద్వారా మార్చండి:
|
|
|
|
```python
|
|
while True:
|
|
light = light_sensor.light
|
|
telemetry = json.dumps({'light' : light})
|
|
|
|
print("Sending telemetry ", telemetry)
|
|
|
|
mqtt_client.publish(client_telemetry_topic, telemetry)
|
|
|
|
time.sleep(5)
|
|
```
|
|
|
|
ఈ కోడ్ లైట్ స్థాయిని JSON డాక్యుమెంట్గా ప్యాకేజ్ చేసి MQTT బ్రోకర్కు ప్రచురిస్తుంది. తరువాత సందేశాలు పంపించే పలుసార్లు తగ్గించడానికి నిద్రపోతుంది.
|
|
|
|
1. మీరు ముందుగా నడిపిన విధంగా కోడ్ నడపండి. మీరు వర్చువల్ IoT పరికరం ఉపయోగిస్తుంటే, CounterFit యాప్ నడుస్తోంది మరియు లైట్ సెన్సార్, LED సరైన పిన్లపై సృష్టించబడ్డాయని నిర్ధారించండి.
|
|
|
|
```output
|
|
(.venv) ➜ nightlight python app.py
|
|
MQTT connected!
|
|
Sending telemetry {"light": 0}
|
|
Sending telemetry {"light": 0}
|
|
```
|
|
|
|
> 💁 మీరు ఈ కోడ్ను [code-telemetry/virtual-device](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/virtual-device) ఫోల్డర్ లేదా [code-telemetry/pi](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/pi) ఫోల్డర్లో కనుగొనవచ్చు.
|
|
|
|
😀 మీరు విజయవంతంగా మీ పరికరం నుండి మీట్రిక్స్ పంపించారు.
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**విమర్శన**:
|
|
ఈ డాక్యుమెంట్ను AI అనువాద సేవ [Co-op Translator](https://github.com/Azure/co-op-translator) ఉపయోగించి అనువదించాం. మేము ఖచ్చితత్వానికి ప్రయత్నించినా, ఆటోమేటెడ్ అనువాదాల్లో పొరపాట్లు లేదా తప్పిదాలు ఉండవచ్చు. స్థానిక భాషలో ఉన్న అసలు డాక్యుమెంట్ను అధికారిక మూలంగా పరిగణించాలి. కీలక సమాచారం కోసం, ప్రొఫెషనల్ మానవ అనువాదాన్ని సూచించబడుతుంది. ఈ అనువాదం వాడకం వల్ల జరిగే ఏవైనా తప్పుదోవలు లేదా తప్పుగా అర్థం చేసుకోవడంపై మేము బాధ్యత వహించము.
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |