Tasks icon indicating copy to clipboard operation
Tasks copied to clipboard

Доработки команд телеграмм бота

Open BlizD opened this issue 5 years ago • 7 comments

RomanUpworksTeam Отличная работа! Уже тестирую в работе. Немного переделал под себя:

  1. Если команда не распознана, то бот показывает хелп

  2. Подкорректировал установку реквизита: ЗадачаОбъект.ПоказыватьВОтчетахИКанбанДоске=Истина;

  3. Возможность назначить исполнителя, при помощи служебного тега: ++ИмяПользователя__ ` НачПозПользователя= Найти(Сообщение.Текст, "++");

    Если НачПозПользователя >0 Тогда

     КонПозПользователя= Найти(Сообщение.Текст, "__");
    
     Если  КонПозПользователя >0 Тогда
     	Ответственный="";
     	ИмяПользователя= СокрЛП(Сред(Сообщение.Текст, НачПозПользователя+2,КонПозПользователя-НачПозПользователя-2));
     	Если ИмяПользователя <>"" Тогда
     		Запрос = Новый Запрос(
     		"ВЫБРАТЬ РАЗЛИЧНЫЕ
     		|    Ссылка КАК Пользователи
     		|ИЗ
     		|    Справочник.Пользователи
     		|ГДЕ 
     		|    Ссылка.Наименование = &ИмяПользователя");
    
     		Запрос.УстановитьПараметр("ИмяПользователя", ИмяПользователя);
     		ОтветсвенныйПользователь = Запрос.Выполнить().Выгрузить();
     		Для каждого строка из  ОтветсвенныйПользователь   Цикл
     			Исполнитель=строка.Пользователи.Ссылка;
     			Сообщение.Текст=СтрЗаменить(Сообщение.Текст,("++"+(Исполнитель.Наименование)+"__"),"");
     		КонецЦикла	
    
    
     	КонецЕсли	
     КонецЕсли
    

    КонецЕсли;`

Originally posted by @RomanUpworksTeam in https://github.com/BlizD/Tasks/pull/248#issuecomment-719649972

BlizD avatar Oct 31 '20 06:10 BlizD

@RomanUpworksTeam Привет. 1 и 2 - согласен - сделаешь доработку на последнем релизе #123 ? 3 - предлагаю заменить ++ на @ИмяПользователя

BlizD avatar Oct 31 '20 06:10 BlizD

https://drive.google.com/file/d/1pG2597IlDGmW3jq-pdTi2huBQBM_fwkS/view?usp=drivesdk Cделал тут но препутал номер поставил #247 и добавил меню из #280 Относительно п.3 Имя пользователя может содержать пробелы - не удобно искать . Так же в теле задачи может быть адрес email - так же усложнение кода Сделал ++ИмяПользователя@@

UpworksTeam avatar Jan 27 '21 00:01 UpworksTeam

@RomanUpworksTeam Роман, спасибо за доработки, но в таком виде пока не готов их залить. Необходимо взять последнюю CF из #123 перенести свои изменения.

Далее внести изменения в новый код:

  • проставить структурные отступы везде в твоем коде новом;
  • убрать использование Попытки Исключения, заменить на проверку заполненности или еще как то;
  • команду "++ИмяПользователя@@" заменить на "@ИмяПользователяТелеграмм", в справочник "Пользователи" добавить реквизит "узИмяПользователяТелеграмм" (Строка (150))" и искать пользователя по этому реквизиту. В этом случае имя искать ИмяПользователя начиная с @ и до первого пробела.
  • не использовать команду Найти, теперь необходимо использовать команду СтрНайти;
  • в Канбан доске на форме не для всех функций указана инструкция препроцессора
  • не понял следующий код, все задачи уже есть в списке выбранных, зачем их искать сначала через запрос, а потом еще раз через НайтиПоКоду. Необходимо использовать те ссылки, что получены через метод ПолучитьМассивЗадачПоВыделеннымСтрокам image

Также обязательно необходимо перечислить список измененных объектов по задачам:

  • ОбщийМодуль.узТелеграмБотКоманды
  • и т.д.

BlizD avatar Jan 30 '21 06:01 BlizD

Привет. Я смогу сделать, но не быстро. Проблема со свободным временем    

Saturday, January 30, 2021 8:10 AM +02:00 from Anton Ivanov [email protected]:     @RomanUpworksTeam Роман, спасибо за доработки, но в таком виде пока не готов их залить. Необходимо взять последнюю CF из #123 перенести свои изменения. Далее внести изменения в новый код:

  • проставить структурные отступы везде в твоем коде новом;
  • убрать использование Попытки Исключения, заменить на проверку заполненности или еще как то;
  • команду "++ИмяПользователя@@" заменить на "@ИмяПользователяТелеграмм", в справочник "Пользователи" добавить реквизит "узИмяПользователяТелеграмм" (Строка (150))" и искать пользователя по этому реквизиту. В этом случае имя искать ИмяПользователя начиная с @ и до первого пробела.
  • не использовать команду Найти, теперь необходимо использовать команду СтрНайти;
  • в Канбан доске на форме не для всех функций указана инструкция препроцессора
  • не понял следующий код, все задачи уже есть в списке выбранных, зачем их искать сначала через запрос, а потом еще раз через НайтиПоКоду. Необходимо использовать те ссылки, что получены через метод ПолучитьМассивЗадачПоВыделеннымСтрокам Также обязательно необходимо перечислить список измененных объектов по задачам:
  • ОбщийМодуль.узТелеграмБотКоманды
  • и т.д. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or unsubscribe .     -- Roman Televniy  

UpworksTeam avatar Feb 22 '21 11:02 UpworksTeam

Привет, хорошо

BlizD avatar Feb 22 '21 17:02 BlizD