Перейти к содержанию
Fire Monkey от А до Я

Telega π - Библиотека для работы с Telegram Bot API в Delphi


Рекомендуемые сообщения

  • Ответов 64
  • Создана
  • Последний ответ

Топ авторов темы

2 часа назад, x11 сказал:

Пожелание.

Не здесь надо писать. А на гитхабе заводить issue.

Это будет правильнее и нагляднее: сам проект лежит на гитхабе, там же значительно проще работать с багами / неудобствами.
Да и всем видеть как развивается проект - гораздо лучше.

А здесь в толпе ваших сообщений я,к примеру, уже потерялся.

 

Изменено пользователем kami
Ссылка на комментарий

Мне очень неудобно, что я не обновил статью. На самом деле с этой библиотекой произошло очень много изменений с проектом:

- переехал на битБакет: https://bitbucket.org/RareGods/cloudapi/src/master/

-  теперь там не только работа с телеграмом, но и другие сервисы

-  после выхода Delphi CE позволил себе вырезать работу с сетевыми библиотеками, отличными от System.Net. 

- пофиксил больше багов чем добавил.

 

На вскидку это все. На вопросы оперативно отвечаем в телеграм-чате : @CloudAPI. 

Ссылка на комментарий
1 час назад, rareMax сказал:

переехал на битБакет

А можно тогда запушить последнее изменение на гитхабе в Readme.md, чтобы всем было видно "ПРОЕКТ ПЕРЕЕХАЛ" ? :)

Ссылка на комментарий
3 часа назад, rareMax сказал:

  после выхода Delphi CE позволил себе вырезать работу с сетевыми библиотеками, отличными от System.Net. 

Т.е. CrossURL теперь не нужно устанавливать?

Ссылка на комментарий
8 часов назад, rareMax сказал:

- переехал на битБакет: https://bitbucket.org/RareGods/cloudapi/src/master/

Ок, переустановил.

Открыл новый проект. Кинул на форму все три компоненты. Создаю событие tgReceiverService1Update, получаю ошибку:

[dcc32 Error] Unit1.pas(33): E2003 Undeclared identifier: 'ItgUpdate'

Ссылка на комментарий

 

5 часов назад, x11 сказал:

dcc32 Error] Unit1.pas(33): E2003 Undeclared identifier: 'ItgUpdate'

Пропущен тип Telegapi.types или типа того. 

5 часов назад, x11 сказал:

 

я готов, но Вы же молчите...

Вроде писал, что оперативная поддержка в телеграм-чате осуществляется. А на сайте я не постоянно нахожусь.

10 часов назад, x11 сказал:

Т.е. CrossURL теперь не нужно устанавливать?

Да

12 часов назад, kami сказал:

А можно тогда запушить последнее изменение на гитхабе в Readme.md, чтобы всем было видно "ПРОЕКТ ПЕРЕЕХАЛ" ? :)

Ты прав, в ближайшее время напишу.

 

9 часов назад, x11 сказал:

Инструкции по установке всё равно нет.

Какие папки добавлять в lib path? И т.д.

Screenshot_2018-10-15-20-49-46-142_org.telegram.messenger.thumb.png.4a48037d7791daab844ce6e9578cdd9c.png

Максим Сысоев?:
Все еще бета версия. Не стоит меня винить, если в продакшене пойдет что-либо не так библиотекой!
⚙️GIT: https://bitbucket.org/RareGods/cloudapi/branch/develop
?ZIP: https://bitbucket.org/RareGods/cloudapi/get/develop.zip
?Установка: https://bitbucket.org/RareGods/cloudapi/wiki/Установка
?Баг-репорт: https://bitbucket.org/RareGods/cloudapi/issues/new. Регистрация необязательна.
?Delphi Community Edition: https://www.embarcadero.com/ru/products/delphi/starter (Win32/Win64/iOS/Mac/Android) FREE

Ссылка на комментарий
15 часов назад, x11 сказал:

я готов, но Вы же молчите...

У меня большая просьба: вместо кучи маленьких сообщений, которые вы пишете буквально одно за другим, составьте одно, в которое напишите всё то, что хотели сказать.

Это не чат, где "кто в онлайне - прочитали, остальным пофиг". Это форум. И искать зерна истины в этой портянке из мимолетных мыслей как минимум неудобно.

Ссылка на комментарий
В 16.10.2018 в 06:44, kami сказал:

У меня большая просьба: вместо кучи маленьких сообщений, которые вы пишете буквально одно за другим, составьте одно, в которое напишите всё то, что хотели сказать.

 

Когда будут примеры, хоть какая-то документация или описание и более менее рабочая библиотека, тогда снова можно будет протестировать.

А сейчас я даже не знаю, чем отличается OnUpdate от OnUpdates.

Ссылка на комментарий
В 15.10.2018 в 07:25, rareMax сказал:

На вопросы оперативно отвечаем в телеграм-чате : @CloudAPI

 

Там же сущий кошмар, всё одним стримом. Что-то потом найти невозможно.

Нужен какой-то форум, где будет структура, вопросы и ответы, где можно будет найти что-то в дальнейшем.

 

Ссылка на комментарий
В 21.10.2018 в 16:19, x11 сказал:

А сейчас я даже не знаю, чем отличается OnUpdate от OnUpdates.

https://www.native-english.ru/grammar/english-nouns-plural

https://core.telegram.org/bots/api#getting-updates

Ссылка на комментарий

Я понимаю твой сарказм :) но... есть 2 события у TtgRecieverUI: OnUpdate и OnUpdates.

про "Получение обновлений" читал: https://tlgrm.ru/docs/bots/api#getting-updates

но я спрашивал именно про TtgRecieverUI. Когда в канал кто-то пишет сообщение, то у TtgRecieverUI срабатывает OnUpdate, где и можно получить сообщение и др. информацию. Тогда для чего событие OnUpdates, которое не срабатывает при входящем сообщении? Когда оно срабатывает? Ведь у библиотеки пока нет документации, поэтому твой сарказм не уместен сейчас по крайней мере :)

Ссылка на комментарий
6 минут назад, x11 сказал:

Я понимаю твой сарказм :) но... есть 2 события у TtgRecieverUI: OnUpdate и OnUpdates.

про "Получение обновлений" читал: https://tlgrm.ru/docs/bots/api#getting-updates

но я спрашивал именно про TtgRecieverUI. Когда в канал кто-то пишет сообщение, то у TtgRecieverUI срабатывает OnUpdate, где и можно получить сообщение и др. информацию. Тогда для чего событие OnUpdates, которое не срабатывает при входящем сообщении? Когда оно срабатывает? Ведь у библиотеки пока нет документации, поэтому твой сарказм не уместен сейчас по крайней мере :)

Боту могут много человек одновременно писать. Для этого от сервера возвращается не один объект Update, а массив таких объектов. 

Событие OnUpdates - возвращает скоп таких обновлений. Событие OnUpdate - перебирает массив и вызывается для каждого элемента(массива)

Для чего: OnUpdate - тебе не придется запускать цикл, ты работаешь напрямую с объектом. OnUpdates - был случай, когда необходимо было этот массив событий отправить в TParallel.For. Раз понадобился мне - возможно и вам понадобится. 

Ссылка на комментарий

По идее, OnUpdates в любом случае должно срабатывать, даже если приходит одно сообщение. Только там будет количество = 1. Я так понимаю, что у вас запрограммировано только есть > 1?

Ссылка на комментарий
2 минуты назад, x11 сказал:

По идее, OnUpdates в любом случае должно срабатывать, даже если приходит одно сообщение. Только там будет количество = 1. Я так понимаю, что у вас запрограммировано только есть > 1?

procedure TTgBotUpdateParser.EventParser(AUpdates: TArray<ItgUpdate>);
var
  LUpdate: ItgUpdate;
begin
  DoOnUpdates(AUpdates); // Вызывает OnUpdates
  for LUpdate in AUpdates do // Перебираем массив
  begin
    DoOnUpdate(LUpdate); // Вызываем OnUpdates
    TypeUpdate(LUpdate); // Определяем тип обновления и вызываем соответствующее событие
  end;
end;

 

Ссылка на комментарий
а для отправки сообщения от бота - пользователю Телеграма, нужны какие-то специфические ключи?
или перед отправкой я должен что-то выполнить?
 
выполняю:
TelegramBot1.SendMessage(UserLink, edMsgText.Text);

 

 
получаю: (401) Unauthorized: wrong token specified

 

Ссылка на комментарий
21 минуту назад, x11 сказал:
а для отправки сообщения от бота - пользователю Телеграма, нужны какие-то специфические ключи?
или перед отправкой я должен что-то выполнить?
 
выполняю:

TelegramBot1.SendMessage(UserLink, edMsgText.Text);

 

 
получаю: (401) Unauthorized: wrong token specified

 

Токен указан?

 

Ссылка на комментарий

да, я данные из чата и личные сообщения от пользователей получаю

вот, RAW из события OnUpdate

Цитата

OnUpdate RAW:

{"update_id":519749xxxxx,"message":{"message_id":21,"from":{"id":63618xxxx,"is_bot":false,"first_name":"X11","last_name":"xxx","username":"X11","language_code":"ru-RU"},"chat":{"id":63618xxxx,"first_name":"X11","last_name":"xxx","username":"X11","type":"private"},"date":1540293272,"text":"\u043F\u0440\u0438\u0432\u0435\u0442, \u0431\u043E\u0442"}}

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...