Commit message

This commit is contained in:
sdt.tutorial 2024-04-23 11:31:54 +09:00
parent 9360eb0865
commit 08873ffdc4
5 changed files with 75 additions and 2 deletions

View File

@ -1,3 +1,30 @@
# tutorial-app2
# 이 코드 템플릿은 SDT Cloud 환경에서 mqtt 메세지를 발행하는 코드입니다.
Your repository description
# 패키지 설치
- 코드는 sdtcloudpubsub 패키지를 사용합니다. 아래 명령어로 패키지를 다운로드 해야합니다.
```bash
$ pip install sdtcloudpubsub
```
# 코드 작성
- 코드는 runAction 함수에서 동작하고자 하는 기능을 작성합니다.
- msg 변수는 발행될 메세지 입니다.
- sdtcloudpubsub의 pubMessage 함수는 발행할 메세지 내용인 dictionary 타입 변수를 입력 받아 처리합니다.
# 메세지 발행
- 다음 변수로 메세지를 발행하는 코드를 작성하면...
```bash
msg = {
"message": "Hello World"
}
```
- 실제로 발행되는 메세지은 다음과 같습니다.
```bash
msg = {
"data": {
"message": "Hello World"
},
"timestamp": 12312311...
}
```

4
config.json Normal file
View File

@ -0,0 +1,4 @@
{
"KEY1": "VALUE1",
"KEY2": "VALUE2"
}

11
framework.yaml Normal file
View File

@ -0,0 +1,11 @@
version: bwc/v2 # bwc 버전 정보입니다.
spec:
appName: tutorial-app2 # 앱의 이름입니다.
runFile: main.py # 앱의 실행 파일입니다.
env:
virtualEnv: mqtt-env2 # 사용할 가상환경 이름입니다.
package: requirements.txt # 설치할 Python 패키지 정보 파일입니다.(기본 값은 requirement.txt 입니다.)
runtime: python3.9
stackbase:
tagName: v1.0.0 # Stackbase(gitea)에 릴리즈 태그명 입니다.
repoName: tutorial-app2 # Stackbase(gitea)에 저장될 저장소 이릅니다.

27
main.py Normal file
View File

@ -0,0 +1,27 @@
import sdtcloudpubsub
import time
import uuid
import random
sdtcloud = sdtcloudpubsub.sdtcloudpubsub()
mqttClient = sdtcloud.setClient(f"device-app-{uuid.uuid1()}") # parameter is client ID(string)
def runAction():
while True:
msg = [{
"room_id": "room1",
"sensor": "power",
"value": random.randint(100, 1000)
},
{
"room_id": "room2",
"sensor": "power",
"value": random.randint(100, 1000)
}]
sdtcloud.pubMessage(mqttClient, msg)
time.sleep(2)
if __name__ == "__main__":
runAction()

4
requirements.txt Normal file
View File

@ -0,0 +1,4 @@
# Write package's name that need your app.
awsiotsdk
pyyaml
#sdtcloudpubsub