【问题标题】:Need help creating a Time Gate in Twilio Function需要帮助在 Twilio 函数中创建时间门
【发布时间】:2020-08-29 16:27:17
【问题描述】:

我是 Twilio Studio、Functions 和扩展 node.js 的新手。我正在尝试创建一个评估当前日期和时间的函数。如果那个时间在窗口之外,我想返回 false,否则返回 true。这是我到目前为止所拥有的:

    exports.handler = function(context, event, callback) {
    let twiml = new Twilio.twiml.VoiceResponse();
    
    var day = Twilio.Date.toString();
    twiml.say(day);
    
    callback(null, twiml);
};

【问题讨论】:

    标签: twilio twilio-functions


    【解决方案1】:

    看看下面的 Twilio 函数,并进行相应的修改。

    // Time of Day Routing 
    // Useful for IVR logic, for Example in Studio, to determine which path to route to
    // Add moment-timezone 0.5.31 as a dependency under Functions Global Config, Dependencies
    
    const moment = require('moment-timezone');
      
    exports.handler = function(context, event, callback) {
      
      let twiml = new Twilio.twiml.VoiceResponse();
      
      function businessHours() {
      // My timezone East Coast (other choices: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)
      const now = moment().tz('America/New_York');
      
      // Weekday Check using moment().isoWeekday()
      // Monday = 1, Tuesday = 2 ... Sunday = 7 
      if(now.isoWeekday() <= 5 /* Check for Normal Work Week Monday - Friday */) {
       
        //Work Hours Check, 9 am to 5pm (17:00 24 hour Time)
        if(now.hour() >= 9 && now.hour() < 17 /* 24h basis */) {
          return true
        }
      } 
      
      // Outside of business hours, return false
      return false
      
      };
      
      const isOpen = businessHours();
        if (isOpen) {
           twiml.say("Business is Open");
        } else {
           twiml.say("Business is Closed");
        }
        callback(null, twiml);
    };
    

    【讨论】:

      猜你喜欢
      • 2019-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-08
      • 1970-01-01
      • 2012-12-02
      • 1970-01-01
      • 2020-03-06
      相关资源
      最近更新 更多