Compare commits
7 Commits
lightweigh
...
b6e6fbc8a6
| Author | SHA1 | Date | |
|---|---|---|---|
| b6e6fbc8a6 | |||
| 01db185d34 | |||
| 85c6219a8d | |||
| 219fe05b43 | |||
| 1f35a110e1 | |||
| 2c8c581088 | |||
| 5bf73184d2 |
@@ -7,6 +7,7 @@
|
|||||||
- Автоматическое отслеживание новых версий конфигураций
|
- Автоматическое отслеживание новых версий конфигураций
|
||||||
- Уведомления о появлении актуальных версий конфигураций
|
- Уведомления о появлении актуальных версий конфигураций
|
||||||
- Включение и отключение уведомлений о выходе новых версий конфигураций
|
- Включение и отключение уведомлений о выходе новых версий конфигураций
|
||||||
|
- Возможность задать периодичность уведомлений (каждый час, день, неделю)
|
||||||
- Просмотр списка отслеживаемых конфигураций
|
- Просмотр списка отслеживаемых конфигураций
|
||||||
- Добавление конкретной конфигурации в список отслеживания
|
- Добавление конкретной конфигурации в список отслеживания
|
||||||
- Удаление конкретной конфигурации из списка отслеживания
|
- Удаление конкретной конфигурации из списка отслеживания
|
||||||
@@ -26,9 +27,9 @@
|
|||||||
|
|
||||||
Бот не требует внешнего сервера или промежуточного backend-а. Всё реализовано средствами платформы 1С.
|
Бот не требует внешнего сервера или промежуточного backend-а. Всё реализовано средствами платформы 1С.
|
||||||
|
|
||||||
- Клонируйте или скачайте репозиторий: `git clone https://github.com/K4shey/tg_bot_1c.git`
|
- Клонируйте или скачайте репозиторий: `git clone https://github.com/K4shey/1c_release_checker_bot.git`
|
||||||
- Создайте новую информационную базу. В режиме конфигуратора выполните команду загрузки конфигурации из файлов.
|
- Создайте новую информационную базу. В режиме конфигуратора выполните команду загрузки конфигурации из файлов.
|
||||||
- Укажите путь к источнику: `tg_bot_1c\src\cf`
|
- Укажите путь к источнику: `\src\cf`
|
||||||
- Зарегистрируйте Telegram-бота через @BotFather и получите токен.
|
- Зарегистрируйте Telegram-бота через @BotFather и получите токен.
|
||||||
- Укажите токен в настройках конфигурации, раздел Администрирование.
|
- Укажите токен в настройках конфигурации, раздел Администрирование.
|
||||||
- Есть возможность получать обновления в двух режимах: `long polling` и `webhook`. Режим устанавливается в настройках, раздел Администрирование. В случае использования `webhook` требуется публикация базы на веб-сервере.
|
- Есть возможность получать обновления в двух режимах: `long polling` и `webhook`. Режим устанавливается в настройках, раздел Администрирование. В случае использования `webhook` требуется публикация базы на веб-сервере.
|
||||||
|
|||||||
@@ -36,9 +36,9 @@
|
|||||||
ИначеЕсли КомандаДляОбработки = "/delete" Тогда
|
ИначеЕсли КомандаДляОбработки = "/delete" Тогда
|
||||||
ОбработатьКомандуУдалитьКонфигурацию(ОбновлениеТелеграм);
|
ОбработатьКомандуУдалитьКонфигурацию(ОбновлениеТелеграм);
|
||||||
ИначеЕсли КомандаДляОбработки = "/notify_on" Тогда
|
ИначеЕсли КомандаДляОбработки = "/notify_on" Тогда
|
||||||
ОбработатьКомандуВключитьОповещения(ОбновлениеТелеграм);
|
ОбработатьКомандуВключитьУведомления(ОбновлениеТелеграм);
|
||||||
ИначеЕсли КомандаДляОбработки = "/notify_off" Тогда
|
ИначеЕсли КомандаДляОбработки = "/notify_off" Тогда
|
||||||
ОбработатьКомандуВыключитьОповещения(ОбновлениеТелеграм);
|
ОбработатьКомандуВыключитьУведомления(ОбновлениеТелеграм);
|
||||||
ИначеЕсли КомандаДляОбработки = "/status" Тогда
|
ИначеЕсли КомандаДляОбработки = "/status" Тогда
|
||||||
ОбработатьКомандуСтатусКонфигурации(ОбновлениеТелеграм);
|
ОбработатьКомандуСтатусКонфигурации(ОбновлениеТелеграм);
|
||||||
ИначеЕсли КомандаДляОбработки = "/help" Тогда
|
ИначеЕсли КомандаДляОбработки = "/help" Тогда
|
||||||
@@ -61,6 +61,8 @@
|
|||||||
УдалитьКонфигурациюИзСпискаОтслеживания(Данные, ОбновлениеТелеграм.ИдЧата);
|
УдалитьКонфигурациюИзСпискаОтслеживания(Данные, ОбновлениеТелеграм.ИдЧата);
|
||||||
ИначеЕсли СтрНачинаетсяС(Данные, XMLСтрока(Перечисления.ВидыДанныхОбратныхВызовов.GetStatus)) Тогда
|
ИначеЕсли СтрНачинаетсяС(Данные, XMLСтрока(Перечисления.ВидыДанныхОбратныхВызовов.GetStatus)) Тогда
|
||||||
ПолучитьДанныеСтатусаКонфигурации(Данные, ОбновлениеТелеграм.ИдЧата);
|
ПолучитьДанныеСтатусаКонфигурации(Данные, ОбновлениеТелеграм.ИдЧата);
|
||||||
|
ИначеЕсли СтрНачинаетсяС(Данные, XMLСтрока(Перечисления.ВидыДанныхОбратныхВызовов.NotifyOn)) Тогда
|
||||||
|
УстановитьПериодУведомления(Данные, ОбновлениеТелеграм.ИдЧата);
|
||||||
Иначе
|
Иначе
|
||||||
ОбработатьНеизвестнуюКоманду(ОбновлениеТелеграм);
|
ОбработатьНеизвестнуюКоманду(ОбновлениеТелеграм);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -168,6 +170,20 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура УстановитьПериодУведомления(ТекстСообщения, ИдЧата)
|
||||||
|
|
||||||
|
Команда = XMLСтрока(Перечисления.ВидыДанныхОбратныхВызовов.NotifyOn);
|
||||||
|
|
||||||
|
Если НЕ СтрНачинаетсяС(ТекстСообщения, Команда) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПериодичностьИмя = СокрЛП(Сред(ТекстСообщения, СтрДлина(Команда) + 1));
|
||||||
|
Периодичность = Перечисления.ПериодичностьУведомлений[ПериодичностьИмя];
|
||||||
|
УправлениеОповещениями(ИдЧата, Периодичность);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОбработатьВводВерсииКонфигурации(ОбновлениеТелеграм, ДанныеПользователя)
|
Процедура ОбработатьВводВерсииКонфигурации(ОбновлениеТелеграм, ДанныеПользователя)
|
||||||
|
|
||||||
ИдЧата = ОбновлениеТелеграм.ИдЧата;
|
ИдЧата = ОбновлениеТелеграм.ИдЧата;
|
||||||
@@ -308,15 +324,34 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОбработатьКомандуВключитьОповещения(ОбновлениеТелеграм)
|
Процедура ОбработатьКомандуВключитьУведомления(ОбновлениеТелеграм)
|
||||||
|
|
||||||
УправлениеОповещениями(ОбновлениеТелеграм.ИдЧата, Истина);
|
ИдЧата = ОбновлениеТелеграм.ИдЧата;
|
||||||
|
Команда = XMLСтрока(Перечисления.ВидыДанныхОбратныхВызовов.NotifyOn);
|
||||||
|
|
||||||
|
МассивКнопок = ТелеграмРаботаСКлавиатурой.МассивРядовСПериодамиОповещения(ИдЧата, Команда);
|
||||||
|
Если МассивКнопок.Количество() = 0 Тогда
|
||||||
|
ТекстОтвета = "Не удалось получить список периодов оповещения";
|
||||||
|
ТелеграмМетодыВызовСервера.SendMessage(ИдЧата, ТекстОтвета);
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Клавиатура = ТелеграмРаботаСКлавиатурой.КлавиатураВстроенная(МассивКнопок);
|
||||||
|
ТекстОтвета = "Выберите нужную периодичность оповещения";
|
||||||
|
ТелеграмМетодыВызовСервера.SendMessage(ИдЧата, ТекстОтвета, , Клавиатура);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОбработатьКомандуВыключитьОповещения(ОбновлениеТелеграм)
|
Процедура ОбработатьКомандуВыключитьУведомления(ОбновлениеТелеграм)
|
||||||
|
|
||||||
УправлениеОповещениями(ОбновлениеТелеграм.ИдЧата, Ложь);
|
УправлениеОповещениями(ОбновлениеТелеграм.ИдЧата, Перечисления.ПериодичностьУведомлений.НеУведомлять);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура УправлениеОповещениями(ИдЧата, ПериодичностьУведомлений)
|
||||||
|
|
||||||
|
ТекстОтвета = РегистрыСведений.УведомленияОНовыхВерсиях.УправлениеУведомлениями(ИдЧата, ПериодичностьУведомлений);
|
||||||
|
ТелеграмМетодыВызовСервера.SendMessage(ИдЧата, ТекстОтвета, Перечисления.ТелеграмРежимРазметки.HTML);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -338,13 +373,6 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура УправлениеОповещениями(ИдЧата, Включить)
|
|
||||||
|
|
||||||
ТекстОтвета = РегистрыСведений.УведомленияОНовыхВерсиях.УправлениеОповещениями(ИдЧата, Включить);
|
|
||||||
ТелеграмМетодыВызовСервера.SendMessage(ИдЧата, ТекстОтвета, Перечисления.ТелеграмРежимРазметки.HTML);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработатьНеизвестнуюКоманду(ОбновлениеТелеграм)
|
Процедура ОбработатьНеизвестнуюКоманду(ОбновлениеТелеграм)
|
||||||
|
|
||||||
ТекстОтвета = "Данная команда не поддерживается.";
|
ТекстОтвета = "Данная команда не поддерживается.";
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
ТекстСообщения = ТекстСообщенияОНеактуальнойВерсии(ПолучательУведомления.Конфигурации);
|
ТекстСообщения = ТекстСообщенияОНеактуальнойВерсии(ПолучательУведомления.Конфигурации);
|
||||||
ТелеграмМетодыВызовСервера.SendMessage(ПолучательУведомления.ИдЧата, ТекстСообщения,
|
ТелеграмМетодыВызовСервера.SendMessage(ПолучательУведомления.ИдЧата, ТекстСообщения,
|
||||||
Перечисления.ТелеграмРежимРазметки.HTML);
|
Перечисления.ТелеграмРежимРазметки.HTML);
|
||||||
|
РегистрыСведений.УведомленияОНовыхВерсиях.ОбновитьДатуОтправкиУведомления(ПолучательУведомления.ИдЧата);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|||||||
@@ -223,7 +223,19 @@
|
|||||||
|ИЗ
|
|ИЗ
|
||||||
| РегистрСведений.УведомленияОНовыхВерсиях КАК УведомленияОНовыхВерсиях
|
| РегистрСведений.УведомленияОНовыхВерсиях КАК УведомленияОНовыхВерсиях
|
||||||
|ГДЕ
|
|ГДЕ
|
||||||
| УведомленияОНовыхВерсиях.ОтправлятьУведомления
|
| УведомленияОНовыхВерсиях.Периодичность <> ЗНАЧЕНИЕ(Перечисление.ПериодичностьУведомлений.НеУведомлять)
|
||||||
|
| И ВЫБОР
|
||||||
|
| КОГДА УведомленияОНовыхВерсиях.Периодичность = ЗНАЧЕНИЕ(Перечисление.ПериодичностьУведомлений.КаждыйЧас)
|
||||||
|
| И УведомленияОНовыхВерсиях.ПоследняяОтправка <= ДОБАВИТЬКДАТЕ(&ТекущаяДата, ЧАС, -1)
|
||||||
|
| ТОГДА ИСТИНА
|
||||||
|
| КОГДА УведомленияОНовыхВерсиях.Периодичность = ЗНАЧЕНИЕ(Перечисление.ПериодичностьУведомлений.КаждыйДень)
|
||||||
|
| И УведомленияОНовыхВерсиях.ПоследняяОтправка <= ДОБАВИТЬКДАТЕ(&ТекущаяДата, ДЕНЬ, -1)
|
||||||
|
| ТОГДА ИСТИНА
|
||||||
|
| КОГДА УведомленияОНовыхВерсиях.Периодичность = ЗНАЧЕНИЕ(Перечисление.ПериодичностьУведомлений.КаждуюНеделю)
|
||||||
|
| И УведомленияОНовыхВерсиях.ПоследняяОтправка <= ДОБАВИТЬКДАТЕ(&ТекущаяДата, НЕДЕЛЯ, -1)
|
||||||
|
| ТОГДА ИСТИНА
|
||||||
|
| ИНАЧЕ ЛОЖЬ
|
||||||
|
| КОНЕЦ
|
||||||
|;
|
|;
|
||||||
|
|
|
|
||||||
|////////////////////////////////////////////////////////////////////////////////
|
|////////////////////////////////////////////////////////////////////////////////
|
||||||
@@ -244,6 +256,8 @@
|
|||||||
|ИТОГИ ПО
|
|ИТОГИ ПО
|
||||||
| ИдЧата";
|
| ИдЧата";
|
||||||
|
|
||||||
|
Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДатаСеанса());
|
||||||
|
|
||||||
РезультатЗапроса = Запрос.Выполнить();
|
РезультатЗапроса = Запрос.Выполнить();
|
||||||
|
|
||||||
ВыборкаИдЧата = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
|
ВыборкаИдЧата = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
|
||||||
|
|||||||
@@ -12,4 +12,12 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция СинонимПеречисления(ЗначениеПеречисления) Экспорт
|
||||||
|
|
||||||
|
ИмяПеречисления = ЗначениеПеречисления.Метаданные().Имя;
|
||||||
|
ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ЗначениеПеречисления);
|
||||||
|
Возврат Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Синоним;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|||||||
@@ -93,6 +93,24 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция МассивРядовСПериодамиОповещения(ИдЧата, Команда) Экспорт
|
||||||
|
|
||||||
|
МассивРядов = Новый Массив;
|
||||||
|
|
||||||
|
Для каждого ЗначениеПериода Из Метаданные.Перечисления.ПериодичностьУведомлений.ЗначенияПеречисления Цикл
|
||||||
|
КнопкаКлавиатурыВстроенной = ТелеграмРаботаСКлавиатурой.КнопкаКлавиатурыВстроенной(ЗначениеПериода.Синоним, ,
|
||||||
|
СтрШаблон("%1 %2", Команда, ЗначениеПериода.Имя));
|
||||||
|
Если ЗначениеПериода.Имя <> "НеУведомлять" Тогда
|
||||||
|
МассивКнопок = Новый Массив;
|
||||||
|
МассивКнопок.Добавить(КнопкаКлавиатурыВстроенной);
|
||||||
|
МассивРядов.Добавить(МассивКнопок);
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Возврат МассивРядов;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|||||||
@@ -282,6 +282,7 @@
|
|||||||
<Enum>ТелеграмРежимРазметки</Enum>
|
<Enum>ТелеграмРежимРазметки</Enum>
|
||||||
<Enum>ТелеграмСтатусДиалога</Enum>
|
<Enum>ТелеграмСтатусДиалога</Enum>
|
||||||
<Enum>ВидыДанныхОбратныхВызовов</Enum>
|
<Enum>ВидыДанныхОбратныхВызовов</Enum>
|
||||||
|
<Enum>ПериодичностьУведомлений</Enum>
|
||||||
<DataProcessor>НачальноеЗаполнениеДанных</DataProcessor>
|
<DataProcessor>НачальноеЗаполнениеДанных</DataProcessor>
|
||||||
<InformationRegister>ТелеграмИсторияСообщений</InformationRegister>
|
<InformationRegister>ТелеграмИсторияСообщений</InformationRegister>
|
||||||
<InformationRegister>ОтслеживаниеВерсийКонфигураций</InformationRegister>
|
<InformationRegister>ОтслеживаниеВерсийКонфигураций</InformationRegister>
|
||||||
|
|||||||
@@ -74,6 +74,18 @@
|
|||||||
<Comment/>
|
<Comment/>
|
||||||
</Properties>
|
</Properties>
|
||||||
</EnumValue>
|
</EnumValue>
|
||||||
|
<EnumValue uuid="883f782c-4484-4726-bd3c-4418f8547791">
|
||||||
|
<Properties>
|
||||||
|
<Name>NotifyOn</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Notify on</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</EnumValue>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Enum>
|
</Enum>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
91
src/cf/Enums/ПериодичностьУведомлений.xml
Normal file
91
src/cf/Enums/ПериодичностьУведомлений.xml
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.19">
|
||||||
|
<Enum uuid="bcf975e5-286f-4ac9-916e-52d407fcf18e">
|
||||||
|
<InternalInfo>
|
||||||
|
<xr:GeneratedType name="EnumRef.ПериодичностьУведомлений" category="Ref">
|
||||||
|
<xr:TypeId>3e7044ed-0e3a-4541-8a9e-ab9fe7208033</xr:TypeId>
|
||||||
|
<xr:ValueId>f43d2234-6787-4a01-a802-fcd547f85afa</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="EnumManager.ПериодичностьУведомлений" category="Manager">
|
||||||
|
<xr:TypeId>a7526e24-f52f-432e-bf90-905ec2225597</xr:TypeId>
|
||||||
|
<xr:ValueId>56b27172-4b82-4b46-a2a5-bf87b0ece644</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="EnumList.ПериодичностьУведомлений" category="List">
|
||||||
|
<xr:TypeId>ce3b1cff-eb12-401e-b368-b061a2a83848</xr:TypeId>
|
||||||
|
<xr:ValueId>94ee4e38-9b48-46e5-8a02-5c76d151b47e</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
</InternalInfo>
|
||||||
|
<Properties>
|
||||||
|
<Name>ПериодичностьУведомлений</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Периодичность уведомлений</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<UseStandardCommands>false</UseStandardCommands>
|
||||||
|
<Characteristics/>
|
||||||
|
<QuickChoice>true</QuickChoice>
|
||||||
|
<ChoiceMode>BothWays</ChoiceMode>
|
||||||
|
<DefaultListForm/>
|
||||||
|
<DefaultChoiceForm/>
|
||||||
|
<AuxiliaryListForm/>
|
||||||
|
<AuxiliaryChoiceForm/>
|
||||||
|
<ListPresentation/>
|
||||||
|
<ExtendedListPresentation/>
|
||||||
|
<Explanation/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
</Properties>
|
||||||
|
<ChildObjects>
|
||||||
|
<EnumValue uuid="d4414838-b4a0-4852-93a4-6fdd71b7b16b">
|
||||||
|
<Properties>
|
||||||
|
<Name>КаждыйЧас</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Каждый час</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</EnumValue>
|
||||||
|
<EnumValue uuid="0dcec1a9-d267-43f4-ba1f-ed1c5ade39d7">
|
||||||
|
<Properties>
|
||||||
|
<Name>КаждыйДень</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Каждый день</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</EnumValue>
|
||||||
|
<EnumValue uuid="b9c44b33-0379-4f76-9ca4-6af791787242">
|
||||||
|
<Properties>
|
||||||
|
<Name>КаждуюНеделю</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Каждую неделю</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</EnumValue>
|
||||||
|
<EnumValue uuid="57436476-e3bb-4fc8-bcf2-eca06f286cfe">
|
||||||
|
<Properties>
|
||||||
|
<Name>НеУведомлять</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Не уведомлять</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</EnumValue>
|
||||||
|
</ChildObjects>
|
||||||
|
</Enum>
|
||||||
|
</MetaDataObject>
|
||||||
@@ -64,18 +64,18 @@
|
|||||||
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
|
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
|
||||||
</Properties>
|
</Properties>
|
||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Resource uuid="cdc02f8b-b82c-48d9-b936-bb2515c15258">
|
<Resource uuid="14a9eafe-73cb-4605-b70e-2a6aae888c2c">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Name>ОтправлятьУведомления</Name>
|
<Name>Периодичность</Name>
|
||||||
<Synonym>
|
<Synonym>
|
||||||
<v8:item>
|
<v8:item>
|
||||||
<v8:lang>ru</v8:lang>
|
<v8:lang>ru</v8:lang>
|
||||||
<v8:content>Отправлять уведомления</v8:content>
|
<v8:content>Периодичность</v8:content>
|
||||||
</v8:item>
|
</v8:item>
|
||||||
</Synonym>
|
</Synonym>
|
||||||
<Comment/>
|
<Comment/>
|
||||||
<Type>
|
<Type>
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
<v8:Type>cfg:EnumRef.ПериодичностьУведомлений</v8:Type>
|
||||||
</Type>
|
</Type>
|
||||||
<PasswordMode>false</PasswordMode>
|
<PasswordMode>false</PasswordMode>
|
||||||
<Format/>
|
<Format/>
|
||||||
@@ -103,6 +103,48 @@
|
|||||||
<DataHistory>Use</DataHistory>
|
<DataHistory>Use</DataHistory>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Resource>
|
</Resource>
|
||||||
|
<Attribute uuid="5294ea35-db35-4f2d-9764-31972faa1063">
|
||||||
|
<Properties>
|
||||||
|
<Name>ПоследняяОтправка</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Последняя отправка</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:dateTime</v8:Type>
|
||||||
|
<v8:DateQualifiers>
|
||||||
|
<v8:DateFractions>DateTime</v8:DateFractions>
|
||||||
|
</v8:DateQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip/>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:nil="true"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
<Dimension uuid="3d0a0b1e-a7f9-4b8d-b95c-6e23973e0896">
|
<Dimension uuid="3d0a0b1e-a7f9-4b8d-b95c-6e23973e0896">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Name>ИдЧата</Name>
|
<Name>ИдЧата</Name>
|
||||||
|
|||||||
@@ -1,21 +1,69 @@
|
|||||||
#Область ПрограммныйИнтерфейс
|
#Область ПрограммныйИнтерфейс
|
||||||
|
|
||||||
Функция УправлениеОповещениями(ИдЧата, Включить) Экспорт
|
Функция УправлениеУведомлениями(ИдЧата, Периодичность) Экспорт
|
||||||
|
|
||||||
МенеджерЗаписи = СоздатьМенеджерЗаписи();
|
Менеджер = СоздатьМенеджерЗаписи();
|
||||||
МенеджерЗаписи.ИдЧата = ИдЧата;
|
Менеджер.ИдЧата = ИдЧата;
|
||||||
МенеджерЗаписи.Прочитать();
|
Менеджер.Прочитать();
|
||||||
Если МенеджерЗаписи.Выбран() Тогда
|
|
||||||
Если МенеджерЗаписи.ОтправлятьУведомления = Включить Тогда
|
Если Не Менеджер.Выбран() Тогда
|
||||||
Возврат СтрШаблон("Оповещения уже %1", ?(Включить, "включены", "выключены"));
|
Возврат НеудачнаяСменеПериодичности(Периодичность);
|
||||||
Иначе
|
|
||||||
МенеджерЗаписи.ОтправлятьУведомления = Включить;
|
|
||||||
МенеджерЗаписи.Записать();
|
|
||||||
Возврат СтрШаблон("Оповещения %1", ?(Включить, "включены 🔉", "выключены 🔇"));
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат СтрШаблон("Не удалось %1 оповещения", ?(Включить, "включить", "выключить"));
|
Если Менеджер.Периодичность = Периодичность Тогда
|
||||||
|
Возврат ПовторнаяПопыткаУстановки(Периодичность);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Менеджер.Периодичность = Периодичность;
|
||||||
|
Менеджер.Записать();
|
||||||
|
|
||||||
|
Возврат УспешнаяСменаПериодичности(Периодичность);
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ОбновитьДатуОтправкиУведомления(ИдЧата) Экспорт
|
||||||
|
|
||||||
|
Менеджер = СоздатьМенеджерЗаписи();
|
||||||
|
Менеджер.ИдЧата = ИдЧата;
|
||||||
|
Менеджер.Прочитать();
|
||||||
|
|
||||||
|
Если Менеджер.Выбран() Тогда
|
||||||
|
Менеджер.ПоследняяОтправка = ТекущаяДатаСеанса();
|
||||||
|
Менеджер.Записать();
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
|
Функция НеудачнаяСменеПериодичности(Периодичность)
|
||||||
|
|
||||||
|
Возврат СтрШаблон("Не удалось %1 уведомления",
|
||||||
|
?(Периодичность = Перечисления.ПериодичностьУведомлений.НеУведомлять, "выключить", "включить"));
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ПовторнаяПопыткаУстановки(Периодичность)
|
||||||
|
|
||||||
|
Если Периодичность = Перечисления.ПериодичностьУведомлений.НеУведомлять Тогда
|
||||||
|
Возврат "🔇 Уведомления уже выключены";
|
||||||
|
Иначе
|
||||||
|
Возврат СтрШаблон("🔉 Уведомления уже включены (%1)",
|
||||||
|
НРег(ТелеграмПовторноеИспользование.СинонимПеречисления(Периодичность)));
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Функция УспешнаяСменаПериодичности(Периодичность)
|
||||||
|
|
||||||
|
Если Периодичность = Перечисления.ПериодичностьУведомлений.НеУведомлять Тогда
|
||||||
|
Возврат "🔇 Уведомления выключены";
|
||||||
|
Иначе
|
||||||
|
Возврат СтрШаблон("🔉 Уведомления включены (%1)",
|
||||||
|
НРег(ТелеграмПовторноеИспользование.СинонимПеречисления(Периодичность)));
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<JobSchedule xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.19">
|
<JobSchedule xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.19">
|
||||||
<Schedule BeginDate="0001-01-01" EndDate="0001-01-01" BeginTime="09:00:00" EndTime="18:00:00" CompletionTime="00:00:00" CompletionInterval="0" RepeatPeriodInDay="14400" RepeatPause="0" WeekDayInMonth="0" DayInMonth="0" WeeksPeriod="1" DaysRepeatPeriod="1">
|
<Schedule BeginDate="0001-01-01" EndDate="0001-01-01" BeginTime="00:00:00" EndTime="00:00:00" CompletionTime="00:00:00" CompletionInterval="0" RepeatPeriodInDay="3600" RepeatPause="0" WeekDayInMonth="0" DayInMonth="0" WeeksPeriod="1" DaysRepeatPeriod="1">
|
||||||
<ent:WeekDays>1 2 3 4 5</ent:WeekDays>
|
<ent:WeekDays>1 2 3 4 5 6 7</ent:WeekDays>
|
||||||
<ent:Months>1 2 3 4 5 6 7 8 9 10 11 12</ent:Months>
|
<ent:Months>1 2 3 4 5 6 7 8 9 10 11 12</ent:Months>
|
||||||
<ent:DetailedDailySchedules BeginDate="0001-01-01" EndDate="0001-01-01" BeginTime="09:00:00" EndTime="18:00:00" CompletionTime="00:00:00" CompletionInterval="0" RepeatPeriodInDay="14400" RepeatPause="0" WeekDayInMonth="0" DayInMonth="0" WeeksPeriod="1" DaysRepeatPeriod="0">
|
<ent:DetailedDailySchedules BeginDate="0001-01-01" EndDate="0001-01-01" BeginTime="00:00:00" EndTime="00:00:00" CompletionTime="00:00:00" CompletionInterval="0" RepeatPeriodInDay="3600" RepeatPause="0" WeekDayInMonth="0" DayInMonth="0" WeeksPeriod="1" DaysRepeatPeriod="0">
|
||||||
<ent:WeekDays/>
|
<ent:WeekDays/>
|
||||||
<ent:Months/>
|
<ent:Months/>
|
||||||
</ent:DetailedDailySchedules>
|
</ent:DetailedDailySchedules>
|
||||||
|
|||||||
@@ -16,7 +16,6 @@
|
|||||||
<Explanation/>
|
<Explanation/>
|
||||||
<Picture/>
|
<Picture/>
|
||||||
<Content>
|
<Content>
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">6a6de453-1c7e-4af2-9ed7-b9b7e86af49a</xr:Item>
|
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">InformationRegister.ОтслеживаниеВерсийКонфигураций</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">InformationRegister.ОтслеживаниеВерсийКонфигураций</xr:Item>
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">Catalog.Конфигурации</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">Catalog.Конфигурации</xr:Item>
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">Enum.ТелеграмСтатусДиалога</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">Enum.ТелеграмСтатусДиалога</xr:Item>
|
||||||
@@ -25,6 +24,8 @@
|
|||||||
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.ОбновленияРегламент</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.ОбновленияРегламент</xr:Item>
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">InformationRegister.УведомленияОНовыхВерсиях</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">InformationRegister.УведомленияОНовыхВерсиях</xr:Item>
|
||||||
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.РаботаСОбновлениямиВызовСервера</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.РаботаСОбновлениямиВызовСервера</xr:Item>
|
||||||
|
<xr:Item xsi:type="xr:MDObjectRef">Enum.ПериодичностьУведомлений</xr:Item>
|
||||||
|
<xr:Item xsi:type="xr:MDObjectRef">b86f0a31-b523-4c41-9927-4dde82319197</xr:Item>
|
||||||
</Content>
|
</Content>
|
||||||
</Properties>
|
</Properties>
|
||||||
<ChildObjects/>
|
<ChildObjects/>
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<VERSION>44</VERSION>
|
<VERSION>50</VERSION>
|
||||||
|
|||||||
Reference in New Issue
Block a user