Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const ss = SpreadsheetApp.getActiveSpreadsheet();
- const token = 'тут ваш токен бота';
- // получаем лист по имени (start)
- const swOrder = ss.getSheetByName("Тут имя листа с заказами");
- const swWorkers = ss.getSheetByName("Тут имя листа с Работниками");
- // получаем лист по имени (end)
- // или получаем лист по Id (start)
- function getSheetById(id) {
- return SpreadsheetApp.getActive().getSheets().filter(
- function (s) { return s.getSheetId() === id; }
- )[0];
- }
- // или в новом синтаксисе со стрелочными функциями
- const getSheetById = (id) => ss.getSheets().filter(sh => sh.getSheetId() === id)[0];
- const swOrder = getSheetById(тут id листа 'Заказы');
- const swWorkers = getSheetById(тут id листа 'Штат сотрудников');
- // получаем лист по Id (end)
- // отправка в телеграмм из таблицы (start)
- function SendTelegram() {
- const ui = SpreadsheetApp.getUi();
- let activeCell = ss.getActiveCell();
- let workers = swWorkers.getRange(2, 1, swWorkers.getLastRow() - 1).getValues();
- let nameManager = activeCell.getValue();
- let flatManager = workers.flat();
- let rowManager = flatManager.indexOf(nameManager) + 2;
- let chatId = swWorkers.getRange(rowManager, 2).getValue();
- let data = swOrder.getRange(activeCell.getRow(), 1, 1, 6).getDisplayValues()[0];
- let text = `
- 🤑 ${data[1]}
- ☎️ ${data[2]}
- ℹ️ ${data[3]}
- `
- if (activeCell.getColumn() == 5 && activeCell.getRow() > 1 && activeCell.getValue() !== '') {
- let response = ui.alert('Отправить сообщение?', ui.ButtonSet.YES_NO);
- if (response == ui.Button.YES) {
- sendText(chatId, text)
- }
- }
- }
- // отправка в телеграмм из таблицы (end)
- // отправка в телеграмм после заполнения формы (start)
- function sendTelegram() {
- let lastRow = swOrder.getLastRow();
- let workers = swWorkers.getRange(2, 1, swWorkers.getLastRow() - 1).getValues();
- let nameManager = swOrder.getRange(lastRow,5).getValue();
- let flatManagers = workers.flat();
- let rowManager = flatManagers.indexOf(nameManager) + 2;
- let chatId = swWorkers.getRange(rowManager, 2).getValue();
- let data = swOrder.getRange(lastRow, 1, 1, 5).getDisplayValues()[0];
- let text = `
- 🤑 ${data[1]}
- ☎️ ${data[2]}
- ℹ️ ${data[3]}
- `
- sendText(chatId, text)
- }
- // отправка в телеграмм после заполнения формы (end)
- function sendText(chatId, text) {
- let data = {
- method: 'sendMessage',
- chat_id: String(chatId),
- text: text,
- parse_mode: 'HTML'
- };
- let options = {
- method: 'post',
- payload: data
- };
- UrlFetchApp.fetch('https://api.telegram.org/bot' + token + '/', options)
- }
Add Comment
Please, Sign In to add comment