Интеграция с Telegram

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4549
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Интеграция с Telegram

Сообщение finsoftrz »

Сегодня со спайсвеба прислали ссылку на видео, как это сделать. Пример на php. Из клариона легко сделать аналогично, используя curl, например. Если кому интересно, оставлю ссылку здесь.

https://www.youtube.com/watch?v=-gRf-DlPwO8
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Интеграция с Telegram

Сообщение Admin »

Не забываем русский текст передавать в UTF8

Код: Выделить всё

  PROGRAM

  INCLUDE('libcurl.inc'),ONCE
  PRAGMA('project(#compile libcurl.clw)')
  PRAGMA('project(#pragma link(libcurl.lib))')

  MAP
  END                                                   
  
glo:token         EQUATE(TOKEN_ID)
glo:chat_id       EQUATE(CHAT_ID) 
curl              TCurlClass 
  CODE        
  curl.Init()
  curl.SetSSLVerifyPeer(0)
  IF curl.SendRequest('https://api.telegram.org/bot'&glo:token&'/SendMessage?chat_id='&glo:chat_id&'&parse_mode=html&text=Simple string%0AAnd more!')
  END
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Интеграция с Telegram

Сообщение Admin »

Или вот так без libcurl

Код: Выделить всё

  PROGRAM                                                                                          
  
  PRAGMA('project(#pragma link(WININET.LIB))')

  MAP                    
    MODULE('WININET.LIB')
      InternetOpen(*CSTRING,LONG,<*CSTRING>,<*CSTRING>,LONG),LONG, RAW, PASCAL, NAME('InternetOpenA')                                   
      InternetOpenURL(LONG, *CSTRING, <*CSTRING>, LONG, LONG, LONG), LONG, RAW, PASCAL, PROC, NAME('InternetOpenUrlA')
    END
  END                                                   
  
glo:token         EQUATE(TOKEN_ID)
glo:chat_id       EQUATE(CHAT_ID) 
glo:agent         CSTRING('Clarion')
glo:url           CSTRING(1024)
  CODE        
  glo:url = 'https://api.telegram.org/bot'&glo:token&'/SendMessage?chat_id='&glo:chat_id&'&parse_mode=html&text=Simple string%0AAnd more!'
  InternetOpenUrl(InternetOpen(glo:agent,0,,,0),glo:url,,0,0,0)
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Ал
✯ Ветеран ✯
Сообщения: 1011
Зарегистрирован: 08 Июль 2005, 6:48
Откуда: Россия

Интеграция с Telegram

Сообщение Ал »

прикрутил в прошлом или позапрошлом году в варианте через libcurl и только для оперативного оповещения о ходе процессов в паре тонких мест, все норм. крутятся - обычно при необходимости отправляется письмо мне на рабочую почту, но в особых ситуациях шлёт ещё и через тг бота на телефон в любое время.

P.s. в этой программе уже используется libcurl, поэтому его и применил, а за второй вариант - спасибо, может быть когда и пригодится.
Spoiler
IMG_20220427_094034.jpg
IMG_20220427_093814.jpg
Ответить