Добрый день, подскажите как сделать/что посмотреть, почитать.
Хочу сделать, что-бы телеграм бот которого я сделал с помощью
BotFather + ManyBot
отправлял данные из формы опроса данные в гугл таблицы.
У него есть разные пункты меню, опрос один из них.
Суть в том, что я хочу
ставить задачи людям и отчет принимать в телеграм в виде опроса (пошаговая форма)
и структурировать это в гугл таблицы.
Возможно есть более адекватные и
не сложные
варианты приёма/проверки отчетов?
Общение будет в телеге, не хочу, что-бы люди выходили в какие-то ЦРМ или приложения, это не удобно будет.
Из языков только немного в JS разбираюсь.
Сейчас проблема скрипта в том, что если я его подключаю к боту, то не работают все его менюшки, а работает он только с этим скриптом в гугл доках.
var token = "880958063:qqqqqqqqqqqqqqqqqqqqqqq";
var telegramUrl = "https://api.telegram.org/bot" + token;
var webAppUrl = "https://script.google.com/macros/s/qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq/exec";
var ssId = "qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq";
function getMe() {
var url = telegramUrl + "/getMe";
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
function setWebhook() {
var url = telegramUrl + "/setWebhook?url=" + webAppUrl;
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
function sendText(id,text) {
var url = telegramUrl + "/sendMessage?chat_id=" + id + "&text=" + text;
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
function doGet(e) {
return HtmlService.createHtmlOutput("Hi there");
}
function doPost(e) {
// this is where telegram works
var data = JSON.parse(e.postData.contents);
Logger.log(data);
var text = data.message.text;
var id = data.message.chat.id;
var name = data.message.chat.first_name + " " + data.message.chat.last_name;
var answer = "Hi " + name + ", thank you for your comment " + text;
sendText(id,data);
SpreadsheetApp.openById(ssId).getSheets()[0].appendRow([new Date(),id,name,text,answer]);
if(/^@/.test(text)) {
var sheetName = text.slice(1).split(" ")[0];
var sheet = SpreadsheetApp.openById(ssId).getSheetByName(sheetName) ? SpreadsheetApp.openById(ssId).getSheetByName(sheetName) : SpreadsheetApp.openById(ssId).insertSheet(sheetName);
var comment = text.split(" ").slice(1).join(" ");
sheet.appendRow([new Date(),id,name,comment,answer]);
}
}