2017-06-25 73 views
1

^h道歉行爲,節點JS腳本在星座響應

這將是一個令人難以置信的初學者的問題 - 我一直在努力,今天下午算出這個對我自己。我今天才第一次開始在js中編寫代碼。

我正在嘗試創建一個腳本來監視混音器的星座服務器,並在流媒體上線時收到響應。 (我有這個工作正常,當流光上線時它發送一個真實的消息,當流光離線我得到錯誤)。

const Carina = require('carina').Carina; 
    const ws = require('ws'); 

    Carina.WebSocket = ws; 

    const channelId = xxxxxx; 
    const ca = new Carina({ isBot: true }).open(); 
    ca.subscribe(`channel:${channelId}:update`, data => { 
    console.log(data.online); 
    }); 

然後我想它觸發POST查詢使用IFTTT的製造商腳本部分有觸發事件(如閃存我的燈光時,我最喜歡的流光上線) - 我也有這個腳本工作精細!

var request = require("request"); 

    request({ 
    uri: 
"https://maker.ifttt.com/trigger/streaming/with/key/xxxxxxxxxxxxxxxxxx", 
    method: "POST", 
    }, function(error, response, body) { 
    console.log(body); 
    }); 

問題我有,是我的js的零知識,具有對2合併在一起,這樣,當我接收來自混頻器星座服務器「真」響應,它運行的第二部分劇本。

我希望你對我的知識缺乏感到輕鬆,我期待着你的幫助。

回答

0

我覺得你有這樣的另一個函數的回調簡單地用一個函數:

 const Carina = require('carina').Carina; 
     const ws = require('ws'); 

     Carina.WebSocket = ws; 

     const channelId = xxxxxx; 
     const ca = new Carina({ isBot: true }).open(); 
     var request = require("request"); 

     ca.subscribe(`channel:${channelId}:update`, data => { 
     if(data.online){ 
      request({ 
      uri: 

    "https://maker.ifttt.com/trigger/streaming/with/key/xxxxxxxxxxxxxxxxxx", 
      method: "POST", 
      }, function(error, response, body) { 
      console.log(body); 
      }); 
}    

      }); 
+0

謝謝你,這個完美工作,我做了一個小調整的代碼與if語句,由於如何混合器星座服務器返回真正的值,當一個飄帶走在線:D if(data.online == true){ –

+0

其等於'if(data.online)'有一點區別,這是類型檢查'undefined'值和'null'值@RasmusKristensen – farhadamjady