Title1

Title2

Title3

5. 全域變數

結構

  1. 記錄LineBot:record_line_bot
  2. 商品關鍵字:prod_key
  3. CHANNEL_ACCESS_TOKEN:CHANNEL_ACCESS_TOKEN

    { form_label: '記錄LineBot',
      form_name: 'record_line_bot',
      form_sort: '',
      form_kind: '下拉選單',
      value_type: '文字',
      form_option: '|是',
      form_validate: '',
      form_width: 2,
      form_value: '',
      form_readme: '',
      form_fun: '',
      list_show: '',
      list_sort: '',
      list_align: '',
      list_width: ''
    },
    {
      form_label: '商品關鍵字',
      form_name: 'prod_key',
      form_sort: 2,
      form_kind: '簡答',
      value_type: '文字',
      form_option: '',
      form_validate: '',
      form_width: 2,
      form_value: '訂購商品',
      form_readme: '',
      form_fun: '',
      list_show: '',
      list_sort: '',
      list_align: '',
      list_width: ''
    },

    {
      form_label: 'CHANNEL_ACCESS_TOKEN',
      form_name: 'CHANNEL_ACCESS_TOKEN',
      form_sort: '',
      form_kind: '段落',
      value_type: '文字',
      form_option: '',
      form_validate: '',
      form_width: 12,
      form_value: '',
      form_readme: '',
      form_fun: '',
      list_show: '',
      list_sort: '',
      list_align: '',
      list_width: ''
    },

寫入:prog_global.gs / insert_global(formData)


  //----------------------------------------將「LineBot Info」寫入 指令碼屬性
  CHANNEL_ACCESS_TOKEN = global["CHANNEL_ACCESS_TOKEN"];
  SCRIPT_PROP.setProperty("LINE", JSON.stringify(getLineBotInfo()));

 

撈出:prog_global.gs / get_global()


  if(SCRIPT_PROP.getProperty("LINE") === null){     
    global['LINE'] = {
      userId:'',         //機器人的用戶 ID
      basicId:'',        //機器人的基本ID
      displayName:'',    //機器人的顯示名稱
      pictureUrl:'',     //個人資料圖片網址
      chatMode:'',       //聊天模式 chat:響應模式設置為“聊天”。 bot:響應模式設置為“Bot”。
      markAsReadMode:''  //標記為已讀模式 auto:啟用自動讀取設置。 manual:禁用自動讀取設置。
    };
  }else{
    global['LINE'] = JSON.parse(SCRIPT_PROP.getProperty("LINE"));
  }

 

使用:程式碼.gs (需放在get_global 後面)


//------------------------------------- 4. line bot(需放在get_global 後面)
var CHANNEL_ACCESS_TOKEN = global["CHANNEL_ACCESS_TOKEN"];

prog_line_bot.gs / Webhook(e)


  //---------------------------------- 記錄Line Bot 訊息
  if(global.record_line_bot === '是'){
    // e.postData.contents 收到的 JSON 字串 故將之轉為 JSON JSON.parse(e.postData.contents)
    let formData = {
      sn: '',
      timestamp: '',
      type: 'prog_line_bot / Webhook()',
      code: JSON.parse(e.postData.contents)
    }
    insert_sheet_record(formData);
  }
  //---------------------------------- 記錄Line Bot 訊息 end

 

prog_line_bot.gs / lineMessage(botData)

botMessageText === global.prod_key

 

在全域變數表單出現

prog_line_bot.gs / form_global(e)


  //-------------------------------------------- Webhook網址 global.url + '?op=Webhook'
  let webhook = global.url.indexOf("/exec") != -1 ? `
    <div>Webhook網址: <span class='text-danger'>${global.url}?op=Webhook</span></div>
  ` : '';
  let basicId = global.LINE.basicId ? `
     <div>官方網址:<span class='text-danger'>https://line.me/R/ti/p/${global.LINE.basicId}</span></div>
  ` : '';
  let displayName = global.LINE.displayName ? `
     <div>官方名稱:<span class='text-danger'>${global.LINE.displayName}</span></div>
  ` : '';

 


          ${webhook}
          ${basicId}
          ${displayName}