Команды Telegram позволяют с помощью клиента Telegram просматривать и управлять задачами.
Количество команд зависит нужд пользователя и его роли. Каждая команда имеет список ролей для разделенного доступа пользователей к командам. Чтобы команда была доступна абоненту Telegram, у абонента должна быть соответствующая роль.
Например у Команды есть роль CRM. Чтобы абонент Telegram имел доступ к данной команде у него тоже должна быть роль CRM.
Для настроек команд необходимо перейти в Настройки Techspot:CRM далее выбрать вкладку Telegram и выбрать ссылку Команды.
В списке будут две команды по умолчанию /start и /task. Данные команды предопределенные в системе.
Команда /start. #
Данная команда позволяет начать работу с Techspot:CRM. Необходима для регистрации абонентов Telegram в Techspot:CRM.
Наименование: /start
Команда: /start
На закладке Код быстрого ответа нужно вставить код для выполнения.
ОтветСистемы = "Отправьте свой контакт (по кнопке ниже) для регистрации в Телеграмм БОТ TECHSPOT:CRM";
Настройка закладки Код быстрого ответа.

Команда /task. #
Данная команда формирует меню под задачей.
Наименование: /task
Команда: /task
Параметр команды: Код
Имя команды в сообщении: Подробнее…
На закладке Код быстрого ответа нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
ОтветСистемы = "Текущая задача: "+Задача.Наименование;
Настройка закладки Меню в сообщении.

Команда Показать информацию. #
Наименование: 1.1. Показать информацию.
Команда: show_task_info
Параметр команды: Код
Имя команды в сообщении: ℹ︎Инфо
На закладке Код быстрого ответа нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
ОтветСистемы = "<b>Информация по задаче:</b> "+"
|<b>✽ Задача:</b> "+Задача.Наименование;
ОтветСистемы = ОтветСистемы + "
|<b>Создана:</b> " + Задача.ДатаСоздания + "
|<b>Статус:</b> " + ?(Задача.Выполнена,"<b>Выполнена:</b> " + Задача.ДатаВыполнения,"не выполнена") + "
|<b>Дедлайн:</b> " + ?(СокрЛП(Задача.ВыполнитьПо)<>"01.01.0001 0:00:00",Задача.ВыполнитьПо ," ") + "
|<b>Автор: </b>" + Задача.Автор+ "|<b>Объект задачи: </b>" + Задача.Объект+ "
|<b>Основание:</b> " + Задача.Основание+ "|";
ОтветСистемы =ОтветСистемы + "<b>Теги:</b> ";
Для Каждого ТекСтр Из Задача.Теги Цикл
ОтветСистемы = ОтветСистемы + "
|▪︎ " + ТекСтр.Тег;
КонецЦикла;
ОтветСистемы = ОтветСистемы+ "|";
ОтветСистемы = ОтветСистемы + "<b>Гиперссылки:</b> ";
Для Каждого ТекСтр Из Задача.ГиперСсылки Цикл
ОтветСистемы = ОтветСистемы + " |⎋ " + ТекСтр.Наименование +" - "+ ТекСтр.Гиперссылка;
КонецЦикла;
Настройка закладки Меню в сообщении.

Команда Показать ответственных. #
Наименование: 1.2. Показать ответственных.
Команда: show_task_employee
Параметр команды: Код
Имя команды в сообщении: ✪ Ответственные
На закладке Код быстрого ответа нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
| стс_ОтветственныеПоЗадаче.Ответственный КАК Ответственный,
| стс_ОтветственныеПоЗадаче.ТипОтветственного КАК ТипОтветственного
|ИЗ
| РегистрСведений.стс_ОтветственныеПоЗадаче КАК стс_ОтветственныеПоЗадаче
|ГДЕ
| стс_ОтветственныеПоЗадаче.Задача = &Задача
|УПОРЯДОЧИТЬ ПО
| стс_ОтветственныеПоЗадаче.Ответственный";
Запрос.УстановитьПараметр("Задача",Задача);
ТЗ = Запрос.Выполнить().Выгрузить();
ОтветСистемы = "<b>Ответственные по задаче:</b> "+"
|<b>✽ Задача:</b> "+Задача.Наименование;
ОтветСистемы = ОтветСистемы + "|<b>Ответственные:</b>";
Для Каждого ТекСтр Из ТЗ Цикл
Если ТекСтр.ТипОтветственного = Перечисления.стс_ТипыОтветственныхЛиц.Ответственный
Тогда
ОтветСистемы = ОтветСистемы + "
|✪ "+ТекСтр.Ответственный;
КонецЕсли;
КонецЦикла;
ОтветСистемы = ОтветСистемы + "|<b>Наблюдатели:</b>";
Для Каждого ТекСтр Из ТЗ Цикл
Если ТекСтр.ТипОтветственного = Перечисления.стс_ТипыОтветственныхЛиц.Наблюдатель
Тогда ОтветСистемы = ОтветСистемы + "
|● "+ТекСтр.Ответственный;
КонецЕсли;
КонецЦикла;
Настройка закладки Меню в сообщении.

Команда Показать расположение в канбане. #
Наименование: 1.3. Показать расположение в канбане.
Команда: show_task_kanban
Параметр команды: Код
Имя команды в сообщении: ⎈ В канбане
На закладке Код быстрого ответа нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
ОтветСистемы = "<b>Расположение задачи в канбане:</b> "+"
|<b>✽ Задача:</b> "+Задача.Наименование;
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
| стс_Канбан.Проект КАК Проект,
| стс_Канбан.Доска КАК Доска,
| стс_Канбан.Колонка КАК Колонка
|ИЗ
| РегистрСведений.стс_Канбан КАК стс_Канбан
|ГДЕ
| стс_Канбан.Задача = &Задача";
Запрос.УстановитьПараметр("Задача",Задача);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ОтветСистемы = ОтветСистемы + "
|⎈"+Выборка.Проект + " ➤ " + Выборка.Доска + " ➤ " + Выборка.Колонка;
КонецЦикла;
Настройка закладки Меню в сообщении.

Команда Показать Чек лист. #
Наименование: 1.4. Показать Чек лист.
Команда: show_task_check
Параметр команды: Код
Имя команды в сообщении: ☑ Чек лист
На закладке Код быстрого ответа нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
ОтветСистемы = "<b>Чек лист по задаче:</b> "+"
|<b>✽ Задача:</b> "+Задача.Наименование;
Для Каждого ТекСтр Из Задача.ЧекЛист Цикл
ОтветСистемы = ОтветСистемы + "
|" + ?(ТекСтр.Выполнено=1,"☑ ","<b>☐</b> ") + ТекСтр.Наименование;
КонецЦикла;
Настройка закладки Меню в сообщении.

Команда Добавить сообщение в ленту. #
Наименование: 1.5. Добавить сообщение в ленту.
Команда: comment_task
Имя команды в сообщении: ⊕ В ленту
Показать окно ответа на сообщение: Да
На закладке Скрипт последующей обработки нужно вставить код для выполнения.
Задача = Справочники.стс_Задачи.НайтиПоКоду(Параметры);
текСотрудник = СтруктураПараметров.АбонентТелеграмм.Объект;
ОписаниеВЛенту = Новый ФорматированныйДокумент;
ОписаниеВЛенту.Добавить(,
ТипЭлементаФорматированногоДокумента.ПереводСтроки);
ЭлементФД = ОписаниеВЛенту.Добавить(" << "+ТекущаяДата()+" "+текСотрудник + " >>", ТипЭлементаФорматированногоДокумента.Текст);
ЭлементФД.ЦветТекста = WebЦвета.Серый;
ЭлементФД.НавигационнаяСсылка = ""+ТекущаяДата();
ОписаниеВЛенту.Добавить(, ТипЭлементаФорматированногоДокумента.ПереводСтроки);
ОписаниеВЛенту.Добавить(ОтветПользователя, ТипЭлементаФорматированногоДокумента.Текст);
Запись = РегистрыСведений.стс_ЛентаЗадачи.СоздатьМенеджерЗаписи();
Запись.Период = ТекущаяДата();
Запись.Задача = Задача;
Запись.Сотрудник = текСотрудник;
Запись.Описание = Новый ХранилищеЗначения(ОписаниеВЛенту);
Запись.Записать();
//ВзаимодействиеМассивОтветственных = стс_ЗадачаСервер.ПолучитьМассивОтветственныхСотрудниковПоЗадаче(Задача,Истина,Истина);
стс_Обсуждение.ДобавитьСообщение(Задача,"Добавлен комментарий ч/з телеграмм",,МассивОтветственных);
//Телеграмм//ТелеграммУведомления = стс_Уведомления.Инициализировать_ПринудительноТелеграммУведомления();
//стс_Уведомления.УведомитьПоПоНастройкеИзЗадачи(Задача,Ложь,"Добавлен комментарий ч/з телеграмм",ТелеграммУведомления);
//Событие по задачестс_ЗадачаСервер.ДобавитьСобытиеПоЗадаче(Задача,,Ложь,Истина);
ОтветСистемы = "Сообщение добавлено в ленту";
Настройка закладки Меню в сообщении. Оставляем пустым.
