본문 바로가기

MQTT

안드로이드에서 MQTT 사용하기

안드로이드로 작동되는 휴대폰이나 태블릿에서 MQTT를 간편하게 사용할 수 있는 IoT MQTT Dashboard에 대해 알아보겠습니다.



1단계. 설치하기


구글 플레이에서 MQTT를 검색하면 IoT MQTT Dashboard를 찾을 수 있습니다.


무료버전과 유료버전이 있습니다.


원하는 버전을 찾아 설치합니다.






2단계. 서버 등록하기

MQTT Dashboard 앱에 들어가서 오른쪽 아래에 있는 + 버튼을 클릭합니다.






Client ID에는 자신이 사용하고자 하는 ID를 씁니다.


서버, 포트, 사용자 이름, 비밀번호를 차례로 넣습니다.


사용자 이름과 비밀번호가 없는 경우에는 넣지 않아도 됩니다.







CloudMQTT 사용자는 내 계정에 있는 MQTT 콘솔창에서 아래에 있는 정보를 앱에 맞춰 넣으면 됩니다.


(사용자 이름과 비밀번호는 Manage Users 에 등록한 username, password를 사용해도 됩니다.)


CloudMQTT 사용 방법은 아래 포스트를 참고하세요.

2017/02/27 - [MQTT] - 온라인에서 쉽게 MQTT를 : CloudMQTT 시작하기






hi라는 Client ID 를 가진 서버가 등록 됐습니다.


등록된 서버를 클릭합니다.






만약 등록이 제대로 되지 않으면 Error 표시가 납니다.


다시 뒤로 돌아가서 서버, 포트, 사용자 이름, 비밀번호를 제대로 입력하세요.





3단계 구독(subscribe) 창 만들기


내가 사용하는 MQTT 서버에 제대로 등록이 됐으면 아래처럼 "Connected to ~" 라는 글자가 나옵니다.


이제는 구독창을 만들어보겠습니다.


SUBSCRIBE 글자가 선명하고 밑에 빨간줄이 있으면, 오른쪽 상단에 있는 + 버튼을 클립합니다.구름 표시 바로 옆에 있네요.







자신의 MQTT에 있는 토픽 가운데 하나를 선택해 Topic 란에 토픽명을 적습니다.


Friendly name은 적어도 되고 적지 않아도 됩니다.


적지 않을 경우 토핑명으로 구독창이 생성됩니다.








test 토픽을 구독하는 구독창이 만들어졌습니다.





제대로 작동하는지 한 번 알아봅시다.


CloudMQTT Consloe 페이지에서 상단에 있는 Websocket UI를 클릭하면 아래와 같은 화면이 생깁니다.


여기서 오른쪽에 있는 Send messase 란에서 Topic에 토픽명, Massese에 메시지 내용을 적고 Send를 클릭합니다.


그러면 오른쪽에 있는 Received messases에 내가 보낸 정보가 바로 뜹니다.




메시지를 보내면, MQTT Dashboard 에서 만든 구독창에도 똑같은 메세지가 뜨는 것을 확인할 수 있습니다.






4. 발행(publish) 창 만들기


이번에는 발행창을 만들어 봅시다.


오른쪽 위에 있는 PUBLISH를 클릭하고 상단 메뉴에 있는 +를 클릭합니다.






다양한 형태로 문자나 숫자를 발행할 수 있습니다.


이 가운데 자신이 원하는 방식을 선택해서 클릭합니다.






구독창을 만들 때처럼 Topic란에 토픽명을 적습니다.


여기서도 Friendly name은 적어도 되고 적지 않아도 됩니다.


QoS는 메세지 전달 방식입니다.


0, 1, 2 중에 하나를 선택할 수 있습니다.


숫자의 차이를 간단하게 말하자면, 숫자가 적을수록 전송 속도가 빠르고 가볍지만, 정확성은 떨어집니다.


Retained는 발행한 메세지를 지속시키고 싶을 때 사용합니다.


Retained를 선택하지 않았을 경우에는 구독창이 켜져 있을 경우에만 발행하는 메시지를 받을 수 있습니다.


발행했을 때 구독창이 꺼져있으면 발행창에서 보낸 메세지를 받을 수 없게 됩니다.


반면, Retained를 선택했을 경우에는 발행 메세지를 보낼 당시 구독창이 꺼져 있더라도, 다시 구독창을 켜게 되면 직전에 발행했던 메세지를 받게됩니다.







새로 만들어진 발행 창에서 자신이 원하는 메세지를 쓴 다음 PUBLISH 버튼을 클릭합니다.





앱에서 발행한 test 토픽의 "안녕"이라는 메세지가 수신된 것을 확인 할 수 있습니다.





'MQTT' 카테고리의 다른 글

온라인에서 쉽게 MQTT를 : CloudMQTT 시작하기  (0) 2017.02.27