You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Telegram Bot开发问题:时间变量未写入表格且pola[3]无法加粗

问题解决方案

1. 时间数据写入Google Sheets修复

问题原因

原代码里waktu变量是在执行appendRow之后才定义的,而且appendRow的参数数组没包含时间字段,导致时间无法写入表格。

修复步骤

  • 提前获取并格式化当前时间,放在appendRow执行之前
  • 把waktu作为第四个元素加入appendRow的数组中

2. Telegram消息中pola[3]加粗显示修复

问题原因

  • 原代码用了转义后的<b>标签,Telegram无法识别为HTML格式
  • 调用sendMessage时没指定parse_mode为HTML,Telegram不会解析HTML标签

修复步骤

  • 将消息里的&lt;b&gt;替换成直接的<b>标签
  • 修改sendMessage调用,添加parse_mode: "HTML"参数(需确保你的sendMessage函数支持传入额外参数,若原函数未处理,要同步修改该函数)

修改后的完整代码

function tambah(cid, cmd) {
  var txt = '';
  var pola = cmd.match(/tambah#(.+)#(.+)#(.+)/);
  Logger.log(pola);
  
  if (pola[1] !== '' && pola[2] !== '' && pola[3] !== '') {
    var uji = cek(pola[1]);
    if (uji === '') {
      // 提前获取并格式化时间
      var now = new Date();
      var waktu = Utilities.formatDate(now, "Asia/Jakarta", "dd/MM/YYYY HH:mm:ss");
      
      var ws = SpreadsheetApp.openById(ssID);
      var ss = ws.getSheetByName('material');
      // 追加行时包含时间字段
      ss.appendRow([pola[1], pola[2], pola[3], waktu]);
      
      // 使用正确的HTML加粗标签
      txt = `Material ${pola[1]} Jumlah ${pola[2]} dan Satuan <b>${pola[3]}</b>\n berhasil ditambahkan...`;
      sendMessage(cid, txt, { parse_mode: "HTML" });
    } else {
      txt = `Sudah ditemukan ${uji}`;
      sendMessage(cid, txt, { parse_mode: "HTML" });
    }
  } else {
    txt = 'Pola salah';
    Logger.log(txt);
  }
}

补充说明

如果你的sendMessage函数原本只接受cid、txt两个参数,需要修改该函数以支持第三个配置参数,示例如下:

function sendMessage(cid, text, options = {}) {
  var url = `https://api.telegram.org/bot${BOT_TOKEN}/sendMessage`;
  var payload = {
    chat_id: cid,
    text: text,
    ...options // 扩展传入的配置参数
  };
  
  var params = {
    method: "post",
    contentType: "application/json",
    payload: JSON.stringify(payload)
  };
  
  UrlFetchApp.fetch(url, params);
}

内容的提问来源于stack exchange,提问作者Saitama

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 14:03:21