webOS Article 32

Bluetooth 사용하기 2 - 채팅앱 만들기

지난 포스팅에선 Luna-Service를 이용하여 라즈베피라이 4의 블루투스 기능을 설정하고 사용하는 법에 대해 소개해 드렸습니다. 이번 시간에는 스마트 폰 블루투스 앱과 블루투스 기능을 이용하여 메세지를 주고받는 application을 만들어 보겠습니다. 이 포스팅은 webOS OSE 개발자 사이트 : Bluetooth Guide와 LS2 API Bluetooth2를 참고하여 작성되었습니다. before you begin 채팅창 UI 구성하기 채팅 서비스 개발하기 before you begin 1. web app 생성하기 웹 앱을 개발하기 위해서 먼저 아래의 명령어를 입력해 웹 어플리케이션 템플릿을 생성합니다. ares-generate -t 이에 대해 자세한 내용은 이전 포스팅인 웹 앱(web appl..

Booting시 내 앱과 서비스가 실행되도록 만들기

이 포스팅은 webOS OSE 개발자 사이트 : 와 에반젤리님의 포스팅을 참고하여 작성되었습니다. 출처: https://evanjelly.tistory.com/61 [에반젤리의 IT 엿보기] 개발환경 설정하기 결과 영상 이번 포스팅에서는 webOS가 탑재된 라즈베리파이를 켰을때 부팅 과정에서 원하는 앱 혹은 서비스가 실행되도록 하는 방법에 대해 알아보겠습니다. webOS와 Systemd init은 부팅이 완료된 뒤 실행되는 첫번째 프로세스 입니다. 예를 들어 등록된 서비스 혹은 initrc에 기록된 백그라운드 서비스와 시스템 서비스를 실행하는 역할을 합니다. 그리고 webOS OSE는 init 시스템으로 systemd를 사용합니다. systemd는 리눅스 시스템이 부팅할 때 실행되는 프로그램을 제어하기 ..

외부모듈 사용하기

NPM(Node Package Manager)을 이용하여 webOS에서 외부모듈을 사용해보겠습니다. 외부모듈 설치하기 외부모듈 사용하기 외부모듈 예제 외부모듈 설치하기 1. 외부모듈이란? 앞 게시물에서 설명한 Core Modules외에도 추가로 설치해서 사용할 수 있는 외부모듈이 있습니다. 외부 모듈을 사용하면 내가 만든 모듈뿐만 아니라 다른 사람의 모듈도 사용 가능합니다. 2. 외부모듈 설치하기 외부모듈 중 web socket을 사용해보겠습니다. web socket이란 웹 서버와 웹 브라우저 사이에서 실시간으로 상호 작용할 수 있도록 통신환경을 제공하는 기술입니다. > npm install ws 위의 명령어를 사용하여 ws라는 외부모듈 패키지를 설치해줍니다. Windows PowerShell을 사용하여..

Nodejs를 이용한 웹서비스 개발

이 포스팅은 webOS OSE 개발자 사이트 : Using Node.js Modules 를 참고하여 작성되었습니다. Node.js란? Node.js 서비스 개발하기 Nodejs 란? 1. Node.js Node.js는 자바스크립트를 기반으로 한 네트워크 애플리케이션 개발에 사용되는 소프트웨어 플랫폼입니다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제가 가능합니다. 2. Node.js를 사용하는 이유 자바스크립트 언어를 활용하는 서버기술이기 때문에 빠른 개발 및 응용이 가능합니다. 또한 npm을 이용하여 자신이 필요한 라이브러리와 패키지를 검색해서 설치하고 활용할 수 있기 때문에 개발속..

heartbeat 사용하기

이 포스팅은 webOS OSE 개발자 사이트를 참고하여 작성되었습니다. heartbeat 기능은 백그라운드에서 서비스를 구동하기를 위해 생성합니다. [참고] 다른 어플 실행 중에 내가 만든 서비스로 모니터링하기 heartbeat가 필요한 이유 heartbeat 구성 및 흐름 코드 설명 : app 코드 설명 : service webOS에서 다른 어플리케이션/서비스를 실행하는 도중에도 백그라운드에서 꺼지지 않고 서비스가 실행되어야 하는 경우가 있습니다. 유튜브 영상 시청하는 도중에도, 메세지 알림이 오는 경우가 그 예입니다. (서비스 : 메시지 알림) 이번 포스트에서는 heartbeat 서비스를 생성하여 백그라운드에서 원하는 기능을 동작시키는 방법을 다룹니다. webOS OSE에서는 서비스를 단독으로 만들어..

webOS 서비스에서 다른 서비스 호출하기

webOS 서비스에서 다른 서비스 호출하기 webOS 서비스에서 다른 서비스 호출하기 지금까지는 Java Script만 사용하여 기본 Service를 만들었습니다. 서비스에서 다른 서비스를 호출해야하는 경우는 굉장히 빈번합니다. 이 챕터에서는 기존 service내에서 새로운 webOS Luna Service를 호출해봅니다. Luna Service에 포함된 toast나 clock 등 다양한 서비스를 호출할 수 있습니다. 이전 포스트에서도 사용한 적이 있는 toast를 호출해봅니다. 1. toast service 호출 방법 index.html callToast라는 이름으로 함수를 추가해주었습니다. toast click 버튼을 생성해주었습니다. Hello, Web Application!! hello toast..

Bluetooth 사용하기 1

이 포스팅은 webOS OSE 개발자 사이트 : Bluetooth Guide를 참고하여 작성되었습니다. Before you begin SPP( Serial Port Profile )란 무엇인가 SPP( Serial Port Profile ) 실습하기 Before you begin 1. 시작 전 프로젝트를 위한 준비물 webOS OSE 장치 (Raspberry Pi) Host machine for SSH connection with the webOS OSE device 아래의 어플을 다운받은 android 스마트폰 ( 구글 플레이 스토어에서 다운받으세요. ) Bluetooth SPP Manager *android를 권장합니다. ios에는 적절한 bluetooth terminal app을 찾기 어렵습니다. ..

다른 어플 실행 중에 내가 만든 서비스로 모니터링하기

이 포스팅은 webOS OSE 개발자 사이트 : 를 참고하여 작성되었습니다. App 개발 Service 개발 실행 결과 WebOS에서 다른 어플리케이션을 실행 하는 도중(예: youtube 등) 백그라운드에서 버튼이 눌렸는지 주기적으로 모니터링하여 눌렸으면 toast를 띄우는 예제를 구성해 보았습니다. 백그라운드에서 원하는 기능이 동작하도록 웹 서비스로 개발을 진행하였으며, 스위치는 라즈베리파이 4 GPIO를 이용하여 연결해 주었습니다. webOS OSE에서는 서비스를 단독으로 만들어서 설치하는 것이 안되므로 web application과 함께 만들어 설치를 진행하였습니다. App 개발 1. json 코드 { "id": "com.cosmos.team4.app", "version": "1.0.0", "ve..

TTS 활용하여 음성 출력하기

개발환경 설정 Google Cloud TTS API 활성화하기 코드 작성 이번 포스팅에서는 TTS를 활용하여 음성을 출력할 것 입니다. TTS 서비스를 사용하면 일반 텍스트 언어가 음성으로 변환하여 출력됩니다. TTS 활용하여 음성 출력하기 1. 개발환경 설정 디바이스 추가하기 ares-setup-device 라즈베리파이를 시작하고 다음 명령어를 사용하여 디바이스를 추가해줍니다. 이때 select는 add를 선택하고, 사용한 기기에 할당된 ip 주소를 명령창에 입력해줍니다. 기기의 이름은 원하는대로 설정해주면 됩니다. 2. Google Cloud TTS API 활성화하기 TTS 서비스를 사용하기 위해서는 Google Cloud TTS API를 활성화해야합니다. 다음 webos 공식 사이트를 참고 구글 클..

웹서비스 개발하기

서비스 개요 webOS에서 서비스 만들기 서비스 개요 1. 서비스란? 서비스(Service)는 어플리케이션의 구성요소 중 하나로, UI를 제공하지 않아 사용자에게는 보이지 않으며 백그라운드에서 동작합니다. 따라서 주로 데이터를 다운로드하거나 처리하는 등 시간이 오래 걸리는 작업을 수행합니다. 사용자가 어플리케이션을 실행하지 않거나 디바이스를 사용하지 않는 중이어도 백그라운드에서 작업을 수행하며, 어플리케이션에서 서비스를 호출하거나, 한 서비스에서 다른 서비스를 호출할 수 있습니다. 서비스의 개념은 모바일 어플리케이션에서 동작할 때 이해가 쉽습니다. 예를 들어 카카오톡의 경우, 카카오톡 어플리케이션을 사용하지 않는 중에도 메시지가 도착하면 사용자는 알림을 확인할 수 있습니다. 여기서 서비스는 지속적으로 사..