gpt4 book ai didi

javascript - 从谷歌表格中的电报机器人输入数据

转载 作者:行者123 更新时间:2023-11-30 19:33:08 27 4
gpt4 key购买 nike

我想通过 telgeram bot 使用电子表格作为 TODO 列表,以便在我的手机中输入应该保存在电子表格中的内容。(我的编码就像这样 https://www.youtube.com/watch?v=XoTpdxbkGGk一切都是真的,google sheet 和 telegram bot 确实被感染了,但我不知道为什么当我在 telegram bot 中输入数据时,这不会在 google sheet 中保存任何内容。

请大家帮帮我

var token="<<BOT-TOKEN>>";
var url="https://api.telegram.org/bot" + token ;
var webAppUrl="https://script.google.com/macros/s/<<secret>>/exec";
var spId='<<secret>>';
function getme() {
var response=UrlFetchApp.fetch(url + "/getme");
Logger.log(response.getContentText());
}
function getupdates() {
var response=UrlFetchApp.fetch(url + "/getupdates");
Logger.log(response.getContentText());
}

function setwebhook() {
var response=UrlFetchApp.fetch(url + "/setWebhook?url=" + webAppUrl);
Logger.log(response.getContentText());
}

function setwebhook() {
var response=UrlFetchApp.fetch(url + "/sendMessage?chat_id=" + id + "&text" + text);
Logger.log(response.getContentText());
}

function doGet(m){
return HtmlService.createHtmlOutput("Heloo" + JSON.stringify(m));
}
function doPost(m){
var contents = JSON.parse(m.PostData.contents);
GmailApp.sendEmail(Session.getEffectiveUser().getEmail(),"Telegram Bot Update",JSON.stringify(contents,null,4));
var text = contents.message.text;
var id = contents.message.from.id;
var name = contents.message.from.first_name + ' ' + contents.message.from.last_name;
sendText(id, "HI" + name);
SpreadsheetApp.openById(spId).appendRow([new Date(),id,text,contents,name]);
SpreadsheetApp.openById(spId).appendRow([1,2,3,4,5]);
}
/*
{
"parameter": {},
"contextPath": "",
"contentLength": 310,
"queryString": "",
"parameters": {},
"postData": {
"type": "application/json",
"length": 310,
"contents": "{\"update_id\":*,\n\"message\":{\"message_id\":12,\"from\":{\"id\":*,\"is_bot\":false,\"first_name\":\"*\\*\",\"username\":\"*\",\"language_code\":\"fa\"},\"chat\":{\"id\":*,\"first_name\":\"*\\*\",\"username\":\"*\",\"type\":\"private\"},\"date\":1558331571,\"text\":\"salaaaaaaaaaaaaam\"}}",
"name": "postData"

}
*/

期望这会保存电报机器人输入的所有内容并将数据保存在谷歌表格行中。但它不会保存数据或在表格单元格中显示它们。它什么都不显示

最佳答案

在我看来,使用 App 脚本与您的电子表格进行交互并不是很灵活,如果您想扩展您的应用程序并添加更多功能,这可能不太好。

我创建了一个完整的项目,允许讲师管理他们的登记簿并从电报中获取出席情况,然后自动更新电子表格。我用的是官方Google Spreadsheet Api与 App 脚本相比,它具有出色的文档和灵活的使用。

这是 github 上项目的代码.您可以在 the modules folder 中找到我为电子表格编写函数的地方。然后在 spreadSheetController .该项目有点大,但我可以简单介绍一下它如何适合您的用例。

基本要求:

  1. 使用库与电报 api 交互,而不是自己发出 POSTGET 请求。您可以使用 node-telegram-bot-api但你可以使用 other libraries您的选择。

  2. 使用 API 验证您的 Google 电子表格。有一个很棒的quick start来自谷歌团队的按照说明进行操作,您应该有一个可编程的电子表格。我假设您将在 nodejs 中执行此操作。

一旦你掌握了这两件事,我上面链接的项目就会很有用。我希望它有所帮助,如果不清楚请告诉我我不想将所有代码粘贴到此处(它已经退出了很多)但出勤项目应该是不言自明的。

关于javascript - 从谷歌表格中的电报机器人输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56223797/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com