• Inicio


@ Josep Gil

우리의 짧은 스니펫에서 우리는 “pahodemo / 테스트”에 게시했습니다. 마지막으로 브로커에서 연결을 끊고 MQTT 세션을 완료했습니다. 그러나 메시지를 게시할 수 있는 곳은 어디입니까? 우리의 새로운 예제 스크립트는 아래에 표시 되어 있습니다., 그리고 내가 무슨 일이 일어나고 있는지 추적 하기 위해 몇 가지 인쇄 문을 삽입 했습니다. 다음 예제에서는 지정된 토픽에서 메시지를 수신하기 위해 기존 IMqttClient 인스턴스에 메시지 리스터를 추가하는 방법을 보여 주었습니다. CountDownLatch를 콜백과 주 실행 스레드 간의 동기화 메커니즘으로 사용하여 새 메시지가 도착할 때마다 감소합니다. 기사 주셔서 감사합니다! Btw 나는 작은 질문이 : 내가 지금 볼 수 있듯이, 콜백은 메소드 시그니처가 paho lib에 의해 요구되는 것과 동일한 경우에만 작동하므로 이것은 나를 위해 작동하지 않습니다 : …… defon_message(메시지): print(“메시지 수신”, str(message.payload.decode(“utf-8″)) 인쇄(“메시지 주제=”, message.topic) 인쇄(“메시지 qos=”, message.qos) 인쇄(“메시지 유지 플래그=”, message.retain) 정원 조명 및 내부 조명이 있습니다. 스마트 스위치가 연결된 송전원이 있지만 타즈모타로 깜박였습니다. 이렇게 하면 mqtt 결과가 나오게 됩니다. 나는 파이썬 작품에서 위의 paho-mqtt와 브로커를 설정하고 나는 파이썬 스크립트로 조명을 켜고 끌 수 있습니다.

웹 페이지에 각 라이트의 상태를 추가하고 웹 페이지에서 켜고 끌 수도 있습니다. 나는 일반적으로 대부분의 기계가 파이썬에 여러 버전이 설치되어 있고 pip의 여러 버전이 있고 실제 명령은 Windows 또는 Linux에 있는지 여부에 따라 달라지 않기 때문에 명령 핍 설치 paho-mqtt를 사용하는 것처럼 간단하지 않습니다. paho mqtt 클라이언트 클래스에는 여러 가지 메서드가 있습니다. 주요 것들은 : 이 튜토리얼은 파이썬 스크립트를 사용하므로 파이썬 라이브러리 paho-mqtt를 설치해야합니다. 이 모듈을 설치하려면 `pip3`가 필요하므로 아직 설치하지 않은 경우 pip3를 설치해야합니다 . AWS IoT 플랫폼에서 이 것을 사용할 수 있는 방법의 예는 예제 폴더에 있습니다. 이 기능을 사용하면 와일드카드를 포함하여 특정 구독 필터에 대해 들어오는 메시지를 처리하는 콜백을 정의할 수 있습니다. 예를 들어 센서/#을 구독하고 센서/온도를 처리하는 콜백을 하나, 센서/습도를 처리할 수 있습니다. 참고: 게시자가 위의 예에서와 같이 페이로드 사용 디코딩()로 문자열을 보내는 경우. 게시자가 번호를 보낼 때 다음 예제와 같이 int(msg.payload)를 사용할 수 있습니다.

나는 줄에서 당신의 예에서 볼 수 있습니다 : client1 = 파호. clientID를 만들기 위해 일반 ascii 문자열을 사용한 클라이언트(“control1″)입니다. 이것은 단지 매우 기본적인 예입니다 – 하나의 게시자 (아마도 브로커)와 하나의 구독자이지만 확장하기가 매우 쉽습니다 (동일한 장치가 모든 역할을 할 수 있다는 것을 잊지 마십시오). 마무리하기 위해 Java 응용 프로그램에 기능을 추가하는 데 필요한 MQTT API가 얼마나 적은지 보여 드리겠습니다. 이 경우 부두 설명서의 예 Jetty FileServer.java 예제를 사용합니다. 페이지 처리기가 처리한 요청을 계산하려면 ResourceHandler 클래스를 확장하고 계산 코드를 추가하고 서버가 기본 처리기 대신 향상된 처리기를 사용하도록 합니다. 이 경우 우리는 또한 몇 가지 계산 기능을 추가하고 시작하고 MQTT 클라이언트를 중지 할 : 이클립스 재단은 Mosquitto에 낯선 없습니다 – 그것은 당신이 다운로드하고 자신의 모스를 실행할 수없는 경우 그래서 m2m.eclipse.org MQTT 샌드 박스로 모스키토의 공개 인스턴스를 실행 종료 서버는 예제에서 연결 URI를 “tcp://m2m.eclipse.org:1883″으로 변경할 수 있습니다. 이 문서는 공유 샌드박스이므로 이 문서에 사용된 주제에 게시하는 것은 이 문서를 읽고 예제를 실행하는 다른 사람이 과도하게 작성할 수 있습니다.

나는 너무 내 paho-mqtt / mosquitto를 실행하는 파이 nginx 웹 서버가 있습니다.