Что такое Agent Workspace и необходимые для пространства роли?

Прежде всего, насчёт актуальности информации по версии инстанса: на момент написания этой статьи для примера используется инстанс с версией апгрейда Rome.

В ServiceNow Agent Workspace представляет собой рабочее пространство, в котором можно кастомизировать и настроить практически всё под любые типы задач. Есть заранее подготовленные рабочие области следующих типажей:

  1. IT Service Management

  2. Customer Service Management

  3. Request Management

  4. HR Service Delivery

Вкратце об Agent Workspace можно сказать следующее: здесь пользователи могут быстро находить, просматривать, проверять и брать в работу любые кейсы, оставаясь при этом на одной вкладке браузера.

Для чего нужен Agent Workspace? Для того, чтобы повышать прозрачность в работе пользователей и иметь возможность увидеть проблемы и инциденты в реальном времени.

Чтобы активировать рабочую среду Agent Workspace, необходимо включить плагин в System Definition – Plugins от пользователя с ролью администратора инстанса.

Agent Workspace содержит в себе те же функции, что и интерфейс UI16, но в несколько другом расположении: тут точно так же можно сортировать столбцы, фильтровать записи по значению поля, редактировать списки, добавлять многоуровневые фильтры при поиске среди записей и т. д.

Для доступа к рабочей среде Agent Workspace необходима одна из следующих ролей (помимо главного администратора):

Роль

Описание

workspace_admin (содержит в себе: form_admin, chat_admin, template_editor, ui_action_admin, personalize_form, interaction_admin, workspace_list_admin; )

Предоставляет доступ к приложению и модулям для конфигурации и изменения рабочей среды Agent Workspace и её отображения для других пользователей.

workspace_list_admin (содержит в себе agent_workspace_user)

Позволяет создавать категории списков, создавать и назначать отфильтрованные списки на отображение в Agent Workspace – Lists. Данная роль повышается в elevated role.

agent_workspace_user (данная роль присутствует в ролях itil (ITSM) и sn_esm_agent(CSM) )

Предоставляет пользователю доступ в Agent Workspace UI.


Краткий обзор концепта и функционала Agent Workspace

Найти Agent Workspace в инстансе довольно просто, достаточно вбить Agent Workspace в поиск в фильтр-навигаторе либо по ссылке инстанса:

https://<инстанс>.service-now.com/now/workspace/agent/home

Расположение "Agent Workspace" в Filter Navigator
Расположение "Agent Workspace" в Filter Navigator
Главная страница "Agent Workspace" при первом открытии
Главная страница "Agent Workspace" при первом открытии

Все элементы в пределах пространства Agent Workspace можно полностью кастомизировать под свою необходимость.

В правом верхнем углу рабочего пространства находятся уведомления и глобальный поиск.

Глобальный поиск в пространстве "Agent Workspace"
Глобальный поиск в пространстве "Agent Workspace"

Сбоку слева располагаются основные кнопки: home, lists, analytics center, inbox – в зависимости от того, какие из них включены в настройках отображения.

Все рабочие записи находятся во второй вкладке – lists (cases, incidents, problem и т. д.), и что именно за списки будут отображены разным пользователям, точно так же можно настраивать, как и в интерфейсе UI16 –создавать новые списки либо изменять уже существующие.

Расположение "Списков" в Agent Workspace
Расположение "Списков" в Agent Workspace

Также имеется возможность создать запись прямо с вкладки Lists с помощью Add Interaction:

Создание "новой записи" через "Add Interaction"
Создание "новой записи" через "Add Interaction"

С апгрейда по версии Rome вкладка Lists выглядит следующим образом:

Разделение на элементы в "Agent Workspace"
Разделение на элементы в "Agent Workspace"

В самом хэдере каждой записи есть возможность добавлять тэги:

Возможность добавления тэгов для записи
Возможность добавления тэгов для записи

Конфигурация Agent Workspace

Для текущего пользователя можно отдельно включить/отключить отображение некоторых элементов, не затрагивая отображение для всех остальных пользователей, через Settings в верхней кнопке user menu.

Отображение элементов для текущего пользователя
Отображение элементов для текущего пользователя

Чтобы настроить отображение для остальных пользователей, необходимо воспользоваться Configure Workspace либо Configure Page (необходимая роль - workspace_admin).

Настройка отображения для всех пользователей
Настройка отображения для всех пользователей

Так, к примеру, Configure Page – Form Layout подойдет для настройки отображения конкретных полей для секций на самой форме:

Настройка общего отображения через Form Layout
Настройка общего отображения через Form Layout

А Configure page – Related Lists откроет страницу для настройки отображаемых внутренних вкладок внизу формы, где Selected - выбранные для отображения вкладки секции Related Items Menu на форме.

Отображение вкладок Related Lists для формы записей в Agent Workspace
Отображение вкладок Related Lists для формы записей в Agent Workspace

Остальные возможности Configure Page открывают следующие таблицы в пространстве UI16, но с разными фильтрами:

  1. UI Actions (sys_ui_action.list)

  2. Ribbon (sys_aw_ribbon_setting.list)

  3. Related Items (sys_declarative_action_assignment.list)

  4. Contextual Side Panel (sys_declarative_action_assignment.list)

Configure Workspace позволяет кастомизировать страницы, компоненты, логотип, хэдер и другие объекты в рабочем пространстве:

Пример тестовой кастомизации среды Agent Workspace для наглядности
Пример тестовой кастомизации среды Agent Workspace для наглядности

С помощью Open in UI Builder можно перейти к настройке внешнего вида страниц Agent Workspace и видоизменить компоненты на них:

Редактирование элементов и страниц Agent Workspace в "Ui Builder"
Редактирование элементов и страниц Agent Workspace в "Ui Builder"

К примеру, теперь главная страница данного пространства Agent Workspace будет выглядеть так:

Пример кастомизированной главной страницы в Agent Workspace
Пример кастомизированной главной страницы в Agent Workspace

При открытии Configure Workspace в самом низу в Related lists имеются следующие возможности:

  1. Настроить отображение списков в Lists (Workspace Lists)

  2. Удалить или редактировать тэги для страниц в Home (Landing Pages - полноценное редактирование через UI Builder)

  3. Изменить таблицу для кнопки Add Interaction (New Record Menu Items)

  4. Изменить отображение основных кнопок слева в пространстве Agent Workspace (Workspace Modules)

    Возможности в "Configure Workspace"
    Возможности в "Configure Workspace"

Для настройки отображения списков в Lists необходимая минимальная роль - workspace_list_admin. В списках есть возможность создавать новые или изменять существующие категории (sys_aw_list_category.list).

Категории списков в Agent Workspace
Категории списков в Agent Workspace

Чтобы изменить или создать именно новые списки в Lists, понадобится таблица Workspace Lists (sys_aw_list.list).

Таблица для изменения или создания новых списков в Agent Workspace
Таблица для изменения или создания новых списков в Agent Workspace

При создании списка всегда важно учитывать поле order, т. к. от него зависит, в каком порядке он отобразится во вкладке Lists.

Пример создания нового списка для вкладки "Lists"
Пример создания нового списка для вкладки "Lists"
Пример отображения нового списка в "Lists"
Пример отображения нового списка в "Lists"

Итог и быстрый взгляд на плагины и компоненты

В ServiceNow также имеются плагины и для других рабочих пространств, имеющие заранее подготовленные настройки конфигурации, для работы с ними их необходимо установить. Такими, например, являются:

  • CMDB (cmdb-workspace)

  • Customer Service Management (snc.agent_workspace.csm)

  • HR Services (sn_hr_agent_workspace)

  • IT Service Management (snc.agent_workspace.itsm)

  • Operational Intelligence (oi-scoped-app)

  • Security Incident Response (sn_app_secops_ui)

А также дополнительные плагины конкретно для рабочей среды Agent Workspace:

  • Advanced Work Assignment [com.glide.awa]

  • Agent Chat [com.glide.interaction.awa]

  • Openframe [com.sn_openframe]

Дополнительные плагины для Agent Workspace предоставляют возможность пользователю связаться с «агентом» поддержки инстанса с помощью прямого чата (Agent Chat), встроить возможность «почты» прямо в Agent Workspace и подключить много других полезных функций.

В среде Agent Workspace можно не только создать кастомизированную целевую страницу, но и создавать собственные компоненты в зависимости от нужд клиента - от встраивания интеграции с внешними программами прямо из рабочего пространства инстанса до просто немного видоизмененных компонентов вроде Agent Assist. Для этого в Service Now существуют Now-компоненты, включающие в себя контейнеры, выдвижные списки, компоненты для аналитики производительности или визуализацию отчетных данных и множество других элементов, которые можно найти по ссылке ниже:

https://developer.servicenow.com/dev.do#!/reference/now-experience/components

Страница для поиска информации по конкретным элементам для Agent Workspace и их видоизменению
Страница для поиска информации по конкретным элементам для Agent Workspace и их видоизменению

На странице с компонентами находится возможность просмотреть и интерактивно изменить их код под свои нужды, после чего использовать его для девелопинга видоизмененного компонента для ServiceNow в том же Visual Studio Code или с помощью Node.js (но это отдельная большая тема, в которую в данной статье сильно углубляться уже не станем). Для деплоинга своих компонентов останется только подключиться через Visual Studio Code к инстансу и произвести now-cli команду деплоя. Все необходимые инструкции по now-cli можно найти также здесь:

https://developer.servicenow.com/dev.do#!/reference/now-experience/rome/cli/getting-started

Страница с более подробным гайдом по написанию более сложных кастомных элементов
Страница с более подробным гайдом по написанию более сложных кастомных элементов

Благодаря Now-компонентам можно полностью контролировать визуализацию страницы в среде Agent Workspace.

Все эти компоненты можно добавить на страницу формы записи в Agent Workspace в любое место, где это вам необходимо (в моем случае мы однажды добавляли видоизмененный Agent Assist-компонент с интеграцией для MS Teams, чтобы пользователь мог найти экспертов по своему вопросу и увидеть, онлайн ли они, либо в какой период будут на связи. Самым сложным было именно разобраться с деплоингом в инстанс и подключением к нему безопасными методами по всем best practices, так как секьюрность данных клиента - всегда на первом месте).

Создание отдельных компонентов для Agent Workspace – достаточно обширная тема, но если коснуться её хотя бы вкратце, всегда надо помнить про безопасность кода (храните все константы, ссылки и любые конкретные данные в таблице sys_properties на инстансе, в коде только ссылайтесь константами на место, где оно хранится). Всегда оставляйте комментарии в коде для коллег, которым однажды может понадобиться работать с вашим компонентом. Всегда уточняйте возможность действий с данным компонентом, прежде чем задеплоить его на инстанс, чтобы не нарушить работу других компонентов на инстансе, о которых вы можете не знать.

Подводя итог, из личного опыта скажу: работа с кастомизацией Agent Workspace сначала может показаться чем-то страшным и непонятным. Где и что менять? Можно ли обойтись уже имеющимися в ServiceNow решениями? Связаны ли с Workspace какие-то конкретные таблицы для изменения компонентов без хардкодинга? Однако, как и с любой другой практикой, главное - начать, пробовать делать что-то самостоятельно и углубляться в изучение. Чем больше пробуешь, тем больше знаешь и разбираешься в данном вопросе, и работа с AgentWorkspace - не исключение.

Комментарии (0)