powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Просто Трёп [закрыт для гостей] / Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
12 сообщений из 12, страница 1 из 1
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628594
skerebator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован]
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628597
Ли Крэйг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LOL

что может этот бот?
- догадайся, сам (С)

телеграм должен быть уничтожен, вместе с его создателями

ГОВНО
...
Изменено: 25.11.2023, 03:51 - Ли Крэйг
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628602
skerebator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован]
Ли Крэйг  25.11.2023, 03:51
[игнорируется]
LOL

что может этот бот?
- догадайся, сам (С)

телеграм должен быть уничтожен, вместе с его создателями

ГОВНО
Кролочат говно, это да. Автор потому что на астрологии помешался.
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628605
Коди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
всё, расходимся
у пашэ очередной приступ бешеной шизофрении
...
Изменено: 25.11.2023, 03:54 - Коди
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628608
skerebator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован]
Коди  25.11.2023, 03:54
[игнорируется]
всё, расходимся
у пашэ очередной приступ бешеной шизофрении
Астролога Дуров похоже не уважает.
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628616
Джон Уайт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у тебя уровень глупой склочной бабы, как и у пиздунова
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628620
skerebator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован]
Джон Уайт  25.11.2023, 03:58
[игнорируется]
у тебя уровень глупой склочной бабы, как и у пиздунова
Я вижу у тебя на уровнях какое-то помешательство.
Наверное у тебя большое желание находиться на высоком уровне.
Вот об уровнях ты и пиздишь постоянно.
Но жизнь не одарила тебя даже умением формулировать мысли письменно, не говоря уже об умении что-то создавать, кроме косохуего недософта и прочих поделок для ебанатов.
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628874
Умник^практик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skerebator  25.11.2023, 03:48
[игнорируется]
эта библ botlib древняя ж (а в древности на C много чего)
реализ чат-протоколы IRC из 80-х (XMPP из 90-х)

для всяrой всячины прилажена
https://github.com/botlib?ysclid=lpdswd4wc4464768053
ну и для Телеграм

под Python тоже
https://pythonhosted.org/botlib/

...

там "боты" - это с подкл Гугл-Ассистент, Сири (Эппл), Алекса (Амазон), ...
...
Изменено: 25.11.2023, 12:21 - Умник^практик
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #628892
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
s62 
Участник
skerebator  25.11.2023, 03:48
[игнорируется]
Telegram - ботов на C пишут.
https://github.com/antirez/botlib

Так-то.
А что такого? У меня в десктоп-программе на Делфи бот встроен. При каких-то нештатных ситуациях, о которых программа узнает из БД, оповещает в заданной группе, если в настройках оповещение задано. Больше кода понадобилось для определения id пользователя или группы, чтобы посылать сообщения потом по этому ID. А так-то отправка сообщения вот несколько строк. Посылаем сообщение, получаем ответ и смотрим, ок или нет.
Код: Delphi
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
function SendMessage(const aUserID, aMsg: string): boolean;
var s: string;
  Client: THTTPClient;
  JSon: TJSonObject;
begin
  Client := THTTPClient.Create();
  try
    try
      s := Format('https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s',
        [CurBotId, aUserID, aMsg]);
      JSon := TJSonObject.ParseJSONValue(Client.Get(s).ContentAsString()) as TJSonObject;
      try
        Result := (JSon.Values['ok'] as TJSONBool).AsBoolean;
      finally
        Json.Free;
      end;
    except
      on E: Exception do Result := False;
    end;
  finally
    Client.Free;
  end;
end;
А вот определение id пользователя или группы чуть побольше кода. И то не факт, что все ситуации я предусмотрел, но вроде работает нормально у нескольких клиентов уже больше года. Пользователь вводит имя группы, где он бота запустил, или своё имя пользователя, если в личный чат надо, чтобы бот писал, функция находит id, куда потом сообщения слать функцией выше.
Спойлер
Код: Delphi
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
function FindUserIdForBot(const aUserName: string): string;
var Updates: TJSonArray;
  i: integer;
  s, ChatTYpe: string;
  Client: THTTPClient;
  JSon, Update: TJSonObject;
begin
  Result := '';
  Client := THTTPClient.Create();
  try
    try
      s := Client.Get(Format('https://api.telegram.org/bot%s/getUpdates', [CurBotId])).ContentAsString();
      JSon := TJSonObject.ParseJSONValue(s) as TJSonObject;
      try
        Updates := JSon.Values['result'] as TJsonArray;
        for i := 0 to Updates.Count - 1 do
        begin
          if (Updates[i] as TJSonObject).FindValue('message.chat') <> nil then
          begin
            Update := (Updates[i] as TJSonObject);
            ChatType := Update.FindValue('message.chat.type').Value;
            if (ChatType = 'group') or (ChatType = 'supergroup') then
            begin
             if Update.FindValue('message.chat.title').Value = aUserName then
             begin
               Result := Update.FindValue('message.chat.id').Value;
               break;
             end;
            end
            else
            if (ChatType = 'private') and (Update.FindValue('message.chat.username').Value = aUserName) then
            begin
              Result := Update.FindValue('message.chat.id').Value;
              break;
            end;
          end;
        end;
      finally
        Json.Free;
      end;
    except
      on E: Exception do Result := ''; //для ПТ: сообщение об ошибке выводится в функции, которая эту использует, в зависимости от результата
    end;
  finally
    Client.Free;
  end;
end;
Это не универсальная библиотека, а частный случай, так сказать, но вот, тоже бот на Delphi.
...
Изменено: 25.11.2023, 12:42 - s62
Рейтинг: 1 / 0
Нравится: Ифрит
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #629582
megabyte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s62  25.11.2023, 12:35
[игнорируется]
skerebator  25.11.2023, 03:48
[игнорируется]
Telegram - ботов на C пишут.
https://github.com/antirez/botlib

Так-то.
А что такого? У меня в десктоп-программе на Делфи бот встроен. При каких-то нештатных ситуациях, о которых программа узнает из БД, оповещает в заданной группе, если в настройках оповещение задано. Больше кода понадобилось для определения id пользователя или группы, чтобы посылать сообщения потом по этому ID. А так-то отправка сообщения вот несколько строк. Посылаем сообщение, получаем ответ и смотрим, ок или нет.
Код: Delphi
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
function SendMessage(const aUserID, aMsg: string): boolean;
var s: string;
  Client: THTTPClient;
  JSon: TJSonObject;
begin
  Client := THTTPClient.Create();
  try
    try
      s := Format('https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s',
        [CurBotId, aUserID, aMsg]);
      JSon := TJSonObject.ParseJSONValue(Client.Get(s).ContentAsString()) as TJSonObject;
      try
        Result := (JSon.Values['ok'] as TJSONBool).AsBoolean;
      finally
        Json.Free;
      end;
    except
      on E: Exception do Result := False;
    end;
  finally
    Client.Free;
  end;
end;
А вот определение id пользователя или группы чуть побольше кода. И то не факт, что все ситуации я предусмотрел, но вроде работает нормально у нескольких клиентов уже больше года. Пользователь вводит имя группы, где он бота запустил, или своё имя пользователя, если в личный чат надо, чтобы бот писал, функция находит id, куда потом сообщения слать функцией выше.
Спойлер
Код: Delphi
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
function FindUserIdForBot(const aUserName: string): string;
var Updates: TJSonArray;
  i: integer;
  s, ChatTYpe: string;
  Client: THTTPClient;
  JSon, Update: TJSonObject;
begin
  Result := '';
  Client := THTTPClient.Create();
  try
    try
      s := Client.Get(Format('https://api.telegram.org/bot%s/getUpdates', [CurBotId])).ContentAsString();
      JSon := TJSonObject.ParseJSONValue(s) as TJSonObject;
      try
        Updates := JSon.Values['result'] as TJsonArray;
        for i := 0 to Updates.Count - 1 do
        begin
          if (Updates[i] as TJSonObject).FindValue('message.chat') <> nil then
          begin
            Update := (Updates[i] as TJSonObject);
            ChatType := Update.FindValue('message.chat.type').Value;
            if (ChatType = 'group') or (ChatType = 'supergroup') then
            begin
             if Update.FindValue('message.chat.title').Value = aUserName then
             begin
               Result := Update.FindValue('message.chat.id').Value;
               break;
             end;
            end
            else
            if (ChatType = 'private') and (Update.FindValue('message.chat.username').Value = aUserName) then
            begin
              Result := Update.FindValue('message.chat.id').Value;
              break;
            end;
          end;
        end;
      finally
        Json.Free;
      end;
    except
      on E: Exception do Result := ''; //для ПТ: сообщение об ошибке выводится в функции, которая эту использует, в зависимости от результата
    end;
  finally
    Client.Free;
  end;
end;
Это не универсальная библиотека, а частный случай, так сказать, но вот, тоже бот на Delphi.
Я рабочего бота для телеги делал на PHP(вызов апи функций)+SQL(вся логика).
p.s. Административные и менеджерские рассылки, заказ справок.
...
коротко о себе по версии дедофорумчан:
либераст, хохол, жыд, ЗОЖовец-наркоман на антидепрессантах, сталинист, протохохол, желающий поменять родных православных коррупционеров на иноземных..
Изменено: 25.11.2023, 18:48 - megabyte
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #629716
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
s62 
Участник
megabyte [игнорируется] 
веб-приложение, да?
Вообще по-моему у телеграма и API нормальное, и документация неплохая, и впридачу это бесплатное. А у вотсапа - платное (было по крайней мере ещё недавно).
...
Рейтинг: 0 / 0
Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
    #630246
XEugene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я как-то на PHP телеграм-бота написал, причём для работы(я в той конторе пыхером работал).
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Просто Трёп [закрыт для гостей] / Telegram - ботов на C пишут. А вы тут говорите! Ух еббать!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (102): Анонимы (94), IT-Клоп, s62, basename, megabyte 1 мин., Tails 1 мин., Antonariy 1 мин., 9288 5 мин., Сталкер 7 мин.
Пользователи онлайн (193): Анонимы (182), IT-Клоп, basename, s62, Yandex Bot, megabyte 1 мин., Tails 1 мин., prostozevs 1 мин., Antonariy 1 мин., 9288 5 мин., Bing Bot 5 мин., Сталкер 6 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]