mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-12-25 02:42:28 +02:00
Навел порядок в TG и Viber
This commit is contained in:
parent
12edae6307
commit
0165e7e3dd
@ -1,3 +1,3 @@
|
|||||||
<img src="https://github.com/Bayselonarrend/OpenIntegrations/raw/main/media/logo_long.png" style="height: 256px; width: 768px;">
|
<img src="https://github.com/Bayselonarrend/OpenIntegrations/raw/main/media/logo_long.png" style="height: 256px; width: 768px;">
|
||||||
|
|
||||||
# ОПИ - пакет библиотек для интеграции с API популярных сервисов
|
# ОПИ - набор библиотек интеграции с популярными API для 1C:Enterprise
|
||||||
|
@ -112,7 +112,8 @@
|
|||||||
СтруктураПараметровВыходная.Вставить("IDЧата" , СтруктураЧата["id"]);
|
СтруктураПараметровВыходная.Вставить("IDЧата" , СтруктураЧата["id"]);
|
||||||
СтруктураПараметровВыходная.Вставить("Сообщение" , СтруктураСообщения["new_chat_member"]["status"]);
|
СтруктураПараметровВыходная.Вставить("Сообщение" , СтруктураСообщения["new_chat_member"]["status"]);
|
||||||
СтруктураПараметровВыходная.Вставить("Дата" , Дата(1970,1,1,1,0,0) + СтруктураСообщения["date"]);
|
СтруктураПараметровВыходная.Вставить("Дата" , Дата(1970,1,1,1,0,0) + СтруктураСообщения["date"]);
|
||||||
СтруктураПараметровВыходная.Вставить("БотОтключен" , ?(СтруктураСообщения["new_chat_member"]["status"] = "kicked", Истина, Ложь));
|
СтруктураПараметровВыходная.Вставить("БотОтключен"
|
||||||
|
, ?(СтруктураСообщения["new_chat_member"]["status"] = "kicked", Истина, Ложь));
|
||||||
|
|
||||||
ИначеЕсли СтруктураПараметровВходная.Свойство("callback_query") Тогда
|
ИначеЕсли СтруктураПараметровВходная.Свойство("callback_query") Тогда
|
||||||
|
|
||||||
@ -126,8 +127,9 @@
|
|||||||
СтруктураПараметровВыходная.Вставить("IDСообщения" , СтруктураСообщения["message"]["message_id"]);
|
СтруктураПараметровВыходная.Вставить("IDСообщения" , СтруктураСообщения["message"]["message_id"]);
|
||||||
СтруктураПараметровВыходная.Вставить("IDЧата" , СтруктураСообщения["message"]["chat"]["id"]);
|
СтруктураПараметровВыходная.Вставить("IDЧата" , СтруктураСообщения["message"]["chat"]["id"]);
|
||||||
СтруктураПараметровВыходная.Вставить("Сообщение" , СтруктураСообщения["data"]);
|
СтруктураПараметровВыходная.Вставить("Сообщение" , СтруктураСообщения["data"]);
|
||||||
СтруктураПараметровВыходная.Вставить("Дата" , Дата(1970,1,1,1,0,0) + СтруктураСообщения["message"]["date"]);
|
|
||||||
СтруктураПараметровВыходная.Вставить("БотОтключен" , Ложь);
|
СтруктураПараметровВыходная.Вставить("БотОтключен" , Ложь);
|
||||||
|
СтруктураПараметровВыходная.Вставить("Дата"
|
||||||
|
, Дата(1970,1,1,1,0,0) + СтруктураСообщения["message"]["date"]);
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@ -139,6 +141,16 @@
|
|||||||
|
|
||||||
#Область Диалоги
|
#Область Диалоги
|
||||||
|
|
||||||
|
// Отправить текстовое сообщение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст сообщения
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ОтправитьТекстовоеСообщение(Знач Токен, Знач IDЧата, Знач Текст, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьТекстовоеСообщение(Знач Токен, Знач IDЧата, Знач Текст, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
OPI_Инструменты.ЗаменитьСпецСимволы(Текст);
|
OPI_Инструменты.ЗаменитьСпецСимволы(Текст);
|
||||||
@ -156,37 +168,110 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить картинку.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - IDЧата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// Картинка - ДвоичныеДанные,Строка - Двоичные данные или путь к картинке
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка, Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
Функция ОтправитьКартинку(Знач Токен, Знач IDЧата, Знач Текст, Знач Картинка, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьКартинку(Знач Токен, Знач IDЧата, Знач Текст, Знач Картинка, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Картинка, "photo", Клавиатура);
|
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Картинка, "photo", Клавиатура);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить видео.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// Видео - ДвоичныеДанные,Строка - Двоичные данные или путь к видео
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка, Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
Функция ОтправитьВидео(Знач Токен, Знач IDЧата, Знач Текст, Знач Видео, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьВидео(Знач Токен, Знач IDЧата, Знач Текст, Знач Видео, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Видео, "video", Клавиатура);
|
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Видео, "video", Клавиатура);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить аудио.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// Аудио - ДвоичныеДанные,Строка - Двоичные данные или путь к аудио
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка, Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
Функция ОтправитьАудио(Знач Токен, Знач IDЧата, Знач Текст, Знач Аудио, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьАудио(Знач Токен, Знач IDЧата, Знач Текст, Знач Аудио, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Аудио, "audio", Клавиатура);
|
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Аудио, "audio", Клавиатура);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить документ.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// Документ - ДвоичныеДанные,Строка - Двоичные данные или путь к документу
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка, Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
Функция ОтправитьДокумент(Знач Токен, Знач IDЧата, Знач Текст, Знач Документ, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьДокумент(Знач Токен, Знач IDЧата, Знач Текст, Знач Документ, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Документ, "document", Клавиатура);
|
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Документ, "document", Клавиатура);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить гифку.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// Гифка - ДвоичныеДанные,Строка - Двоичные данные или путь к гифке
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка, Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
Функция ОтправитьГифку(Знач Токен, Знач IDЧата, Знач Текст, Знач Гифка, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьГифку(Знач Токен, Знач IDЧата, Знач Текст, Знач Гифка, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Гифка, "animation", Клавиатура);
|
Возврат ОтправитьФайл(Токен, IDЧата, Текст, Гифка, "animation", Клавиатура);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция ОтправитьНаборЛюбыхФайлов(Знач Токен, Знач IDЧата, Знач Текст, Знач СоответствиеФайлов, Знач Клавиатура = "") Экспорт
|
// Отправить набор любых файлов.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Текст - Строка - Текст
|
||||||
|
// СоответствиеФайлов - Соответствие:
|
||||||
|
// * Ключ - Строка
|
||||||
|
// * Значение - ДвоичныеДанные,Строка
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Произвольный, HTTPОтвет - Ответ сервера Telegram
|
||||||
|
//@skip-check doc-comment-collection-item-type
|
||||||
|
Функция ОтправитьНаборЛюбыхФайлов(Знач Токен
|
||||||
|
, Знач IDЧата
|
||||||
|
, Знач Текст
|
||||||
|
, Знач СоответствиеФайлов
|
||||||
|
, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
//СоответствиеФайлов
|
//СоответствиеФайлов
|
||||||
//Ключ - Файл, Значение - Тип
|
//Ключ - Файл, Значение - Тип
|
||||||
@ -249,72 +334,116 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить местоположение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Широта - Строка,Число - Географическая широта
|
||||||
|
// Долгота - Строка,Число - Географическая долгота
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ОтправитьМестоположение(Знач Токен, Знач IDЧата, Знач Широта, Знач Долгота, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьМестоположение(Знач Токен, Знач IDЧата, Знач Широта, Знач Долгота, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("latitude" , OPI_Инструменты.ЧислоВСтроку(Широта));
|
Параметры_.Вставить("latitude" , OPI_Инструменты.ЧислоВСтроку(Широта));
|
||||||
_Параметры.Вставить("longitude" , OPI_Инструменты.ЧислоВСтроку(Долгота));
|
Параметры_.Вставить("longitude" , OPI_Инструменты.ЧислоВСтроку(Долгота));
|
||||||
_Параметры.Вставить("reply_markup" , Клавиатура);
|
Параметры_.Вставить("reply_markup" , Клавиатура);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendLocation", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendLocation", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить контакт.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Имя - Строка - Имя контакта
|
||||||
|
// Фамилия - Строка - Фамилия контакта
|
||||||
|
// Телефон - Строка - Телефон контакта
|
||||||
|
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ОтправитьКонтакт(Знач Токен, Знач IDЧата, Знач Имя, Знач Фамилия, Знач Телефон, Знач Клавиатура = "") Экспорт
|
Функция ОтправитьКонтакт(Знач Токен, Знач IDЧата, Знач Имя, Знач Фамилия, Знач Телефон, Знач Клавиатура = "") Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("first_name" , Имя);
|
Параметры_.Вставить("first_name" , Имя);
|
||||||
_Параметры.Вставить("last_name" , Фамилия);
|
Параметры_.Вставить("last_name" , Фамилия);
|
||||||
_Параметры.Вставить("phone_number" , Строка(Телефон));
|
Параметры_.Вставить("phone_number" , Строка(Телефон));
|
||||||
_Параметры.Вставить("reply_markup" , Клавиатура);
|
Параметры_.Вставить("reply_markup" , Клавиатура);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendContact", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendContact", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Отправить опрос.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Вопрос - Строка - Вопрос опроса
|
||||||
|
// МассивОтветов - Массив из строка - Массив вариантов ответа
|
||||||
|
// Анонимный - Булево - Анонимность опроса
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ОтправитьОпрос(Знач Токен, Знач IDЧата, Знач Вопрос, Знач МассивОтветов, Знач Анонимный = Истина) Экспорт
|
Функция ОтправитьОпрос(Знач Токен, Знач IDЧата, Знач Вопрос, Знач МассивОтветов, Знач Анонимный = Истина) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
Ответы = OPI_Инструменты.JSONСтрокой(МассивОтветов);
|
Ответы = OPI_Инструменты.JSONСтрокой(МассивОтветов);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("question" , Вопрос);
|
Параметры_.Вставить("question" , Вопрос);
|
||||||
_Параметры.Вставить("options" , Ответы);
|
Параметры_.Вставить("options" , Ответы);
|
||||||
_Параметры.Вставить("is_anonymous" , Анонимный);
|
Параметры_.Вставить("is_anonymous" , Анонимный);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendPoll", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/sendPoll", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Переслать сообщение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDОригинала - Строка,Число - ID оригинального сообщения
|
||||||
|
// ОткудаID - Строка,Число - ID чата оригинального сообщения
|
||||||
|
// КудаID - Строка,Число - ID целевого чата
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ПереслатьСообщение(Знач Токен, Знач IDОригинала, Знач ОткудаID, Знач КудаID) Экспорт
|
Функция ПереслатьСообщение(Знач Токен, Знач IDОригинала, Знач ОткудаID, Знач КудаID) Экспорт
|
||||||
|
|
||||||
IDОригинала = OPI_Инструменты.ЧислоВСтроку(IDОригинала);
|
IDОригинала = OPI_Инструменты.ЧислоВСтроку(IDОригинала);
|
||||||
ОткудаID = OPI_Инструменты.ЧислоВСтроку(ОткудаID);
|
ОткудаID = OPI_Инструменты.ЧислоВСтроку(ОткудаID);
|
||||||
КудаID = OPI_Инструменты.ЧислоВСтроку(КудаID);
|
КудаID = OPI_Инструменты.ЧислоВСтроку(КудаID);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("chat_id" , КудаID);
|
Параметры_.Вставить("chat_id" , КудаID);
|
||||||
_Параметры.Вставить("from_chat_id" , ОткудаID);
|
Параметры_.Вставить("from_chat_id" , ОткудаID);
|
||||||
_Параметры.Вставить("message_id" , IDОригинала);
|
Параметры_.Вставить("message_id" , IDОригинала);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/forwardMessage", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/forwardMessage", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
@ -324,103 +453,161 @@
|
|||||||
|
|
||||||
#Область Администрирование
|
#Область Администрирование
|
||||||
|
|
||||||
|
// Бан.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// IDПользователя - Строка,Число - ID целевого пользователя
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция Бан(Знач Токен, Знач IDЧата, Знач IDПользователя) Экспорт
|
Функция Бан(Знач Токен, Знач IDЧата, Знач IDПользователя) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
IDПользователя = OPI_Инструменты.ЧислоВСтроку(IDПользователя);
|
IDПользователя = OPI_Инструменты.ЧислоВСтроку(IDПользователя);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("user_id" , IDПользователя);
|
Параметры_.Вставить("user_id" , IDПользователя);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/banChatMember", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/banChatMember", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Разбан.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// IDПользователя - Строка,Число - ID целевого пользователя
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция Разбан(Знач Токен, Знач IDЧата, Знач IDПользователя) Экспорт
|
Функция Разбан(Знач Токен, Знач IDЧата, Знач IDПользователя) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
IDПользователя = OPI_Инструменты.ЧислоВСтроку(IDПользователя);
|
IDПользователя = OPI_Инструменты.ЧислоВСтроку(IDПользователя);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("user_id" , IDПользователя);
|
Параметры_.Вставить("user_id" , IDПользователя);
|
||||||
_Параметры.Вставить("only_if_banned" , Истина);
|
Параметры_.Вставить("only_if_banned" , Истина);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/unbanChatMember", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/unbanChatMember", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СоздатьСсылкуПриглашение(Знач Токен, Знач IDЧата, Знач Заголовок = "", Знач ДатаИстечения = "", Знач ЛимитПользователей = 0) Экспорт
|
// Создать ссылку приглашение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// Заголовок - Строка - Заголовок приглашения
|
||||||
|
// ДатаИстечения - Дата - Дата окончания жизни ссылки (безсрочно, если не указано)
|
||||||
|
// ЛимитПользователей - Число - Лимит пользователей (бесконечно, если не указано)
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
|
Функция СоздатьСсылкуПриглашение(Знач Токен
|
||||||
|
, Знач IDЧата
|
||||||
|
, Знач Заголовок = ""
|
||||||
|
, Знач ДатаИстечения = ""
|
||||||
|
, Знач ЛимитПользователей = 0) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
IDПользователя = OPI_Инструменты.ЧислоВСтроку(IDПользователя);
|
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("name" , Заголовок);
|
Параметры_.Вставить("name" , Заголовок);
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ДатаИстечения) Тогда
|
Если ЗначениеЗаполнено(ДатаИстечения) Тогда
|
||||||
_Параметры.Вставить("expire_date" , Формат(ДатаИстечения - Дата(1970,1,1,1,0,0), "ЧГ=0"));
|
Параметры_.Вставить("expire_date" , Формат(ДатаИстечения - Дата(1970,1,1,1,0,0), "ЧГ=0"));
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
_Параметры.Вставить("member_limit" , ЛимитПользователей);
|
Параметры_.Вставить("member_limit", ЛимитПользователей);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/createChatInviteLink", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/createChatInviteLink", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Закрепить сообщение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
// IDСообщения - Строка,Число - ID целевого сообщения
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ЗакрепитьСообщение(Знач Токен, Знач IDЧата, Знач IDСообщения) Экспорт
|
Функция ЗакрепитьСообщение(Знач Токен, Знач IDЧата, Знач IDСообщения) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
IDСообщения = OPI_Инструменты.ЧислоВСтроку(IDСообщения);
|
IDСообщения = OPI_Инструменты.ЧислоВСтроку(IDСообщения);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("message_id" , IDСообщения);
|
Параметры_.Вставить("message_id" , IDСообщения);
|
||||||
_Параметры.Вставить("disable_notification" , Истина);
|
Параметры_.Вставить("disable_notification" , Истина);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/pinChatMessage", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/pinChatMessage", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Открепить сообщение.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка - ID целевого чата
|
||||||
|
// IDСообщения - Строка,Число - ID целевого сообщения
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||||
Функция ОткрепитьСообщение(Знач Токен, Знач IDЧата, Знач IDСообщения) Экспорт
|
Функция ОткрепитьСообщение(Знач Токен, Знач IDЧата, Знач IDСообщения) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
IDСообщения = OPI_Инструменты.ЧислоВСтроку(IDСообщения);
|
IDСообщения = OPI_Инструменты.ЧислоВСтроку(IDСообщения);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
_Параметры.Вставить("message_id" , IDСообщения);
|
Параметры_.Вставить("message_id" , IDСообщения);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/unpinChatMessage", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/unpinChatMessage", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Получить число участников.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Токен - Строка - Токен
|
||||||
|
// IDЧата - Строка,Число - ID целевого чата
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ДвоичныеДанные, Неопределено, Произвольный - Получить число участников
|
||||||
Функция ПолучитьЧислоУчастников(Знач Токен, Знач IDЧата) Экспорт
|
Функция ПолучитьЧислоУчастников(Знач Токен, Знач IDЧата) Экспорт
|
||||||
|
|
||||||
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
|
||||||
|
|
||||||
_Параметры = Новый Структура;
|
Параметры_ = Новый Структура;
|
||||||
_Параметры.Вставить("parse_mode" , "Markdown");
|
Параметры_.Вставить("parse_mode" , "Markdown");
|
||||||
_Параметры.Вставить("chat_id" , IDЧата);
|
Параметры_.Вставить("chat_id" , IDЧата);
|
||||||
|
|
||||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/getChatMemberCount", _Параметры);
|
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/getChatMemberCount", Параметры_);
|
||||||
|
|
||||||
Возврат Ответ;
|
Возврат Ответ;
|
||||||
|
|
||||||
@ -430,6 +617,14 @@
|
|||||||
|
|
||||||
#Область TelegramMiniApp
|
#Область TelegramMiniApp
|
||||||
|
|
||||||
|
// Обработать данные TMA и определить их достоверность
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// СтрокаДанных - Строка - querry из Telegram.WebApp.initData
|
||||||
|
// Токен - Строка - Токен бота
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Соответствие из Строка - Обработанные данные с признаком достоверности
|
||||||
Функция ОбработатьДанныеTMA(Знач СтрокаДанных, Знач Токен) Экспорт
|
Функция ОбработатьДанныеTMA(Знач СтрокаДанных, Знач Токен) Экспорт
|
||||||
|
|
||||||
СтрокаДанных = РаскодироватьСтроку(СтрокаДанных, СпособКодированияСтроки.КодировкаURL);
|
СтрокаДанных = РаскодироватьСтроку(СтрокаДанных, СпособКодированияСтроки.КодировкаURL);
|
||||||
@ -489,6 +684,14 @@
|
|||||||
|
|
||||||
#Область Прочее
|
#Область Прочее
|
||||||
|
|
||||||
|
// Сформировать клавиатуру по массиву кнопок.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// МассивКнопок - Массив из Строка - Массив кнопок
|
||||||
|
// ПодСообщением - Булево - Клавиатура под сообщением или на нижней панели
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка - JSON клавиатуры
|
||||||
Функция СформироватьКлавиатуруПоМассивуКнопок(Знач МассивКнопок, Знач ПодСообщением = Ложь) Экспорт
|
Функция СформироватьКлавиатуруПоМассивуКнопок(Знач МассивКнопок, Знач ПодСообщением = Ложь) Экспорт
|
||||||
|
|
||||||
Строки = Новый Массив;
|
Строки = Новый Массив;
|
||||||
@ -511,7 +714,9 @@
|
|||||||
|
|
||||||
|
|
||||||
ЗаписьJSON = Новый ЗаписьJSON;
|
ЗаписьJSON = Новый ЗаписьJSON;
|
||||||
ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет,,,ЭкранированиеСимволовJSON.СимволыВнеASCII));
|
ЗаписьJSON.УстановитьСтроку(
|
||||||
|
Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет,,,ЭкранированиеСимволовJSON.СимволыВнеASCII));
|
||||||
|
|
||||||
ЗаписатьJSON(ЗаписьJSON, СтруктураПараметра);
|
ЗаписатьJSON(ЗаписьJSON, СтруктураПараметра);
|
||||||
|
|
||||||
Возврат ЗаписьJSON.Закрыть();
|
Возврат ЗаписьJSON.Закрыть();
|
||||||
|
@ -98,9 +98,11 @@
|
|||||||
Функция ПолучитьОнлайнПользователей(Знач Токен, Знач IDПользователей) Экспорт
|
Функция ПолучитьОнлайнПользователей(Знач Токен, Знач IDПользователей) Экспорт
|
||||||
|
|
||||||
Если Не ТипЗнч(IDПользователей) = Тип("Массив") Тогда
|
Если Не ТипЗнч(IDПользователей) = Тип("Массив") Тогда
|
||||||
|
|
||||||
ОдиночныйID = IDПользователей;
|
ОдиночныйID = IDПользователей;
|
||||||
IDПользователей = Новый Массив;
|
IDПользователей = Новый Массив;
|
||||||
IDПользователей.Добавить(ОдиночныйID);
|
IDПользователей.Добавить(ОдиночныйID);
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
СтруктураПараметров = Новый Структура;
|
СтруктураПараметров = Новый Структура;
|
||||||
|
@ -56,7 +56,7 @@
|
|||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция Post(Знач URL
|
Функция Post(Знач URL
|
||||||
, Знач Параметры = ""
|
, Знач Параметры
|
||||||
, Знач Файлы = ""
|
, Знач Файлы = ""
|
||||||
, Знач ТипКонтента = "image/jpeg"
|
, Знач ТипКонтента = "image/jpeg"
|
||||||
, Знач ДопЗаголовки = "") Экспорт
|
, Знач ДопЗаголовки = "") Экспорт
|
||||||
|
@ -40,5 +40,4 @@
|
|||||||
<commonModules>CommonModule.OPI_Viber</commonModules>
|
<commonModules>CommonModule.OPI_Viber</commonModules>
|
||||||
<commonModules>CommonModule.OPI_VK</commonModules>
|
<commonModules>CommonModule.OPI_VK</commonModules>
|
||||||
<commonModules>CommonModule.OPI_GoogleWorkspace</commonModules>
|
<commonModules>CommonModule.OPI_GoogleWorkspace</commonModules>
|
||||||
<dataProcessors>DataProcessor.Стенд</dataProcessors>
|
|
||||||
</mdclass:Configuration>
|
</mdclass:Configuration>
|
||||||
|
Loading…
Reference in New Issue
Block a user