Организации¶
Организация объединяет клиентов, которые работают в одной компании или команде. У неё есть имя, домены электронной почты, с которых пишут её люди, заметки, видимые только сотрудникам, и один переключатель: читают ли участники обращения друг друга.
Организации предназначены для клиентов. Сотрудники никогда не входят в организацию; то, какие заявки читает сотрудник, определяется проектами, в которых он работает.
Что хранит организация¶
| Поле | Что это |
|---|---|
| Name | Показывается сотрудникам везде и участникам в портале. Уникально без учёта регистра. |
| Email domains | До 50, например acme.com. Клиент, чей адрес находится на одном из них, присоединяется сам. Каждый домен принадлежит не более чем одной организации. |
Sharing (share_tickets) |
По умолчанию выключено. Когда включено, участники читают обращения друг друга. |
| Notes | Только для сотрудников. Никогда не отправляются клиенту. |
Каждый клиент принадлежит не более чем одной организации. Удаление организации оставляет её людей и заявки на месте, но без организации.
Создание организации¶
- В рабочей области откройте Organizations (в разделе Library) и выберите New organization.
- Введите имя, домены электронной почты и заметки.
- Включите общий доступ, если коллеги должны читать обращения друг друга.
- Сохраните.
- На странице организации используйте Add people from its domains, чтобы добавить клиентов, которые уже есть на этих доменах.
Для чтения организаций нужно helpdesk-pro.desk; для создания, редактирования и управления участниками — helpdesk-pro.people.manage.
Присоединение по домену электронной почты¶
Клиент сам присоединяется к организации, в которой указан домен его адреса, когда:
- Helpdesk Pro впервые встречает его по почте (новая заявка или ответ с нового адреса), или
- он подтверждает адрес (подтверждённая учётная запись, ссылка для входа или привязка адреса), или
- сотрудники меняют его адрес на экране People.
Учитывается только подтверждённый адрес и только для клиента, который ещё не состоит ни в одной организации. Тот, кто регистрируется с неподтверждённым адресом, не присоединяется, поэтому никто не сможет читать обращения Acme, зарегистрировавшись как someone@acme.com. Клиент, уже состоящий в организации, никогда не переносится по домену; его переносят сотрудники.
Публичные почтовые провайдеры отклоняются. Организация не может указать gmail.com, outlook.com, icloud.com, proton.me или других публичных провайдеров, известных Helpdesk Pro, потому что к ней присоединился бы каждый с таким адресом. Добавьте других (например, регионального провайдера) через organizations.blocked_domains. Отклонённый домен возвращается как ошибка поля («gmail.com is a public email provider»), как и домен, уже указанный в другой организации.
Когда вы добавляете домен в организацию, где уже есть клиенты на нём, Add people from its domains добавляет каждого клиента с подтверждённым адресом на этом домене, который ещё не состоит в организации. Организация без участников предлагает то же на карточке Members: Add 2 people from acme.com.
К какой организации относится заявка¶
Заявка получает организацию заявителя при создании и сохраняет её. Перенос человека в другую организацию не переносит его более ранние заявки: они остаются с организацией, для которой были открыты, а новые заявки идут в новую. Человек, сменивший работу, не забирает обращения прежнего работодателя.
Сотрудники, которые могут редактировать заявку, переносят её кнопкой Change на карточке Organization. Перенос записывается в активность заявки для сотрудников, а когда любая из организаций делится заявками, рабочая область до переноса сообщает, кто получит или потеряет доступ.
Общий доступ к обращениям для коллег¶
Когда общий доступ включён, каждый участник читает обращения организации, в каком бы проекте они ни находились:
- Они читают публичную переписку: ответы, статус и публичную активность. Никогда внутренние заметки или внутреннюю активность.
- Они только читают. Коллега не может ответить, отключить уведомления или отметить решённым обращение, в котором его нет. Чтобы коллега участвовал, добавьте его в обращение как копию.
- Им не отправляют писем и уведомлений об обращениях, которые они могут лишь читать. Обновления в реальном времени доходят до открытой страницы.
- Они никогда не читают обращения другой организации, и ничего не открывается, пока общий доступ выключен.
Доступ следует за членством при каждом запросе. Тот, кого убрали из организации или чья организация выключила общий доступ, теряет доступ к её обращениям при следующей загрузке страницы.
В портале участники организации с общим доступом получают My organization в строке навигации, обращения организации по адресу {mount}/organization и переключатель Mine | Acme над обоими списками. У каждого общего обращения указано, кто спросил («Asked by Ada»). См. Справочный центр и портал. Поиск следует тому же правилу.
В рабочей области¶
- Organizations (
#/organizations) перечисляет каждую организацию с её доменами, участниками и заявками и ищет по именам и доменам. - Страница организации (
#/organizations/<id>) показывает её участников (с Remove), последние заявки, домены, включает ли она общий доступ и заметки. Её действия — Edit, Add a member… (по почте; новый адрес становится новым человеком), Add people from its domains и Delete…. - Редактор (
#/organizations/new,#/organizations/<id>/edit) спрашивает перед уходом с несохранёнными изменениями. - Страница человека показывает его организацию, а для клиентов в меню есть Set organization….
- Заявка имеет карточку Organization, которая ссылается на организацию и переносит заявку.
- All tickets имеет фильтр Organization в More filters: Any, No organization или одна организация (
#/tickets?organization=4или?organization=none).
Организации также работают в правилах (условие Organization и триггер The organization changes) и в отчётах (Top organizations).
Объединение и удаление людей¶
При объединении двух людей сохраняется организация оставляемого человека или, если у него её нет, берётся организация другого. Удаление человека убирает его из организации; открытые им заявки сохраняют её. См. Люди и конфиденциальность.
Настройки¶
На вкладке Client Organizations настроек плагина:
| Ключ | По умолчанию | Что делает |
|---|---|---|
organizations.blocked_domains |
[] |
Дополнительные домены электронной почты, которые не может указать ни одна организация, сверх публичных провайдеров, уже отклоняемых Helpdesk Pro. |
API и MCP¶
Все маршруты находятся под /api/v1. Для чтения нужно helpdesk-pro.desk; для каждого изменения — helpdesk-pro.people.manage, кроме переноса заявки, для которого нужно право редактировать эту заявку.
| Маршрут | Право | Запрос | Ответ | Инструмент MCP |
|---|---|---|---|---|
GET /helpdesk-pro/organizations |
desk | q, page, per_page |
Организации по имени | list_organizations |
POST /helpdesk-pro/organizations |
people.manage | {name, domains, share_tickets, notes} |
201 с организацией |
create_organization |
GET /helpdesk-pro/organizations/{id} |
desk | Организация с ETag и joinable (сколько клиентов добавил бы members/by-domain) |
get_organization |
|
PATCH /helpdesk-pro/organizations/{id} |
people.manage | If-Match; любое из {name, domains, share_tickets, notes} |
Организация | update_organization |
DELETE /helpdesk-pro/organizations/{id} |
people.manage | 204 |
delete_organization |
|
GET /helpdesk-pro/organizations/{id}/members |
desk | page, per_page |
Её участники | list_organization_members |
POST /helpdesk-pro/organizations/{id}/members |
people.manage | {person_id} или {email, name} |
Человек. Сотрудникам отказывается (422). |
add_organization_member |
POST /helpdesk-pro/organizations/{id}/members/by-domain |
people.manage | {added} |
add_organization_members_by_domain |
|
DELETE /helpdesk-pro/organizations/{id}/members/{personId} |
people.manage | 204 |
remove_organization_member |
|
GET /helpdesk-pro/people/{id}/organization |
desk | {organization: {id, name, share_tickets}} или {organization: null} |
get_person_organization |
|
PUT /helpdesk-pro/people/{id}/organization |
people.manage | {organization_id} или null |
То же | set_person_organization |
PUT /helpdesk-pro/tickets/{id}/organization |
desk, право редактировать заявку | {organization_id} или null |
Заявка | set_ticket_organization |
Организация читается так:
{
"id": 4, "name": "Acme", "domains": ["acme.com", "acme.co.uk"], "share_tickets": true,
"notes": "Pays yearly.", "member_count": 12, "ticket_count": 87,
"created_at": 1790000000, "updated_at": 1790000000
}
Организация заявки находится в её extra.organization как {id, name} (или null) для сотрудников; клиенты никогда не получают её через API.