Отправка сообщений из Google таблиц в телеграм + БОНУС!!!
HTML-код
- Опубликовано: 6 фев 2025
- 💲 От вас зависит будущее канала!!! Если вы хотите отблагодарить автора, сделать это можно по ссылке: www.donational...
Скрипт отправки сообщений из Google Таблиц в телеграм!
Сохранение первой и последней даты изменения в таблице!!!
✅ Подписаться на канал: www.youtube.co...
Ссылка на скрипт: wall242...
Не знаю почему, но ютуб блокирует некоторые нормальные комментарии. В уведомлениях сначала видно, но потом пропадают.
Со мной связаться можно в вконткте по адресу vk.com/danielferruzo
либо в телеграм: @Biowollf
спасибо огромное за урок.
Все работает большое спасибо, для меня очень помогло так как я не программист вообще, можно как то фото помимо текста отправлять ? может подсказать.
Молодца👍 все понятно
Спасибо, для вас старался)
Здравствуйте. А можно точно также с excel?
@@tomyvony1533 с Excel не пробовал. Думаю, вряд ли. Там нет прямого подключения к интернету
👍. В топ
👍👍👍
Подскажите какой скрипт использовать что бы не тянуло дату изменений а просто отправляло сообщение из редактируемого столбца?
Добрый день. Спасибо за видео. Фактически, задача описанная в видео выполняется, но есть вопрос. Я не так давно стал проявлять интерес к Google Apps Script и мне интересно зачем так тщательно собирается строка в переменную "url" если она в дальнейшем никак не используется? Вероятно она была предназначена для формирование Get запроса, который так и не был реализован. Ведь отправка сообщения в данном видео осуществляется при помощи метода POST если я ничего не перепутал. Тогда и переменная text не нужна. Скрипт работает прекрасно и без них.
тоже не понял, возможно это хвосты от предыдущих вариантов, без них прекрасно работает. автору спасибо за подробное видео.
Спасибо за видео! Скажите, пожалуйста, можно ли с помощью Apps Scripts гугл таблиц реализовать такой телеграмм-бот, чтобы он присылал пользователю данные из гугл таблице по соответствующему запросу? То есть пользователь вводит какое-то сообщение боту (например, торт), бот ищет в определенной колонке строку в таблице, где есть слово "торт", переходит в нужную колонку и возвращает обратно пользователю содержание той ячейки (например рецепт торта). Если введёт "компот", то вернет рецепт компота и так далее.. То есть по сути пользователь вводит своеборазный id строки, а в ответ получает содержание определенной ячейки, соответствующее этому id.
Добрый день. Чуть раньше меня просили реализовать такой функционал. Судя по гуглу это вполне реально сделать,но жаль,что основная работа занимает большую часть дня,что на это времени не хватает
Привет, хочу присобачить это к appsheet, но тут прикол такой. - Appsheet через визуальную часть меняет данные в гугл таблице, но уведомление не приходит, а если вручную то да, все ок)
сейча с пишу бота по твоей интсрукции, очень надеють что все выйдет, потому что я понятия не имею что за язык ты юзаешь)
Автору огромное спасибо. Если изменять в самой таблице все работает без нареканий. Но тут момент: Использую этот лист для сбора гугл-форм. Соответстенно планировал, чтобы при заполнении гугл формы приходило уведомление. Если просто изменять ячейку - отправляет. Если же заполняется гугл-форма с тем же текстом в нужной ячейке - нет сообщения. Возможно подскажите, как решить проблему?
Здравствуйте, как решили проблему?
@@grifffon1044 к сожалению, без стороннего сервиса так и не нашел как это делается. На одну таблицу можно сделать бесплатно как в данном видео ruclips.net/video/62S2Yjej8Sc/видео.html но в таблицах потом постоянно выскакивает предупреждение.
Все сделал по видосу, работало нормально в течении полугода. В марте перестало работать, пишет: TypeError: Cannot read properties of undefined (reading 'range'). Что можно с этим сделать?
Тут в комментариях уже говорилось, что запуск кода работает только если вносить изменение в заданной таблице,а не прям в самом коде через кнопку "выполнить". Через эту кнопку в самом коде всегда выдаёт ошибку.
Если вы не меняли ничего в коде.
Если вы не меняли имя листа таблицы.
У вас либо слетели разрешения на развёртывание - сделайте заново.
Также сделайте заново триггер.
Проверьте бот в другом чате, если не помогло.
Ещё раз проверьте код.
@@WayGames мерси
@@АнтонВласов-т6ю всегда пожалуйста. Обращайтесь
Круто, можешь запилить видео с телебот викториной
У меня работает, но не совсем так, как нужно. Он присылает сообщение, если конкретно в ячейке изменить что-то. А если в ячейку вставить формулу в которой меняются значения за счёт других ячеек, то ничего не происходит, когда изменяешь
Не так, как нужно, но так,как задумано.
Данный код не работает с формулами. Он работает только при изменении самого значения в ячейке.
Возможно, вам стоит свою формулу из таблицы как-то применить непосредственно в самом коде в условиях
Подскажите есть ли возможность делать таким или похожим образом рассылку в личные сообщения телеграмм юзерам? То есть, есть Гугл таблица с телеграмм юзернеймами, для каждого юзера свое сообщение и триггером "Да" отправлять с личного аккаунта телеграмм эти сообщения с таблицы
Только через бот. Этот бот юзеры должны себе добавить
Подскажите, если в таблицах есть несколько листов и они постоянно добавляются, как сделать возможность отправки в бота сообщения об обновлении информации на любом листе гугл таблицы?
Это не пробовал, но попытайтесь убрать условие с названием листа. Все,что связано с ws удалите и попробуйте
Вот я еще в жизни не был так озадачен, какую оценку поставить)) Ролик полезный? - Однозначно, я за 20 мин первый раз с этим столкнувшись, увидел основы и свою задачу решил. Но как же подгорало, от видео где человек, нереально далекий от программирования, что-то объясняет. Тут намешана куча копипасты, леты с варами, переменные которые нигде не используются, передача клавиатуры которой нет... вообщем ад и треш. Новичкам в программировании, категорически не рекомендовано.
При чем человек не отрицает, что очень далек от программирования и на титул программиста не претендует. Решил свою задачу и поделился ею. Буду рад, если объясните ошибки подробнее. Спасибо
@@WayGames Я ни в коем случае не принижаю автора, более того, это видео помогло мне очень быстро разобраться в своей задаче. по ошибкам:
1. Используется объявление переменной var (является устаревшим, допустим человек учил js давно, но следом идет современный let)
2. Формируется переменная url (если этот урл запросить, как раз сообщение и уйдет, но она не используется, потому что , используется отдельная функция sendText)
3. sendText принимает параметр keyboard и использует его (в задаче нет необходимости использовать кнопки), но сам параметр в нее не передается.
Это только что бегло бросилось в глаза, при просмотре по диагонали... Лайк, кстати поставил)
@@kindDaddy сможете упростить этот код, как положено, без лишнего мусора?
@@WayGames можно, но не нужно) Потому как работать не будет. В текущей версии apps script, onEdit не может вызывать UrlFetchApp. А если делать триггер, то не будет доступа к объекту event (то самое "е" откуда берется адрес измененной ячейки). Надо полностью всю логику переделывать.
Футбол посматриваешь на пиратских сайтах 😊
добрый день! а подскажите, пожалуйста, каким образом можно передавать изменения по нескольким ячейкам? чтобы отправка запроса производилась только после заполнения всех ячеек или крайней?
заранее огромное спасибо
Делаете несколько переменных, куда собираете информацию и путём дублирования кода отправки сообщений - отправляете несколько сообщений. Если в одном сообщений данные из разных ячеек, то просто путём добавления новых переменных в код отправки сообщений.
А вот про заполнение и крайнюю ячейку,то надо менять полностью логику. К примеру построить логику подсчёта заполненных строк и если их будет больше,чем в прошлый раз - отправлять сообщение. Как-то так
Подскажите по поводу формул. Если вся страница является макросом и подтягивает инфу из другой таблицы, можно ли как то отправлять сообщения в телеграмм?
Как же хотел все время громкости вам прибавить ... эххх
Спасибо! Не пробовал сделать такое для 2х столбцов в одной таблице? Не могу обойти ограничение в одну функцию OnEdit(
Попробуй в onEdit() добавить условный оператор if и if else. Я так подстраивал свою функцию onEdit под несколько своих условий.
Если вы имеете в виду про изменения в двух и более столбцах, то это очень просто
@@WayGames Подскажи, пожалуйста как.
@@vinegarilla покопайся в условиях. Измени под себя. Примерно if (col >= targetColumn && row >= startRow && e.source.getActiveSheet().getName() === ws){
if(e.source.getActiveSheet().getRange(row,col).getValue() == "Да")
тут смысл ЕСЛИ СТОЛБЕЦ В КОТОРЫЙ ВНОСИШЬ ИЗМЕНЕНИЯ БОЛЬШЕ ИЛИ РАВЕН 2 ( 2 -это значение, которое мы присвоили переменной targetColumn. Туда можешь любое значение присвоить) И СТРОКА, В КОТОРУЮ ВНОСИШЬ ИЗМЕНЕНИЯ БОЛЬШЕ ИЛИ РАВЕН 2 (тут тот же принцип переменной) И ИМЯ ЛИСТА РАВНЯЕТСЯ -WS (значению, которое мы присвоили к ws)
Потом идет подУсловие:
ТАкже если значение (getValue) в диапазоне (getRange), в который мы вносим изменения (row,col) равняется "Да", то условие выполняется.
PS row и col - это строка и столбец (соответственно) ячейки, в которую мы вносим изменения
Здравствуйте! Как связатьcя?
Добрый день! Подскажите пожалуйста, в чем может быть проблема? Все сделал, код отработал, в количестве выполнений нет ошибок, но сообщение в телеграмм не приходит, и в таблице даты не указываются, я понимаю, что ошибка в самом начале, но найти не могу
Надо сам код видеть
Все четко но есть одно но если вставлять через ctrl+V сообщение не улетает
Только что проверил. Отлично все работает через ctrl+V, даже если делать вставку в УЖЕ заполненную ячейку (что стало для меня приятным сюрпризом)
Покопайтесь в коде
@@WayGames вставка не в ячейку в строку
@@WayGames пример бинд на 10 колонку и вставка строки до десятой колонки , скрипт не пашет. а если сделать изменения только в десятой колонке все норм
@@СтаниславАлександровичВинокуро то есть вы вставляете несколько строк?
Этот код отправная точка. Он очень простой и не был расчитан даже на вставку в ячейку,хотя это и сработало на удивление.
В вашей проблеме интересно было бы разобраться при наличии свободного времени
@@WayGames смотрите, Получается я убрал вставку даты оставил только изменение в ячейке. При любом изменении ячейки даже вставке улетает сообщение. Но если скопировать две ячейки и вставить чтобы одна попала в диапазон проверки сообщение не улетает, но изменение происходит.
Добрый день
Подскажите, почему в телеграмм задваивается сообщение (приходит два раза). С чем это может быть связано?
Надо видеть ваш код
@@WayGames как бы его прислать ))))
И еще один вопрос: у вас в столбце Е таблицы прописан ID чата. Возможно ли чтобы код брал этот ID из таблицы и в зависимости от выбранной компании отправлял в нужный чат сообщение.
@@msgroup8063 в телеграм скиньте
@@WayGames подскажите пожалуйста Ваш ТГ?
@@msgroup8063 t.me/Biowollf
К сожалению, попробовал запустить данный код - сыпет ошибками =С, естественно токены и ид чата сменил...
Точно что-то не так поставили
Здравствуйте у меня к вам такой вопрос, могу-ли внести изменения, чтобы актуальное цифра и наименование товара приходило как смс, буду очень рад и благодарен за ваш ответ! И кончено видос получилось очень объяснимым и наглядным
Конечно. Вы можете отправлять любую информацию из таблицы в виде смс
@@WayGames спасибо за ответ, могли дать ориентир?Что и где нужно поменять или алгоритм, буду очень рад и благодарен!
@@AzamatZhanalin скинь ссылку на таблицу и скажи, какие именно данные нужно отправить
@@WayGames Пожалуйста сможете отправить свой ник в телеграмме?
@@AzamatZhanalin t.me/Biowollf
Столбцы нумеруются с 0-го
Обязательно покажите результат
Может кто подскажет, как можно реализовать отправку сразу в несколько чатов. Просто нужно оповещать группу людей об изменениях в событии, но пока получается отправить только одному человеку (
Самый простой способ - посмотрите, где используется chatId
Создайте chatId2, к примеру,которому присвоите АйДи второго чата. Скопируйте тот код,где используется chatId, соответственно,заменяя его на chatId2.
Конечно,возможны менее массивные варианты,но этот вам подойдёт
СУПЕР!
А как сделать так, что бы точно так же высылались сообщения, но не из-за изменений, вносимых пользователем в нужный столбец, а из-за изменений, вносимых сторонними программами в нужный столбец?
Сам не пробовал,но есть подписчики,которые поделились методами
@@WayGames прочитал все коменты и не нашел по этой теме ответа.
лично я пока остановился на таком решении:
стороннее приложение добавляет дату и время, когда оно вносит изменение, а цикл сравнивает эту дату с new Data -5 мин и триггерится каждые 5 мин. всё, что >= этому значению, отправляется в сообщение.
Хотелось бы более элегантно
@@АлексейАлексей-я6и8э напишите в телеграм. Перешлю. t.me/Biowollf
Вот та же проблема! В google таблицу отправляются данные из google формы, и они не пересылаются в телеграмм (только если вручную меняю данные в таблице). Подскажите, пожалуйста, как решить эту задачу?
@@EugenoDel если будете знать решение, ответь те пожалуйста)
Но зато все понятно :)))
чет не работает(
Сделай видео как из бота делать запросы в таблицу. Пожалуйста
Подробнее,пожалуйста
@@WayGames у тебя в видео потригеру из таблицы в бота, сделай плиз как командой из боты запрашивать данные из таблицы)
@@СтаниславАлександровичВинокуро то есть бот берёт все данные из чата и переносит в таблицу?
@@WayGames нет к примеру я пишу запрос боту, а он отправляет запрос в таблицу и получает строку и отправляет её обратно
@@WayGames скорее всего речь о цепочке сценария. В таблице список ответов на команды/запросы к боту. При получении команды бот идет в таблицу за нужной строчкой и отвечает юзеру. Мне бы тоже в этом разобраться. И чтоб бот просил фото и гео. Пример @on_off_taxibot
Вот тоже плохо слышно :)
Но вас тоже еле слышно
Возможно. Видео не подходит ехь людей со слабым слухом))
@@WayGames не понял как после getresult на страничке появился весь код 3 минута 25 секунда
@@db2950 страницу обновили через клавишу f5