Android/MQTT(4)
-
MQTT Option(Retain,CleanSession,LWT)
Retain Retain 기능은 마지막으로 Publish된 메시지를 MQTT 서버가 보관 해 두었다가 새로운 Subscriber에 메시지를 전달하는 기능이다. MQTT는 Publish/Subscribe 타입 모델이다. 따라서, Publish된 때 Subscribe한 클라이언트에만 메시지가 전송된다. 따라서 예를 들면 1 시간 마다 업데이트 되는 정보를 얻는 Subscribe로 해도 최대 1 시간은 아무것도 정보를 얻을 수 없는 것이다. 그러나 이 경우에도 Retain 기능을 사용하면 최신 정보를 얻을 수 있다. 메세지 보내기(Retain On) mosquitto_pub -h 192.168.0.241 -t /test -m "subscribe ok!!" -r 구독 하기 mosquitto_sub -h 192...
2021.10.22 -
MQTT Option(Qos)
QoS "최대 한 번", "최소 한 번" 및 "정확히 한 번" 보내는 기능 Level 0 (At most once) 메시지는 한번만 전달된다. Fire and Forget이라고도 한다. 즉 보내고 잊는다. 한번만 전달하지만 전달여부는 확인하지 않는 레벨이다. Level 1 (At least once) 메시지는 최소 한번은 전달된다. 유일하게 핸드셰이킹 같은 연결 여부를 확인하지 않고 메시지를 전달하는 레벨이다. 위에 그림을 보면 메시지를 성공적으로 전달하면 Broker가 Publisher에게 PUBACK을 보내어 전달 성공을 알리지만 만약 정상적 통신이 이루어지지 않을 경우 Loss가 발생하여 PUBACK을 받지 못못하여 Publisher는 적정 시간이 지나 실패로 알고 다시 메시지를 보내어 Subscr..
2021.10.22 -
Mosquitto 설치 및 테스트
Step 1. Mosquitto 다운로드 https://mosquitto.org/download/ Download Mosquitto Enhancements These projects can be used to add extra features to Mosquitto. Management Center: A web UI for managing Mosquitto instances. In particular, this offers a convenient UI for managing clients, groups and roles as in the new Dynamic Secu mosquitto.org Step 2. Mosquitto 서비스 실행 상태 확인 Step 3. Mosquitto Subscriber & P..
2021.10.13 -
MQTT 사용하기
Step 1. MQTT 라이브러리 Dependency implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5' implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.1.1' Step 2. Android 권한 설정 및 MQTT 서비스 등록
2021.10.13