Состояния и бизнес логика

Обсуждение вопросов и решений

Модератор: ykolesnikov

Ответить
a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Состояния и бизнес логика

Сообщение a.nazarenko » 02 авг 2013, 12:43

Добрый день! В работе нашей аутсорсинговой компании мы используем IntraService. Сейчас хотим перейти к OTRS, возникает ряд вопросов, т.к. логика работы разная.

В IntraService для каждого сервиса назначается бизнес-процесс, под бизнес процессом в этой системе понимается набор состояний и порядок их переходов. Например:
_______
Сервис: Абон.обслуживание
Состояния: Открытая -> В процессе -> Закрыта

Сервис: Поддержка 1с
Состояния: Открытая - > Назначен выезд -> В работе -> Окончен
_______
Пример абстрактный, но суть передает. Благодаря состояниям, легко определить что проходит со стороны руководителя, так и что необходимо делать, со стороны исполнителя.

В OTRS есть состояния и сервисы. Насколько я понял состояния определяются для всех сервисов сразу, и определить список состояний и порядок перехода нет возможности?
Более того, при просмотре открытой заявки, вобще не нашел изменение состояния, состояние назначается только при открытие заявки...
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 02 авг 2013, 14:07

a.nazarenko писал(а):Насколько я понял состояния определяются для всех сервисов сразу, и определить список состояний и порядок перехода нет возможности?
Можно сделать либо через ACL, либо через Process Management
a.nazarenko писал(а):Более того, при просмотре открытой заявки, вообще не нашел изменение состояния, состояние назначается только при открытие заявки
Каждая кнопка в TicketZoom - отдельно конфигурируемое представление. Требования к организации рабочих процессов у всех разные, так что все настраивается в SysConfig индивидуально. OTRS - это не "все сразу из коробки", а, скорее, Лего для любого возраста, размер деталей и изящность и уникальность полученной картинки зависит только от Вашего практического опыта :) !
А чем,если не секрет, IntraService не устраивает? У нас был один клиент, который в итоге выбрал именно IntraService, но внятно объяснить, почему, они не смогли! Видимо вмешались высшие силы :)!
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 02 авг 2013, 15:04

alexus писал(а): А чем,если не секрет, IntraService не устраивает?
В целом IntraService хорош, и как раз подошел нам, словно из коробки. Допиливается все в интерактивном режиме. Мы им пользуемся в SaaS, минусы тут очевидны, $ и приложение не у нас стоит, отсюда "лаги" сервера и т.д.
Очень хочеться получить от OTRS тот же функционал =)
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 03 авг 2013, 19:16

4500 в месяц - не так уж много. OTRS вам задаром не достанется. Придется потратить время и\или деньги на запуск. Сервер тоже требует затрат.
Другое дело - лаги и "и т.д." (что это?). Тут, конечно, если сервис не надежен, надо искать решения.
На первый взгляд OTRS только счета не может выставлять. В остальном он порвет IntraService так тузик грелку :)!
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 06 авг 2013, 19:19

alexus писал(а): OTRS вам задаром не достанется. Придется потратить время и\или деньги на запуск. Сервер тоже требует затрат.
Потратить время готов, сервер имеется.
Разбираюсь в ACL.
Пока так и не нашел, как изменять состояние в заявке. В ACL понял, как состояния настраиваются, а вот как и что изменить в SysConfig не ясно... Подскажите?
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 06 авг 2013, 19:52

Я не могу даже примерно подсказать, что настраивать в SysConfig, т.к. я не понимаю, чего Вы в итоге хотите получить. Это во-первых.
Во-вторых, мое время - небесплатное. Лично для меня оно вообще бесценно, но я готов за разумную цену мой опыт, на получение которого ушли годы, изложить Вам в доступной форме за 2-4 часа. Думаю, что это вполне разумно.
Для того, чтобы понять, КАК вам настроить OTRS, надо предварительно понять, ЧТО у вас за процессы, КАКИЕ задачи стоят. Это требует времени явно не 10 минут.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 06 авг 2013, 20:09

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

Когда создается заявка ей присваивается статус "Открытая". Каким образом изменить статус, т.е. даже в TicketZoom нигде нет кнопки изменить. Хотя в ACL я например добавил

Код: Выделить всё

$Self->{TicketAcl}->{'ACL-Name-1'} = {
        Properties => {
            Ticket => {
                Queue => ['First'],
            }
        },
        Possible => {
            Ticket => {
                State => ['new', 'open', 'test'],
            },
.....
Где test - это мой статус, который добавил в Администрирование.

На данный момент могу только закрыть заявку и таким образом изменить статус, больше ни как. :roll:
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 06 авг 2013, 20:13

К примеру - otrs/index.pl?Action=AdminSysConfig;Subaction=Edit;SysConfigSubGroup=Frontend%3A%3AAgent%3A%3ATicket%3A%3AViewNote;SysConfigGroup=Ticket. Посмотрите на доступные настройки. И так для каждого Ticket -> Frontend::Agent::Ticket::View*.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 06 авг 2013, 22:36

alexus писал(а):К примеру - otrs/index.pl?Action=AdminSysConfig;Subaction=Edit;SysConfigSubGroup=Frontend%3A%3AAgent%3A%3ATicket%3A%3AViewNote;SysConfigGroup=Ticket. Посмотрите на доступные настройки. И так для каждого Ticket -> Frontend::Agent::Ticket::View*.

Спасибо! Нашел в Frontend::Agent::Ticket::ViewNote параметр Ticket::Frontend::AgentTicketNote###State, по умолчанию No, поставил в Yes.
Теперь при добавление заметки, появилось поле "Следующее состояние".
В Acl прописал:

Код: Выделить всё

$Self->{TicketAcl}->{'ACL-Name-1'} = {
        # match properties
        Properties => {
            # current ticket match properties
            Ticket => {
                Queue => ['First'],
            }
        },
        # return possible options (white list)
        Possible => {
            # possible ticket options (white list)
            Ticket => {
                State => ['new', 'open', 'test', 'test2'],
            },
            # possible action options
            Action => {
            AgentTicketBounce        => 1,
            AgentTicketClose         => 1,
            AgentTicketCompose       => 1,
            AgentTicketCustomer      => 1,
            AgentTicketForward       => 1,
            AgentTicketFreeText      => 1,
            AgentTicketHistory       => 1,
            AgentTicketLink          => 1,
            AgentTicketLock          => 1,
            AgentTicketMerge         => 1,
            AgentTicketMove          => 1,
            AgentTicketNote          => 1,
            AgentTicketOwner         => 1,
            AgentTicketPending       => 1,
            AgentTicketPhone         => 1, # only used to hide the Split action
            AgentTicketPhoneInbound  => 0,
            AgentTicketPhoneOutbound => 0,
            AgentTicketPrint         => 1,
            AgentTicketPriority      => 1,
            AgentTicketResponsible   => 1,
            AgentTicketWatcher       => 1,
            AgentTicketZoom          => 1,
            AgentLinkObject          => 1, # only used to hide the Link action
				
				
            },
			
			
        },
    };
Теперь при добавление заметки, можно изменить статус заявки, из списка прописного в acl(кроме new). Кстати, несмотря на то что в Acl поставил

Код: Выделить всё

            AgentTicketPhoneInbound  => 0,
            AgentTicketPhoneOutbound => 0
Входящий и Исходящий звонок остались в TicketZoom. Пришлось в SysConfig, в Frontend::Agent::Ticket::MenuModule отключать.

Итого:
Вопрос, ради которого создавал тему решен, хотя я не совсем доволен. Хотелось бы иметь кнопку "Изменить статус" прямо в TicketZoom, рядом с кнопками Заметка, Владелец, Клиент и т.д. или вроде того.
В целом можно и так обойтись.

И не совсем понятно, почему acl не все параметры принимает(AgentTicketPhoneInbound)
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 06 авг 2013, 22:51

a.nazarenko писал(а):Вопрос, ради которого создавал тему решен, хотя я не совсем доволен. Хотелось бы иметь кнопку "Изменить статус" прямо в TicketZoom, рядом с кнопками Заметка, Владелец, Клиент и т.д. или вроде того.
Переведите Note как "Изменить статус".
ACL обычно работают корректно. Даже для тикетов в очереди First видны AgentTicketPhoneInbound и AgentTicketPhoneOutbound? Так не может быть! Может у Вас есть другие ACL, которые влияют?
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 06 авг 2013, 23:03

alexus писал(а): Переведите Note как "Изменить статус".
Да, уже подумал об этом :D
Может у Вас есть другие ACL, которые влияют?

Config.pm только один TicketAcl. Хотя опять же, в SysConfig отдельно все это редактируется... Путаюсь я чего-то :roll: Где то еще можно acl посмотреть?

И еще один глупый вопрос. Как в windows перезапустить OTRS, т.е. устанавливал готовый пакет OTRS+APACHE+MySQL. В службах ничего похожего не нашел. При правке config.pm приходиться ждать по пол часа, пока новые настройки вступят в силу...
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 07 авг 2013, 00:27

ACL - только в Config.pm - читайте маны.
a.nazarenko писал(а):Как в windows перезапустить OTRS, т.е. устанавливал готовый пакет OTRS+APACHE+MySQL. В службах ничего похожего не нашел. При правке config.pm приходиться ждать по пол часа, пока новые настройки вступят в силу...
Привет винде :) ! OTRS и винда - вещи очень плохо совместимые. Мы даже не занимаемся такими вариантами, только за очень дополнительную плату за "сложность и напряженность". А дело до кастомизации дойдет. Да еще вдруг модули потребуется перловые дополнительно ставить...
CentOS Minimal + Apache + Perl + MySQL - вот "правильное" решение. На любителя - выбор дистрибутива Linux можно расширить.

Совет - вариант "мы умеем админить винсервер" тут совершенно не при чем. По итогу - дороже выйдет. Про быстродействие и оптимизацию производительности я вообще молчу. А если это все еще и на виртуалке крутится... Завтра будет у вас много агентов или клиентов в кабинете или паблике, надо будет разносить веб-сервер и сервер БД. Замучаетесь...
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

yuri0001
OTRS Бывалый
Сообщения: 492
Зарегистрирован: 11 фев 2011, 20:25
Откуда: Череповец

Re: Состояния и бизнес логика

Сообщение yuri0001 » 07 авг 2013, 05:16

1. О кнопке Изменить статус. А чем не устраивает Заметка? В SysConfig можно настроить - какие поля будут доступны для корректировки на экране, опять же изменение состояния не самоцель, это результат неких действий агента, которые сопровождаются или не сопровождаются изменением состояния заявки и описанием в заметке этих действий.
Кроме того, есть пункт меню Изменить поля. Список пунктов меню в TicketZoom можно поменять в AdminConfig, какой смысл делать это через ACL. Если функции админа OTRS и сисадмина в конторе разделены...

Перезапуск в Windows - посмотрите в меню Пуск, там в группе OTRS есть, если не изменяет память, подгруппа Tools и там все рестарты вместе и по отдельности для апача и системы.
С уважением
Ю. Колесников
OTRS 3.3.1, ITSM 3.3.1, SUSE 12, MySQL5

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 07 авг 2013, 08:17

CentOS Minimal + Apache + Perl + MySQL - вот "правильное" решение
Понял. Будем перебираться, пока не поздно.
Список пунктов меню в TicketZoom можно поменять в AdminConfig, какой смысл делать это через ACL. Если функции админа OTRS и сисадмина в конторе разделены...
Убирал, как было написано в http://doc.otrs.org/3.0/ru/html/acl.html. OTRS пока для меня тот еще лес. В итоге убрал не нужные пункты меню через SysConfig. Перевел кнопку Note - как "Изменить статус", в OTRS/Kernel/Language/ru.pm
Осталось форму "Изменить статус" довести до ума, убрать все лишнее.
Правда в SysConfig в Frontend::Agent::Ticket::ViewNote, нет настроек содержания окна Заметка. Вернее есть, но далеко не все. Например я хочу убрать поле Тема, которое к тому же является обязательным, куда копать?

Перезапуск в Windows - посмотрите в меню Пуск, там в группе OTRS есть, если не изменяет память, подгруппа Tools и там все рестарты вместе и по отдельности для апача и системы.
Увы, там только OTRS Web Installer...
OTRS 3.2.9
Windows Server 2008R2 x64

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Состояния и бизнес логика

Сообщение ykolesnikov » 07 авг 2013, 08:54

Переименование кнопки Заметка на Изменить статус - не лучшее решение, на мой взгляд, ибо, несет в себе не только эту функцию. Есть еще кнопка Изменить доп.поля (в оригинале FreeFields - русское название зависит от кастомизации) - настраивается - Изменить настройки SysConfig in Ticket -> Frontend::Agent::Ticket::ViewFreeText - может Вам удобней будет использовать ее, если без этого никак. Хотя так и не пойму, зачем нужен отдельно перевод статуса, если это делается при любом действии агента. Если нельзя убрать средствами АдминКонфига, значит надо править соответсвующий .dtl файл (ох, как не люблю я этого)
Про Windows - я себе ставил для опытов локально на своей машине и в меню Пуск есть полный набор команд для OTRS, смотрите внимательней (и на win7 и на Win8 - там кнопки на стартовом экране - плитки)
Удачи! ;)
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

a.nazarenko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 02 авг 2013, 12:29
Откуда: Краснодар
Контактная информация:

Re: Состояния и бизнес логика

Сообщение a.nazarenko » 07 авг 2013, 09:57

ykolesnikov писал(а): Есть еще кнопка Изменить доп.поля (в оригинале FreeFields - русское название зависит от кастомизации) - настраивается - Изменить настройки SysConfig in Ticket -> Frontend::Agent::Ticket::ViewFreeText - может Вам удобней будет использовать ее, если без этого никак.
Отлично! Это, то что нужно, спасибо! Перевел Заметка обратно, а Свободное в поле - в Изменить статус.

Понимаю, что с этого надо было начинать. На изображение "Бизнес процесс" из IntraService. По сути, просто порядок переходов статуса заявки.
Изображение

По сути, я добиваюсь того же от OTRS. В целом уже все стало ясно, меняем статус через свободные поля, часто агенту больше никакого действия с заявкой, кроме смены статуса не нужно, по этому я так уперся в это.
Порядок переходов, для заявки в рамках конкретного сервиса, делаем в acl.

В этом плане IntraService предоставляет графический интерфейс.
В OTRS придется ручками писать, но этим нас не испугать 8-)
Если нельзя убрать средствами АдминКонфига, значит надо править соответсвующий .dtl файл (ох, как не люблю я этого)
Насколько я понимаю, после обновления, все изменения полетят?
И насколько это рисково, в плане может нарушить внутреннию логику системы?
OTRS 3.2.9
Windows Server 2008R2 x64

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Состояния и бизнес логика

Сообщение alexus » 07 авг 2013, 20:58

yuri0001 писал(а): Кроме того, есть пункт меню Изменить поля. Список пунктов меню в TicketZoom можно поменять в AdminConfig, какой смысл делать это через ACL. Если функции админа OTRS и сисадмина в конторе разделены...
Не соглашусь. Смысл есть, если есть желание построить динамическое появление нужных кнопок в зависимости от различных условий. А это только ACL
a.nazarenko писал(а):В этом плане IntraService предоставляет графический интерфейс.
В OTRS возможностей гораздо больше. Хотите графику - Process Management.
Не думаю, что правка DTL Вам потребуется. Если все верно делать - см. доку девелопера, то при обновлении внутри одной версии проблем не будет точно. На что влияют ни не влияют DTL - см. доку девелопера
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ответить