easy 0 Опубликовано: 14 ноября 2019 Share Опубликовано: 14 ноября 2019 А за оплату, могли бы как то наглядно показать, как из приложения (ios) перенаправлять сигналы в телеграм канал, учитывая что в приложение входишь по паролю, и туда приходят сигналы, доступ к приложению есть Цитата Ссылка на сообщение Поделиться на других сайтах
Геннадий 0 Опубликовано: 15 декабря 2019 Share Опубликовано: 15 декабря 2019 07.11.2019 в 00:05, Spawnox сказал: Хотел уточнить. А он может сразу с нескольких чатов пересылать сообщения или только с одного брать в другой отправлять? Привет! Прежде всего хочу поблагодарить Автора, Админа, который дал решение! Был так благодарен, что решил разобраться и помочь ему с кодом. День затратил, чтобы доработать этот код, не зная языка вообще, вот что получилось: Для того, чтобы можно было с нескольких чатов пересылать сообщения, нужно некоторые переменные добавить, некоторые убрать. SumChat - это колличество чатов, которые вы хотите пересылать, не знал как сделать, чтобы этот вопрос можно было вбивать там, поэтому вручную в коде меняйте это значение. вместо choosen_chat_id заменил на два массива. chat_ids = [] chats = [] x=0 choosen_chat_idA = [] target_chat_idB = [] sumChat = 6 i=0 Выделяем этот код в старом варианте и заменяем на новый: if event['@type'] == 'updateNewMessage' and event['message']['chat_id'] == choosen_chat_id: message_type = event['message']['content']['@type'] print("*"*80) print("Получено:", message_type) print("-"*80) if message_type == 'messageText': message_text = event['message']['content']['text']['text'].translate(non_bmp_map) print(message_text) td_send({'@type':'sendMessage', 'chat_id':target_chat_id, 'input_message_content': { '@type': 'inputMessageText', 'text': { '@type': 'formattedText', 'text': message_text }}} ) print("-"*80) print(event) print("*"*80) if event['@type'] == 'chat': title = event['title'].translate(non_bmp_map) print('Получен чат', len(chats), title, event['id']) chats.append({'title': title, 'id': event['id']}) if len(chats) == len(chat_ids): chat_id = int(input('Выберите чат для мониторинга (1 - {m_ch})'.format(m_ch=len(chats)))) print("Выбран чат", chats[chat_id]) choosen_chat_id = chats[chat_id]['id'] chat_id = int(input('Выберите чат для пересылки (1 - {m_ch})'.format(m_ch=len(chats)))) print("Выбран чат", chats[chat_id]) target_chat_id = chats[chat_id]['id'] if target_chat_id == choosen_chat_id: print("Нельзя два раза выбрать одно и то же!!!!") break И вместо него вставляем это: if event['@type'] == 'updateNewMessage': i=0 while i < sumChat: if event['message']['chat_id'] == choosen_chat_idA[i]: print("range(choosen_chat_idA): ", choosen_chat_idA[i]) message_type = event['message']['content']['@type'] print("*"*80) print("Получено:", message_type) print("-"*80) if message_type == 'messageText': message_text = event['message']['content']['text']['text'].translate(non_bmp_map) print(message_text) td_send({'@type':'sendMessage', 'chat_id':target_chat_idB[i], 'input_message_content': { '@type': 'inputMessageText', 'text': { '@type': 'formattedText', 'text': message_text }}} ) print("-"*80) print(event) print("*"*80) i+=1 if event['@type'] == 'chat': title = event['title'].translate(non_bmp_map) print('Получен чат', len(chats), title, event['id']) chats.append({'title': title, 'id': event['id']}) for x in range(sumChat): if len(chats) == len(chat_ids): chat_id = int(input('Выберите чат для мониторинга (1 - {m_ch})'.format(m_ch=len(chats)))) print("Выбран чат", chats[chat_id]) choosen_chat_idA.append(chats[chat_id]['id']) chat_id = int(input('Выберите чат для пересылки (1 - {m_ch})'.format(m_ch=len(chats)))) print("Выбран чат", chats[chat_id]) target_chat_idB.append(chats[chat_id]['id']) if target_chat_idB[x] == choosen_chat_idA[x]: print("Нельзя два раза выбрать одно и то же!!!!") break Цитата Ссылка на сообщение Поделиться на других сайтах
Геннадий 0 Опубликовано: 20 декабря 2019 Share Опубликовано: 20 декабря 2019 нашёл незначительную ошибку: if event['@type'] == 'updateNewMessage': i=0 while i < sumChat: if event['message']['chat_id'] == choosen_chat_idA[i]: вставьте вот эту строчку выделенную жирным: while i < sumChat: #print("range(choosen_chat_idA)["+i+"]: ", choosen_chat_idA[i]) if len(choosen_chat_idA) !=0: if event['message']['chat_id'] == choosen_chat_idA[i]: Цитата Ссылка на сообщение Поделиться на других сайтах
Modik 0 Опубликовано: 25 декабря 2019 Share Опубликовано: 25 декабря 2019 Добрый день. При запуске скрипта автора, так же как и при запуске образца из папки examples выдает следующую ошибку: Traceback (most recent call last): File "D:\code\Telegram\src\td\example\python\tdjson_example.py", line 18, in <module> tdjson = CDLL(tdjson_path) File "D:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\ctypes\__init__.py", line 364, in __init__ self._handle = _dlopen(self._name, mode) OSError: [WinError 126] Не найден указанный модуль Файл tdjson.dll пробовал как свой, скомпилированный, так и из файлов автора. Пробовал в коде указать путь к tdjson.dll напрямую - результат тот же...Есть идеи как можно решить эту проблему? А то уже 2 дня убил и ничего не выходит 🙂 Цитата Ссылка на сообщение Поделиться на других сайтах
admin 72 Опубликовано: 27 декабря 2019 Автор Share Опубликовано: 27 декабря 2019 25.12.2019 в 17:58, Modik сказал: Добрый день. При запуске скрипта автора, так же как и при запуске образца из папки examples выдает следующую ошибку: Traceback (most recent call last): File "D:\code\Telegram\src\td\example\python\tdjson_example.py", line 18, in <module> tdjson = CDLL(tdjson_path) File "D:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\ctypes\__init__.py", line 364, in __init__ self._handle = _dlopen(self._name, mode) OSError: [WinError 126] Не найден указанный модуль Файл tdjson.dll пробовал как свой, скомпилированный, так и из файлов автора. Пробовал в коде указать путь к tdjson.dll напрямую - результат тот же...Есть идеи как можно решить эту проблему? А то уже 2 дня убил и ничего не выходит 🙂 У вас может не хватать какого-то модуля, который вызывается в процессе. Скачайте программу dependency walker, она покажет какой либы не хватает Цитата Ссылка на сообщение Поделиться на других сайтах
komatera 1 Опубликовано: 14 января 2020 Share Опубликовано: 14 января 2020 (изменено) 27.12.2019 в 16:21, admin сказал: У вас может не хватать какого-то модуля, который вызывается в процессе. Скачайте программу dependency walker, она покажет какой либы не хватает А как его использовать? У меня правда такая ошибка... ====================================================== RESTART: C:\Telegram\Resend\main.py ====================================================== Traceback (most recent call last): File "C:\Telegram\Resend\main.py", line 25, in <module> tdjson = CDLL(tdjson_path) File "C:\Users\novikov_a\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 373, in __init__ self._handle = _dlopen(self._name, mode) FileNotFoundError: Could not find module 'C:\WINDOWS\system32\tdjson.dll'. Try using the full path with constructor syntax. Файл в system32 лежит, если что... А также изначально не вышло зарегистрировать библиотеку, типо модуль не найден. Win10x64-1909 P.S. Отвечу сам себе. Я, идиот эдакий, не поместил в system32 остальные dll. Посыпаю голову пеплом за невнимательность. Изменено 14 января 2020 пользователем komatera 1 Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 23 января 2020 Share Опубликовано: 23 января 2020 (изменено) Все работает. Еще бы сделать отправку в несколько чатов. Изменено 25 января 2020 пользователем terpevt Решил проблему. Цитата Ссылка на сообщение Поделиться на других сайтах
Modik 0 Опубликовано: 24 января 2020 Share Опубликовано: 24 января 2020 Вроде смог запустить бота. Очень хотелось бы, чтобы он еще пересылал картинки Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 25 января 2020 Share Опубликовано: 25 января 2020 15.12.2019 в 17:22, Геннадий сказал: Для того, чтобы можно было с нескольких чатов пересылать сообщения, А как сделать, чтобы наоборот в несколько чатов пересылать? Цитата Ссылка на сообщение Поделиться на других сайтах
BigLord 0 Опубликовано: 26 января 2020 Share Опубликовано: 26 января 2020 А кто-нибудь может подсказать, как всё таки решить вопрос по пересылки картинок? Очень нужно. Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 26 января 2020 Share Опубликовано: 26 января 2020 10.11.2019 в 13:30, admin сказал: Вообще он может всё то же самое, что и вы через официальный клиент Telegram Отличный бот. Спасибо. Подскажите, как можно бота заставить править некоторые сообщения, если они имеют одинаковое наполнение. Например, сначала пришло сообщение в котором текст "Петров - козел", через несколько сообщений пришло сообщение "Петров - козел и дурак", можно сделать, чтобы бот второе сообщение про петрова не новым отправлял, а правил старое. Также в тексте этих сообщений имеются одинаковые даты и время. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Aleksey.G 0 Опубликовано: 28 января 2020 Share Опубликовано: 28 января 2020 Автор красавчик за что ему отдельное спасибо!!! всю ночь мудохал сервер в результате на этом месте у меня не компилировалось и не создавалось ничего...получил ошибки на вот этом месте 28.01.2019 в 17:57, admin сказал: Теперь давайте попробуем собрать исходники в работающую библиотеку. Для этого запустим командную строку (cmd), в ней выполним следующие команды: cd C:\code\examples\telegram\src\cmake cmake -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake -A x64 .. cmake --build . --config Release Цитата -- Configuring incomplete, errors occurred! See also "C:/code/examples/telegram/src/CMake/CMakeFiles/CMakeOutput.log". See also "C:/code/examples/telegram/src/CMake/CMakeFiles/CMakeError.log". в итоге просто скачал готовое решение по ветке ниже и все настроил) работает без проблем Имею все же смелость спросить, уточняю что в программировании я полный Зеро))) Скажите, можно ли из сообщения которое мы копируем удалять определенные слова? Такс сказать бот копирует сообщение, далее редактирует и после публикует его Заранее спасибо Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 29 января 2020 Share Опубликовано: 29 января 2020 28.01.2020 в 12:30, Aleksey.G сказал: Имею все же смелость спросить, уточняю что в программировании я полный Зеро))) Скажите, можно ли из сообщения которое мы копируем удалять определенные слова? Можно. Попробуй, что-то вроде if 'слово' in message_text: message_text = message_text.replace('слово' , '') Найди в комментах описание про фильтр и вставляй туда же. Между print(message_text) и td_send. Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 1 февраля 2020 Share Опубликовано: 1 февраля 2020 Навряд ли кто-то прочтет. Но бот внезапно перестал работать и больше не запускается. Цитата Ссылка на сообщение Поделиться на других сайтах
Aleksey.G 0 Опубликовано: 6 февраля 2020 Share Опубликовано: 6 февраля 2020 01.02.2020 в 16:49, terpevt сказал: Навряд ли кто-то прочтет. Но бот внезапно перестал работать и больше не запускается. не навряд ли))) а прочтет...такая же фигня Цитата Ссылка на сообщение Поделиться на других сайтах
terpevt 1 Опубликовано: 6 февраля 2020 Share Опубликовано: 6 февраля 2020 4 минуты назад, Aleksey.G сказал: не навряд ли))) а прочтет...такая же фигня Помог запуск через впн. ProtonVPN бесплатный вполне для этого подошел. Цитата Ссылка на сообщение Поделиться на других сайтах
Epmak 0 Опубликовано: 10 марта 2020 Share Опубликовано: 10 марта 2020 Добрый день. А как можно пропустить первый этап? Я пытался его выполнить, но застрял на двух моментах, а именно: 28.01.2019 в 22:57, admin сказал: Потом нужно будет добавить путь в переменные окружения: и в конце на командной строке Цитата Ссылка на сообщение Поделиться на других сайтах
admin 72 Опубликовано: 14 марта 2020 Автор Share Опубликовано: 14 марта 2020 10.03.2020 в 12:02, Epmak сказал: Добрый день. А как можно пропустить первый этап? Я пытался его выполнить, но застрял на двух моментах, а именно: и в конце на командной строке Просто пролистайте дальше, скачайте готовые файлы и запустите ) Цитата Ссылка на сообщение Поделиться на других сайтах
MOl 0 Опубликовано: 6 апреля 2020 Share Опубликовано: 6 апреля 2020 Добрый вечер, админ у меня проблема пока только на первом шаге. Как вы указали нужно изменить среду, то есть добавить GnuWin, после загрузке а далее запуска программы, происходит следующее: появляется окно (командной строки) и моментом исчезает, в итоге программ описанная выше не открывается, но она установилась. от сюда следует, что работать дальше я не могу так как, моя командная строка не видит дальнейший шаг(картинка 2) Цитата Ссылка на сообщение Поделиться на других сайтах
admin 72 Опубликовано: 7 апреля 2020 Автор Share Опубликовано: 7 апреля 2020 16 часов назад, MOl сказал: появляется окно (командной строки) и моментом исчезает, в итоге программ описанная выше не открывается, но она установилась. от сюда следует, что работать дальше я не могу так как, моя командная строка не видит дальнейший шаг(картинка 2) Она и не должна запускаться, она нужна будет другим скриптам в дальнейшем. У вас ругается на cmake, его нужно будет установить (там дальше в статье это есть и ссылка). На данном этапе вы просто добавили путь к gnuwin и должны продолжать устанавливать всякие программы дальше. Либо взять готовые либы из п.3 и не париться) Цитата Ссылка на сообщение Поделиться на других сайтах
MOl 0 Опубликовано: 7 апреля 2020 Share Опубликовано: 7 апреля 2020 дело в том, что я его установил Цитата Ссылка на сообщение Поделиться на других сайтах
davidfox200 1 Опубликовано: 7 апреля 2020 Share Опубликовано: 7 апреля 2020 Подскажите что делать дальше. Дошел до момента Enter code, мне пришёл код на ТГ, после чего нажимаю Enter, и глухо В папке telegram создается две папки, общий вес которых 104 кб. Пробовал скачивать VPN, так же не помогло. Что делать? Есть ли решение? 1 Цитата Ссылка на сообщение Поделиться на других сайтах
zamok 0 Опубликовано: 17 апреля 2020 Share Опубликовано: 17 апреля 2020 07.04.2020 в 20:17, davidfox200 сказал: Подскажите что делать дальше. Дошел до момента Enter code, мне пришёл код на ТГ, после чего нажимаю Enter, и глухо В папке telegram создается две папки, общий вес которых 104 кб. Пробовал скачивать VPN, так же не помогло. Что делать? Есть ли решение? Та же проблема( Подскажите что делать... 😭 Цитата Ссылка на сообщение Поделиться на других сайтах
Myste 0 Опубликовано: 23 апреля 2020 Share Опубликовано: 23 апреля 2020 Хочу сказать спасибо админу. Бот реально рабочий. Но можно как-то сделать так что б бот сам редактировал сообщение? Пример: В другом канале написали пост. Бот это увидел, разослал всем кому я выбрал. Потом тот пост изменили/редактировали. И мой бот тоже изменил сообщение. Заранее спасибо за помощь Цитата Ссылка на сообщение Поделиться на других сайтах
Mariaati 0 Опубликовано: 26 апреля 2020 Share Опубликовано: 26 апреля 2020 Спасибо автору за интересное и рабочее решение! Но у меня возникли затруднения - при регистрации приложения ошибочно указали не ту платформу (Андроид). Плюс ко всему очень много контактов (больше 100). Итого - компилится, код ввожу и глухо. Потом приходит сообщения о том, что доступ не предоставлен. Вопрос: проблема в неверном выборе платформы? и, если это так, есть ли возможность это изменить? пока вообще не пойму как это можно сделать (когда снова захожу в API Telegram, вижу ключи. названия приложения и коды для прокси, а поля выбора платформы нет!!!) Или проблема в том, что контактов много? Заранее благодарю всех кто откликнется! Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.