Регистрация Правила Главная форума Поиск |
0
- 29.04.2021 - 09:24
|
В стандартной УНФ есть встроенный чат бот, который запускается из формы настроек "Настройки программы" - "Настройки чат бота". При нажатии на кнопку активировать срабатывает Процедура "Активировать в коробке". Как сделать так, чтобы бот запускался при запуске сервера 1С. База серверная. &НаКлиенте Процедура АктивироватьВКоробке(Команда) Если Модифицированность Тогда СохранитьНастройкиЧатБота(); Модифицированность = Ложь; КонецЕсли; ЧатБотЗапущен = НЕ ЧатБотЗапущен; ОбновитьВидимость(); Если ЧатБотЗапущен Тогда ПодключитьОбработчикОжидания("ПроверитьСообщения", 0.1, Истина); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПроверитьСообщения() Если НЕ ЧатБотЗапущен Тогда Возврат; КонецЕсли; Если НЕ ФайловаяБаза Тогда Возврат; КонецЕсли; ДлительнаяОперация = ЗапуститьЧатБотВФоне(); Если ДлительнаяОперация = Неопределено Тогда Возврат; КонецЕсли; ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъ ект); ПараметрыОжидания.Вставить("ВыводитьОкноОжидания", Ложь); ОповещениеОЗавершении = Новый ОписаниеОповещения("ВыполнитьДействиеЗавершение", ЭтотОбъект); ДлительныеОперацииКлиент.ОжидатьЗавершение(Длитель наяОперация, ОповещениеОЗавершении, ПараметрыОжидания); КонецПроцедуры &НаКлиенте Процедура ВыполнитьДействиеЗавершение(Результат, ДополнительныеПараметры) Экспорт Если ЧатБотЗапущен Тогда ПодключитьОбработчикОжидания("ПроверитьСообщения", 1, Истина); КонецЕсли; КонецПроцедуры &НаСервере Функция ЗапуститьЧатБотВФоне() ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ИмяМетода", "ЧатботСервер.ПолучитьСообщенияЧатботаТест"); ПараметрыОтбора.Вставить("Состояние", СостояниеФоновогоЗадания.Активно); МассивФоновыхЗаданий = ФоновыеЗадания.ПолучитьФоновыеЗадания(ПараметрыОтб ора); Если МассивФоновыхЗаданий.Количество() > 0 Тогда Возврат Неопределено; КонецЕсли; ПараметрыВыполнения = Новый Структура; ПараметрыВыполнения.Вставить("ОжидатьЗавершение", 0); ПараметрыВыполнения.Вставить("НаименованиеФонового Задания", "ПолучитьСообщенияЧатботаТест"); ПараметрыВыполнения.Вставить("КлючФоновогоЗадания" , ""); ПараметрыВыполнения.Вставить("ЗапуститьНеВФоне", Ложь); ПараметрыВыполнения.Вставить("ЗапуститьВФоне", Истина); ПараметрыВыполнения.Вставить("БезРасширений", Ложь); Возврат ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВып олнения, "ЧатботСервер.ПолучитьСообщенияЧатботаТест"); | |
1
- 30.04.2021 - 08:56
| как вариант, сделать доп. обработку, которая будет работать как регламентное задание по расписанию | |
![]() | Интернет-форум Краснодарского края и Краснодара |