obniz의 서버리스 이벤트에서의 풀 포인트 & Tips
4964 단어 obniziftttserverless
특히 12월 발매 예정인 obniz board 1Y에서는 슬립을 사용할 수 있게 되므로 서버리스 이벤트를 사용하면 그 밖에 아무것도 준비하지 않고 센싱하는 IoT 서비스를 만들 수 있습니다.
이번에는 내가 서버리스 이벤트를 만드는 데 있어서 빠진 포인트와 Tips를 정리합니다.
서버리스 이벤트란?
공식 문서 : h tps : // 오 b에 ... 이오 / 그럼 / 어느 c / 오 b에 z_c ぉ d / 아보 t_에 ょ t
obniz를 사용하려면 외부에 obniz를 사용하기 위한 프로그램이 필요하지만 obniz 클라우드의 이벤트 기능을 사용하면 서버리스로 프로그램을 동작시킬 수 있습니다.
obniz Event는 미리 설정한 트리거가 발생했을 때 등록해 둔 프로그램을 자동으로 클라우드에서 실행하는 서비스입니다.
이렇게하면 프로그램을 직접 실행하지 않고 트리거와 프로그램 만 설정하여 무언가가 발생했을 때 클라우드에서 자동으로 처리 할 수 있습니다.
위 공식에서 인용했지만 나의 말로 정리하면, 서버를 준비하지 않아도 각자 작성한 프로그램을, 후술하는 트리거를 계기로 실행해 오는 툴이라고 하는 느낌일까요?
트리거
현재 5개의 트리거가 있습니다.
지정된 obnizID로 지정된 트리거가 있을 때, 각자의 프로그램이 실행됩니다.
제한사항
11/27 현재
조금 제약은 있지만 예를 들어 센서의 값을 취득하는 프로그램이라면 12분에 1회는 데이터를 저장할 수 있습니다.
마리 포인트
API를 사용할 때
다음과 같이 API를 사용할 때 오류가 발생할 수 있습니다.
await fetch('https://maker.ifttt.com/trigger/obniz_temp/with/key/', {
method: 'POST',
mode: "no-cors",
body: formData
}).then(()=>console.log("success")).catch((error) => console.log(error));
이 때 API를 호출 한 후 await obniz.wait(1000)
를 넣으면 오류가 발생하지 않습니다.
Tips
절대 수면
센서의 값 읽기 등 예기치 않은 곳에서 프로그램이 정지해 버리는 등 가능성이 있습니다.
배터리가 작동하는 장치에서는 이 문제가 중요하므로 서버리스 이벤트가 종료되기 전에 절전 모드를 사용해야 합니다.
(obniz board 1Y에서만 사용할 수 있습니다.)
//Timeout 25s
let tid = setTimeout(()=>{
let dt = new Date();
dt.setMinutes(Math.floor(dt.getMinutes()/10)*10+10,0,0);
obniz.sleep(dt);
obniz.close();
},25000);
이런 느낌으로 슬립하는 프로그램을 obniz.onconnect 밖에서도 호출하면 문제 없을까 생각합니다.
그 밖에 Tips가 있으면 추기해 가려고 생각합니다.
요약
obniz의 편리한 기능인 서버리스 이벤트, 그 마리 포인트와 Tips를 간단하게 정리했습니다.
정기적으로 센싱하고 싶다고 생각하면 꼭 한번 만져 보면 좋을 것입니다!
Reference
이 문제에 관하여(obniz의 서버리스 이벤트에서의 풀 포인트 & Tips), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/wamisnet/items/20b111298c12e81d5da0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
await fetch('https://maker.ifttt.com/trigger/obniz_temp/with/key/', {
method: 'POST',
mode: "no-cors",
body: formData
}).then(()=>console.log("success")).catch((error) => console.log(error));
절대 수면
센서의 값 읽기 등 예기치 않은 곳에서 프로그램이 정지해 버리는 등 가능성이 있습니다.
배터리가 작동하는 장치에서는 이 문제가 중요하므로 서버리스 이벤트가 종료되기 전에 절전 모드를 사용해야 합니다.
(obniz board 1Y에서만 사용할 수 있습니다.)
//Timeout 25s
let tid = setTimeout(()=>{
let dt = new Date();
dt.setMinutes(Math.floor(dt.getMinutes()/10)*10+10,0,0);
obniz.sleep(dt);
obniz.close();
},25000);
이런 느낌으로 슬립하는 프로그램을 obniz.onconnect 밖에서도 호출하면 문제 없을까 생각합니다.
그 밖에 Tips가 있으면 추기해 가려고 생각합니다.
요약
obniz의 편리한 기능인 서버리스 이벤트, 그 마리 포인트와 Tips를 간단하게 정리했습니다.
정기적으로 센싱하고 싶다고 생각하면 꼭 한번 만져 보면 좋을 것입니다!
Reference
이 문제에 관하여(obniz의 서버리스 이벤트에서의 풀 포인트 & Tips), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/wamisnet/items/20b111298c12e81d5da0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(obniz의 서버리스 이벤트에서의 풀 포인트 & Tips), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/wamisnet/items/20b111298c12e81d5da0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)