>웹 프론트엔드 >JS 튜토리얼 >IoT 및 Node.js를 IFTTT에 연결합니다

IoT 및 Node.js를 IFTTT에 연결합니다

Christopher Nolan
Christopher Nolan원래의
2025-02-19 13:23:10689검색

IoT 및 Node.js를 IFTTT에 연결합니다 키 테이크 아웃

IFTTT의 제조업체 채널은 개발자가 HTTP 요청을받을 때 출발하는 트리거를 정의하여 개발자 커뮤니티의 창의성에 의해서만 제한되며, 사실상 모든 목적에 대한 유용성을 확대 할 수 있습니다.

. 제조업체 채널은 Node.js를 통해 IFTTT와 통신하기 위해 간단한 Arduino를 설정하는 데 사용될 수 있으며, Arduino 전원 조명 스위치를 통해 Lifx Lightbulb를 켜고 끄는 것과 같은 동작을 허용하거나 언제든 RGB LED 색상을 변경할 수 있습니다. 트위터 언급이 접수됩니다.

메이커 채널의 설정 프로세스에는 IFTTT에서 새 레시피를 작성하고 트리거 채널로 "메이커"를 선택하고 트리거 유형, 이벤트 이름 및 작업 유형을 정의한 다음 Node.js 코드를 사용하여 다음에 연결된 버튼을 정의하는 것과 관련이 있습니다. HTTP 요청을 IFTTT에 트리거하는 Arduino. Arduino가 IFTTT 트리거에 반응하도록하기 위해, 비슷한 프로세스를 따르지만 반대 방향으로, 트리거 채널이 작업 (예 : 트위터)을 유발하는 서비스 (예 : 트위터), 액션 채널은 "메이커"입니다. 그런 다음 트리거 이벤트가 발생할 때마다 Node.js 서버 및 Arduino에 웹 요청을하십시오.
    ifttt는 장치를 빠르고 쉽게 연결하는 능력이 큰 잠재력을 가지고 있습니다. 한동안 누락 된 것은 일반적인 HTTP Get 및 Post 요청을 보내고받는 기능입니다. 당신이 무언가에 IFTTT를 사용하고 싶다면, 그것에 대한 특정 용도는 IFTTT에 의해 정의되어 채널 내에서 해당 사이트에 게시되어야했습니다. 즉, 지금까지!
  • IFTTT는 최근에 메이커 채널을 출시했습니다. 개발자가 기다리고있는 것은 바로! 이를 통해 HTTP 요청을받을 때 설정된 트리거와 HTTP 요청을 정의 된 위치로 만들 수있는 조치를 정의 할 수 있습니다. 이것은 IFTTT가 사실상 무엇이든 사용되는 것을 열어줍니다. 이제는 개발자 커뮤니티의 상상력에 완전히 달려 있습니다.
  • 제조업체 채널이 무엇을 할 수 있는지 보여주기 위해, 우리는 node.js를 통해 ifttt와 앞뒤로 전달하기 위해 간단한 arduino를 설정할 것입니다. IFTTT로 트리거 보내기 실험을 실험하기 위해 Arduino 전원 조명 스위치를 통해 Lifx Lightbulb를 켜고 끄는 것을 실험합니다. IFTTT 제조업체 조치를 시도하기 위해 RGB LED를 Arduino에 연결하여 트위터에서 언급 될 때마다 색상이 변경됩니다. 트위터를 좋아하지 않거나 Lifx 전구가 없습니까? 문제가되지 않으면 IFTTT의 다른 무언가로 작업/트리거를 전환하십시오. 트위터 대신 Facebook 채널로 작업하거나 전구 대신 휴대 전화에서 동작을 트리거하십시오. 이것은 땜질하는 것이 많은 재미입니다 당신이 IFTTT에 익숙하지 않은 경우, 나는 이전에 IFTTT를 사용하여 Lifx 전구를 IoT에 연결하는 것에 관한 기사의 기본 사항을 다루었습니다. 이 기사는 트리거와 행동에 대한 모든 것을 알고 있다고 가정하고 이제 다음 단계로 가져갈 준비가되었습니다!
  • .

    코드 코드에 똑바로 들어가서 시험 해보고 싶다면 github에서 찾을 수 있습니다. 이것이 어떻게 작동하는지

    우리는 USB를 통해 연결된 Arduino와 함께 로컬 node.js 서버를 실행할 것입니다. Arduino 설정 버튼을 누르면 IFTTT에 HTTP 요청이 트리거되어 LIFX 조명을 전환하도록 지시합니다. Node.js 서버는 들어오는 HTTP 요청을 처리하기 위해 Express Running이 있습니다. IFTTT는 트위터에서 우리에 대한 새로운 언급을 볼 때마다 Arduino의 LED를 트리거하기 위해 서버에 게시물 요청을 할 것입니다. 우리의 Arduino 스케치 우리는 간단한 버튼을 연결하고 RGB가 Arduino로 이어졌습니다.

    제조업체 채널 설정 시작하려면 IFTTT의 메이커 채널로 가서 "연결"을 클릭해야합니다. 설정되면 화면에 도달하게됩니다.

    이 화면에서 는 HTTP 명령을 통해 IFTTT 작업을 트리거 해야하는 비밀 키를 제공합니다. 물론 키보다 약간 더 많은 정보가 필요합니다. 조치를 유발할 수 있도록 게시하려면 URL이 필요합니다. 이를 찾으려면 "이벤트를 트리거하는 방법"이라는 링크를 클릭하십시오. 사용하려는 URL이 포함 된 페이지가 열리고 키가 첨부 된 상태에서 편리하게 엽니 다.

    Lifx 전구에 사용할 URL은 다음과 같습니다. Light_Switch라고 말하는 URL 부분은 이벤트 이름입니다. 우리는 IFTTT 레시피를 구성 할 때 이것을 사용합니다. Lifx 전구를 트리거하지 않는 경우 이벤트와 더 정확하게 일치하는 이름을 선택하십시오. Maker Triggers를 사용하여 ifttt 토글 우리의 제조업체 채널은 활성화되어 있으며 사용할 준비가되었습니다. 우리는 IFTTT 액션을 전환하는 방법을 살펴 보면서 Arduino의 버튼을 사용하여 Lifx Lightbulb를 켜고 끄는 방법을 살펴 보겠습니다. 레시피 자체를 만드는 것은 매우 간단합니다

    우리는 ifttt의 새 레시피 페이지로 이동합니다. 트리거 채널로 "메이커"를 선택하십시오 트리거 유형으로 "웹 요청 받기"를 클릭하십시오. 라이트 스위치의 이벤트 이름을 입력하십시오 "Lifx"를 우리의 액션 채널로 선택하십시오 행동 유형으로“조명을 켜거나 끄는”것을 클릭하십시오 우리 가이 영향을 미치기를 원하는 Lifx 조명을 선택하십시오 레시피에 제목을주고“레시피 만들기”를 클릭하십시오!

    Node.js 코드에서 Johnny-Five를 사용하여 Arduino에 액세스합니다. 보드가 준비되면 BTN 변수에서 핀 7에 연결된 버튼을 정의합니다.
    board<span>.on('ready', function() {
    </span>    <span>console.log('Board ready');
    </span>
        btn <span>= new five<span>.Button</span>(7);</span>
    보드의 준비된 이벤트 내에서 우리는 버튼의 다운 이벤트 시계를 설정했습니다. 버튼을 감지하면 디버깅 목적으로 콘솔을 클릭하는 로그인 (브레드 보드의 와이어가 느슨해 지거나 해당 라인을 따라 무언가가있는 상황에서는이 콘솔 로그를 사용하면 많은 시간을 절약 할 수 있습니다!). 그런 다음 NPM 모듈 요청을 사용하여 위에서 찾은 URL에 대한 HTTP 사후 요청을 만듭니다. 디버깅 목적으로 성공할 때 콘솔 로그가 있습니다.

    코드를 실행하면 버튼을 클릭하면 요청이 성공하면 Lifx Lightbulb를 켜고 끄십시오! IFTTT는 콘솔에서 그렇게 보일 멋진 메시지를 반환합니다. <congr> 신체 반응은 축하였습니다! 당신은 light_switch 이벤트 <pre class="brush:php;toolbar:false">btn&lt;span&gt;.on('down', function(value) { &lt;/span&gt; &lt;span&gt;console.log('Light toggle pressed.'); &lt;/span&gt; request&lt;span&gt;.post({ &lt;/span&gt; &lt;span&gt;url: 'http://maker.ifttt.com/trigger/light_switch/with/key/{{yourkeyhere}}' &lt;/span&gt; &lt;span&gt;}, function(error&lt;span&gt;, response, body&lt;/span&gt;) { &lt;/span&gt; &lt;span&gt;console.log('Body response was ', body); &lt;/span&gt; &lt;span&gt;console.log('Error was ', error); &lt;/span&gt; &lt;span&gt;}); &lt;/span&gt; &lt;span&gt;});&lt;/span&gt;</pre>를 발사했습니다 <simple> 합쳐지는 것은 정말 간단하지만 잠재력의 <p> 로트 </p>가 있습니다. <note> 주목해야 할 사항 - HTTPS를 통해 IFTTT 서비스를 호출하려면 올바르게 안전한 HTTPS 서버도 필요합니다. 로컬 테스트 서버를 사용할 때 오류가 있었으므로 자체 서명이 아닌 인증서가 필요할 수 있습니다. IFTTT 트리거에 응답 <if if> <tr> 이제 우리는 이제 node.js와 arduino를 통해 IFTTT 작업을 트리거 할 수 있습니다. 반대 방식으로 일을하는 방법을 살펴 보겠습니다. Arduino가 IFTTT 트리거에 반응하게합니다. 트위터에 언급 될 때마다 Node.js Server와 Arduino를 알리기 위해 IFTTT를 설정합니다. <the> 우리는 레시피를 다른 방법으로 만들었습니다 <p> <the> 우리는 ifttt의 새 레시피 페이지로 이동합니다. 트리거 채널로“트위터”를 선택하십시오 <new> 트리거 유형으로“새로운 언급”을 클릭하십시오. <tr>“트리거 만들기”를 클릭하십시오 <aker> "메이커"를 우리의 액션 채널로 선택하십시오 <make> 행동 유형으로 "웹 요청 만들기"를 클릭하십시오. <post> 게시물 요청 설정에 넣고 (아래를 포함 할 것입니다)“조치 만들기”를 클릭하십시오! <our> HTTP 요청 설정이있는 화면이 보입니다.<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173994260196107.jpg" class="lazy" alt="IoT 및 Node.js를 IFTTT에 연결합니다" > <ol> <publ> 노드 서버의 공개적으로 액세스 가능한 URL에 넣습니다. 나는이 모든 것을 테스트하기 위해 개인적으로 ngrok을 사용합니다. 나는 어디서나 LocalHost에 액세스하는 것에 관한 기사에서 Ngrok 및 유사한 서비스를 사용하는 방법을 다룹니다. 메소드에 대한 게시물을 선택하십시오 (GET 요청도 선호하는 경우에도 작동해야합니다). <li> > 노드 서버가 JSON을받을 것으로 예상되므로 컨텐츠 유형에 대해 "Application/JSON"을 선택하십시오. <the> 마지막으로, 우리가 보내고 싶은 JSON 메시지를 포함하십시오. { "color": "#55acee", "text": text}를 내려 놓았습니다. #55acee는 트위터의 새 마스코트에서 찾은 색상이므로 가장 적절한 선택이라고 생각했습니다! </the> </li> <field> 텍스트는 IFTTT에 의해 동적으로 채워진 필드로, 당신을 언급 한 트윗의 텍스트로. 이 분야는 IFTTT 성분이라고합니다. 우리는 실제로 LED 색상을 바꾸는 데 사용하지 않지만 IFTTT 성분을 포함시키기 위해 IFTTT 성분을 포함시키고 싶었습니다. <ing> JSON에 성분을 추가하려면 바디 필드를 클릭하여 JSON 문자열을 입력하면 오른쪽에 테스트 튜브 아이콘이 있습니다. 클릭하면 다음을 포함 할 필드를 선택할 수있는 메뉴를 열게됩니다. <li> </li> <ode> 노드 코드 내에서 Johnny-Five 모듈이 이에 대해 알고 해당 게시물 요청을들을 수 있도록 서버를 설정하도록 LED를 설정했습니다. LED를 변경하여 응답 할 것입니다 보드의 준비된 이벤트 내에서, 우리는 LED와 같은 변수 내에 핀 9, 10 및 11에 부착 된 LED를 정의합니다. <li> <look> 핀이 UP보다는 11에서 카운트 다운되어 코드가 이상하게 보일 수 있습니다. 그 이유는 배선이 Arduino 보드의 상단에서 아래로 빨간색, 녹색 및 파란색을 갖는 것을 선호하기 때문입니다 (예 : 11, 10 및 9). <initial> 우리는 초기 색상을 녹색으로 설정했습니다 </initial></look> </li> <board> 보드의 준비된 이벤트 외부에서 우리는 Express를 사용하여 /LED 게시물 요청에 대한 라우팅을 만듭니다. 이 경로의 콜백 함수 내에서 JSON 데이터를 IFTTT에서 Req.Body 내부에서 전송하고 그 안에 색상 키를 찾습니다. 우리는 Johnny-Five의 LED.color () 함수에 그 색상을 제공하여 LED의 색상을 우리가 제공 한 내용으로 변경합니다. 콘솔에 JSON 데이터도 기록합니다 <li> <in> 명심해야 할 사항 - 테스트 목적 이상으로 제공 될 공개적으로 액세스 가능한 서버에 넣는 경우 제공되는 JSON 데이터가 실제로 색상이며 합법적인지 확인하는 것이 좋습니다. 요청. <.> <the> 노드 서버를 실행 한 다음 계정에서 트윗을 받으면 잠시 후 (IFTTT가 트위터에서 트위터에서 해당 정보를 새로 고치는 데 시간이 걸리지 않기 때문에 즉시 그렇지 않음), LED는 LED가 트위터 블루로 가십시오! Console.log에서 다음과 같은 것을 볼 수 있습니다. </the></.></in> </li>응답은 {color : '#55acee', text : '@thatpatrickguy woo hoo'}입니다. <you> 그런 다음 같은 라인을 따라 다양한 다른 서비스를 설정하지만 다른 색상으로 다양한 LED 색상 변경을 가질 수 있습니다! . <p> 결론 <os> IFTTT의 생태계와 HTTP 요청을 보내고받을 수있는 모든 인터넷 지원 기술의 제조업체가 이용할 수있는 모든 채널을 갖는 것은 엄청납니다. 트위터 API를 Node.js 애플리케이션에 포함시키는 것과 같은 작업을 오랫동안 수행 할 수 있었지만 사용하기가 훨씬 쉽고 엄청나게 모듈 식 API에서 다양한 가능성을 제공합니다. 다른 것을 위해 트위터를 전환하면 모든 것이 여전히 몇 가지 조정만으로 작동해야합니다! </os></p> <some>이 가이드에서 정말 깔끔한 IFTTT 제조업체 채널 제작을한다면, 댓글에 메모를 남기거나 트위터 (@ThatPatrickGuy)에서 저와 연락을 취하십시오. <questions> ioT 및 node.js를 ifttt 에 자주 묻는 질문 (FAQS) <role> IoT를 ifttt에 연결하는 데 Node.js의 역할은 무엇입니까? <h2> node.js는 IoT 장치를 IFTTT에 연결하는 데 중요한 역할을합니다. Chrome의 V8 JavaScript 엔진을 기반으로 구축 된 JavaScript 런타임으로 서버 측 및 네트워킹 응용 프로그램을 개발하는 데 사용됩니다. Node.js 응용 프로그램은 JavaScript로 작성되며 다양한 플랫폼에서 Node.js 런타임 내에서 실행할 수 있습니다. IoT의 맥락에서 Node.js는 IoT 장치와 상호 작용하는 서버 측 코드를 작성하고 Maker WebHooks 서비스를 통해 IFTTT에 명령을 보내는 데 사용될 수 있습니다. ? </h2> IFTTT의 Maker WebHooks 서비스를 통해 사용자 정의 웹 후크를 만들 수 있습니다. IFTTT 서비스. 이 서비스는 자신의 하드웨어 또는 소프트웨어를 IFTTT와 연결하려는 경우 특히 유용합니다. Maker WebHooks 서비스에서 생성 된 특정 URL에 웹 요청을 보낼 수 있으며이 요청은 IFTTT 서비스에 대한 조치를 트리거합니다. <p> Node.js 대신 다른 프로그래밍 언어를 사용하여 iot을 연결할 수 있습니까? ifttt? <t t> </t></p> 예, 다른 프로그래밍 언어를 사용하여 IoT 장치를 IFTTT에 연결할 수 있습니다. 그러나 Node.js는 효율성과 확장 성으로 인해 인기있는 선택이며, 이는 많은 양의 데이터를 생성하는 IoT 장치를 처리 할 때 특히 유용합니다. Python, Java 또는 C와 같은 다른 언어도 사용할 수 있지만 구현은 다를 수 있습니다. <p> IoT, Node.js 및 ifttt의 연결이 얼마나 안전한가? IoT, Node.js 및 IFTTT 간의 연결은 크게 구현 방법에 따라 다릅니다. IoT 장치에서 Node.js로 및 Node.js에서 ifttt로 데이터를 보낼 때 안전한 방법을 사용하는 것이 중요합니다. 여기에는 모든 연결에 HTTPS를 사용하고, 모든 들어오는 데이터를 검증하고, IFTTT 키 비밀을 유지하는 것이 포함될 수 있습니다.<i> node.js를 사용하여 IFTTT에 어떤 유형의 IoT 장치를 연결할 수 있습니까? <h3> Node.js를 사용하여 광범위한 IoT 장치를 IFTTT에 연결할 수 있습니다. 여기에는 조명, 온도 조절 장치 및 보안 카메라와 같은 스마트 홈 장치, 스마트 워치 및 피트니스 트래커와 같은 웨어러블 장치 및 맞춤형 IoT 장치와 같은 스마트 홈 장치가 포함됩니다. 핵심 요구 사항은 장치가 인터넷을 통해 데이터를 보낼 수 있어야합니다. </h3> </i></p> <p> ioT를 사용하여 IoT를 IFTTT에 연결할 때 문제를 디버그 할 수있는 방법은 무엇입니까? Node.js를 사용하는 IFTTT는 다양한 방법을 사용하여 수행 할 수 있습니다. Node.js 코드에서 Console.log 문을 사용하여 응용 프로그램 상태에 대한 정보를 인쇄 할 수 있습니다. Node.js 디버거 또는 노드 검사관과 같은 도구를 사용할 수도 있습니다. </p> Node.js를 사용하여 여러 IoT 장치를 IFTTT에 연결할 수 있습니까? node.js. 사용 각 장치는 Node.js 응용 프로그램으로 데이터를 보내고 Maker WebHooks 서비스를 사용하여 IFTTT에서 작업을 트리거합니다. IoT 및 Node.js와 함께 ifttt를 사용하는 제한 사항은 무엇입니까? IFTTT는 IoT 장치를 다양한 서비스와 연결하는 강력한 도구입니다. , 몇 가지 제한 사항이 있습니다. 예를 들어, IFTTT의 무료 버전은 생성 할 수있는 애플릿 수를 제한합니다. 또한 IFTTT에서 모든 서비스를 사용할 수있는 것은 아니므로 IoT 장치를 사용하려는 모든 서비스와 IoT 장치를 연결하지 못할 수 있습니다. <p> IoT를 연결할 때 Node.js 응용 프로그램의 성능을 최적화하려면 어떻게해야합니다. ifttt? </p> node.js 응용 프로그램의 성능을 최적화하는 것은 여러 가지 방법으로 수행 할 수 있습니다. 여기에는 효율적인 알고리즘 및 데이터 구조 사용, 차단 작업 사용을 최소화하며 메모리를 올바르게 관리하는 것이 포함됩니다. Node.js Profiler와 같은 도구를 사용하여 성능 병목 현상을 식별 할 수 있습니다. <h3> node.js 및 ifttt를 사용하여 ioT 장치를 IFTTT 이외의 서비스에 연결합니까? </h3> <p> 예, 가능합니다. node.js 및 ifttt를 사용하여 IoT 장치를 광범위한 서비스에 연결하십시오. IFTTT는 Gmail, Twitter 및 Dropbox와 같은 인기있는 서비스를 포함하여 수백 개의 서비스를 지원합니다. IoT 장치의 데이터를 기반으로 이러한 서비스에 대한 작업을 트리거 할 수 있습니다.</p></role></questions></some></you></board></ode></ing></field></publ> </ol></our></post></make></aker> </tr></new></the></p></the> </tr></if></note></simple></congr>

위 내용은 IoT 및 Node.js를 IFTTT에 연결합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.