Ввод в заявку IP-адреса клиента

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

Модератор: ykolesnikov

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

Ввод в заявку IP-адреса клиента

Сообщение ykolesnikov » 23 май 2012, 10:07

Добрый день коллеги!
Нашел на английском форуме несколько постов на эту тему и попробовал. Вроде работает.
Если кого интересует, прошу проверить, т.к. сейчас ограничен в возможности полной проверки.
Если подтвердите работоспособность, можно будет поместить в HOWTOS.
Итак.
1. Создать динамическое поле, например - IPADDR. Из картинки должно быть всё ясно.
Подстановка IP-адреса клиента.png
Подстановка IP-адреса клиента.png (41.77 КБ) 29388 просмотров
2. Активировать отображение этого поля в Ticket::Frontend::CustomerTicketMessage###DynamicField и в Ticket::Frontend::AgentTicketZoom###DynamicField - поставить - 1.
3. Добавить в CustomerTicketMessage.dtl, там где отображаются динамические поля, кусок кода

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

<!-- dtl:block:DynamicField_IPADDR -->
                <div class="Row Row_DynamicField_$QData{"Name"}" style="DISPLAY: none">
                    $Data{"Label"}
                    <div class="Field">
                        $Data{"Field"}
                    </div>
                    <div class="Clear"></div>
                </div>
<!-- dtl:block:DynamicField_IPADDR -->
Обратите внимание, что имя поля указывается в комментарии (в первой строке, такой уж синтаксис разработчиков)
4. В оригинале, у буржуев, есть еще кусок кода, который надо вставить в конец этого модуля, но у меня работает и без него (забыл раскомментировать :lol: ). Поэтому и прошу проверить.

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

#<script type="text/javascript">
#          document.getElementById('IPADDR').style.display = 'none';
#          document.getElementById('IP address').style.display = 'none';
#          document.getElementById('IPADDR').value = "$Env{"REMOTE_ADDR"}";
#</script>
5. Создавайте заявку клиентом. Поле это отображаться в форме ввода не будет.
6. Откройте заявку агентом. В окне "Информация о заявке" - должен отображаться IP-адрес клиента.
Примерно так. :oops:
Кстати, для телефонной заявки, создаваемой агентом, я так понимаю, это бесполезно, т.к. подставится IP-адрес агента.
Ну еще проверьте, что будет, если клиент входит на OTRS через прокси-сервер.
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

risemann
OTRS Новобранец
Сообщения: 3
Зарегистрирован: 24 май 2012, 15:19

Re: Ввод в заявку IP-адреса клиента

Сообщение risemann » 24 май 2012, 15:28

Меня тоже интересует эта тема.
Именно таким способом динамическое поле (текст) создать мне не удалось, пришлось в Ticket -> Core::TicketDynamicFieldDefault активизировать первые два пункта и во втором прописывать своё свежесозданное поле. Тогда работает...

Меня больше интересует другое - как передать какую либо другую переменную кроме переменных окружения.
В версии 3.0 я делал freetext поле, в котором создавал динамическую ссылку. для ссылки использовал с трудом найденную переменную $LQData{"CustomerUserID"}
в версии 3.1.5 при подстановке в линк она не отображается... отобразить удалось только $Env()

a.alexey
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 авг 2011, 18:42

Re: Ввод в заявку IP-адреса клиента

Сообщение a.alexey » 29 май 2012, 20:13

ykolesnikov писал(а): 4. В оригинале, у буржуев, есть еще кусок кода, который надо вставить в конец этого модуля, но у меня работает и без него (забыл раскомментировать :lol: ). Поэтому и прошу проверить.

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

#<script type="text/javascript">
#          document.getElementById('IPADDR').style.display = 'none';
#          document.getElementById('IP address').style.display = 'none';
#          document.getElementById('IPADDR').value = "$Env{"REMOTE_ADDR"}";
#</script>
У меня тоже работает.

А возможно ли еще добавить имя ПК?

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

Re: Ввод в заявку IP-адреса клиента

Сообщение yuri0001 » 29 май 2012, 20:32

Посмотрите на этом сайте возможные переменные - http://www.cgi101.com/book/ch3/text.html
Ну и оригинал, откуда я брал этот способ - http://forums.otterhub.org/viewtopic.php?f=60&t=9023
Я сам, в этом плохо разбираюсь. Читайте, пробуйте. Получится - поделитесь. :)
С уважением
Ю. Колесников
OTRS 3.3.1, ITSM 3.3.1, SUSE 12, MySQL5

a.alexey
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 авг 2011, 18:42

Re: Ввод в заявку IP-адреса клиента

Сообщение a.alexey » 06 фев 2013, 13:13

Я поступил немного не так, создаем динамические поля IP-address и HOSTNAME, в значение по умолчанию подставляем эти значения $Env{"REMOTE_ADDR"} и $Env{"REMOTE_HOST"}
Активировать отображение этого поля в Ticket::Frontend::CustomerTicketMessage###DynamicField и в Ticket::Frontend::AgentTicketZoom###DynamicField - поставить - 1. Активировать это поле в Ticket::Frontend::CustomerTicketMessage###DynamicField поставить - 2
Добавить в CustomerTicketMessage.dtl, там где отображаются динамические поля, кусок кода
<script type="text/javascript">
document.getElementById('IPADDR').style.display = 'none';
document.getElementById('IP address').style.display = 'none';
document.getElementById('IPADDR').value = "$Env{"REMOTE_ADDR"}";
document.getElementById('HOSTNAME').style.display = 'none';
document.getElementById('Name PC').style.display = 'none';
document.getElementById('HOSTNAME').value = "$Env{"REMOTE_HOST"}";
</script>
Что бы отображалось имя ПК в конфигах apache "hostnameLookups off" меняем на "hostnameLookups on"

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

Re: Ввод в заявку IP-адреса клиента

Сообщение yuri0001 » 06 фев 2013, 16:54

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

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

Re: Ввод в заявку IP-адреса клиента

Сообщение alexus » 07 фев 2013, 02:17

Что браузер отдаст, то и получится.
С уважением,
Алексей Юсов

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? Спросите меня как!

merkushov
OTRS Бывалый
Сообщения: 310
Зарегистрирован: 25 окт 2012, 15:06
Откуда: Воронеж
Поблагодарили: 2 раза

Re: Ввод в заявку IP-адреса клиента

Сообщение merkushov » 07 фев 2013, 09:23

Немного не так.
То как воспримет подключение web-сервер, на котором установлен OTRS то и пойдёт в поле формы и соответственно с этим значением будет сохранено Клиентом при создании заявки. Так что IP прокси сервера там более чем вероятно.
Меркушов Виктор, perl программист

Romano
OTRS Новобранец
Сообщения: 57
Зарегистрирован: 12 окт 2012, 12:49

Re: Ввод в заявку IP-адреса клиента

Сообщение Romano » 28 фев 2013, 09:49

У меня заработало без п.4
Есть смысл перенести в howto :)
OTRS + ITSM 3.2.3
Win Server 2003 R2

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

Re: Ввод в заявку IP-адреса клиента

Сообщение ykolesnikov » 28 фев 2013, 16:10

У меня тоже без него все работает, но, поскольку ПК подключены через прокси, а в этом случае отображается его IP, затея потеряла смысл. Если переносить в HOWTOS, то укажите на эту особенность, даже в начале, а то народ часто кидается делать не дочитав до конца, жалко их время. :D
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

tester
OTRS Новобранец
Сообщения: 209
Зарегистрирован: 30 янв 2013, 11:15

Re: Ввод в заявку IP-адреса клиента

Сообщение tester » 01 мар 2013, 14:42

Выполнил все рекомендации, ip кажет, но вот 5 пункт не отрабатывает: 5. Создавайте заявку клиентом. Поле это отображаться в форме ввода не будет.
У клиента всё равно видно поле ip и он может его изменить. В чём может быть проблем?
Прод: OTRS 4.0.6 ITSM 4.0.6 RHEL 6.4
Тест: OTRS 4.0.6 ITSM 4.0.6 RHEL 6.4

Romano
OTRS Новобранец
Сообщения: 57
Зарегистрирован: 12 окт 2012, 12:49

Re: Ввод в заявку IP-адреса клиента

Сообщение Romano » 01 мар 2013, 17:09

tester писал(а):Выполнил все рекомендации, ip кажет, но вот 5 пункт не отрабатывает: 5. Создавайте заявку клиентом. Поле это отображаться в форме ввода не будет.
У клиента всё равно видно поле ip и он может его изменить. В чём может быть проблем?
Надо деактивировать его отображение в юзерском интерфейсе.
Ticket::Frontend::CustomerTicketMessage###DynamicField - галочку убрать.
OTRS + ITSM 3.2.3
Win Server 2003 R2

Romano
OTRS Новобранец
Сообщения: 57
Зарегистрирован: 12 окт 2012, 12:49

Re: Ввод в заявку IP-адреса клиента

Сообщение Romano » 01 мар 2013, 17:24

У меня, кстати, что то перестало работать отображение айпишника. Перепроверял все настройки - всё правильно.
Пробовал 4й пункт выполнить и дописать этот код - не помогло.
У меня тут вопрос сразу нарисовался - а куда вообще система записывает это значение? Разве не надо создать в базе SQL какой нить доп. столбец в одной из таблиц?
OTRS + ITSM 3.2.3
Win Server 2003 R2

Romano
OTRS Новобранец
Сообщения: 57
Зарегистрирован: 12 окт 2012, 12:49

Re: Ввод в заявку IP-адреса клиента

Сообщение Romano » 03 мар 2013, 12:21

Я, кажется, врубился... IP не будет отображаться в агентском интерфейсе, пока не активировать это поле в юзерском. Т.е. при создании заявки у юзера обязательно должно быть вписано какое то значение в поле айпишника.
OTRS + ITSM 3.2.3
Win Server 2003 R2

seregansk
OTRS Новобранец
Сообщения: 16
Зарегистрирован: 21 дек 2012, 11:35

Re: Ввод в заявку IP-адреса клиента

Сообщение seregansk » 19 мар 2013, 09:27

Добрый день, подскажите а как можно скрыть или запретить редактировать поле со значением IP адреса ?

seregansk
OTRS Новобранец
Сообщения: 16
Зарегистрирован: 21 дек 2012, 11:35

Re: Ввод в заявку IP-адреса клиента

Сообщение seregansk » 08 апр 2013, 10:26

Как можно скрыть это поле от пользователей ? Или хотя бы запретить редактирование ?
Вложения
222.gif
222.gif (3.99 КБ) 28300 просмотров

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

Re: Ввод в заявку IP-адреса клиента

Сообщение ykolesnikov » 08 апр 2013, 11:06

Из Вашего скриншота не видно в каком интерфейсе Вы его отображаете.
Управляется отображение динамических полей в АдминКонфиге в настройках соответствующих экранов. Этот параметр обычно в конце. Там его можно сделать неотображаемым.
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

seregansk
OTRS Новобранец
Сообщения: 16
Зарегистрирован: 21 дек 2012, 11:35

Re: Ввод в заявку IP-адреса клиента

Сообщение seregansk » 08 апр 2013, 12:41

ykolesnikov писал(а):Из Вашего скриншота не видно в каком интерфейсе Вы его отображаете.
Управляется отображение динамических полей в АдминКонфиге в настройках соответствующих экранов. Этот параметр обычно в конце. Там его можно сделать неотображаемым.
Данное поле отображается в Интерфейсе пользователя (Customer) при создании новой заявки.
Добавил его в интерфейс в Edit Config Settings in Ticket -> Frontend::Customer::Ticket::ViewNew
Вложения
2222.gif
2222.gif (38.03 КБ) 28297 просмотров

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

Re: Ввод в заявку IP-адреса клиента

Сообщение ykolesnikov » 08 апр 2013, 12:55

Ну так поставьте ему 0, оно и не будет отображаться
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

seregansk
OTRS Новобранец
Сообщения: 16
Зарегистрирован: 21 дек 2012, 11:35

Re: Ввод в заявку IP-адреса клиента

Сообщение seregansk » 08 апр 2013, 14:01

ykolesnikov писал(а):Ну так поставьте ему 0, оно и не будет отображаться
Если я ставлю значение 0 то в интерфейсе Агента значение IP адреса тоже не отображается
Вложения
222222.gif
222222.gif (23.56 КБ) 28294 просмотра

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

Re: Ввод в заявку IP-адреса клиента

Сообщение ykolesnikov » 08 апр 2013, 14:29

Для каэдого экрана этот параметр устанавливается отдельно, т.е. вы можете скрыть его на одном экране и отображать на другом. Если значение поля пустое, то оно не отображается вовсе, независимо, установлено ли значение в 1
Кроме того, а AgentTicketZoom.dtl есть закоментированная секция управляющая выводом динамический полей по-отдельности, не единым блоком
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

Kom
OTRS Новобранец
Сообщения: 2
Зарегистрирован: 09 апр 2013, 15:57

Re: Ввод в заявку IP-адреса клиента

Сообщение Kom » 09 апр 2013, 16:45

Доброго дня, я новичок в OTRS системе.

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

Зарание благодарен за помощь
OTRS 3.2.3
Ubuntu 12.10, MySQL 5

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

Re: Ввод в заявку IP-адреса клиента

Сообщение yuri0001 » 09 апр 2013, 16:58

Коллега, а стоит ли с этого начинать знакомство с OTRS, даже не оглядевшись в системе. ;)
Но, если невтерпеж - Интерфейс агента с правами админа. Пункт Администрирование -->Секция Настройки заявок-->Динамические поля
А там свои тараканы. Читайте документацию.
Кстати, если Вы внимательно читали эту тему, если Ваши компы ходят через Прокси, то на выходе вы у всех клиентов получите его IP. :roll:
С уважением
Ю. Колесников
OTRS 3.3.1, ITSM 3.3.1, SUSE 12, MySQL5

Kom
OTRS Новобранец
Сообщения: 2
Зарегистрирован: 09 апр 2013, 15:57

Re: Ввод в заявку IP-адреса клиента

Сообщение Kom » 09 апр 2013, 18:14

yuri0001 писал(а):Коллега, а стоит ли с этого начинать знакомство с OTRS, даже не оглядевшись в системе. ;)
Но, если невтерпеж - Интерфейс агента с правами админа. Пункт Администрирование -->Секция Настройки заявок-->Динамические поля
А там свои тараканы. Читайте документацию.
Кстати, если Вы внимательно читали эту тему, если Ваши компы ходят через Прокси, то на выходе вы у всех клиентов получите его IP. :roll:
Большое спасибо за подсказку.
все получилось.

Документацию грызу, но её много, а система нужна уже, поэтому поставили в работу и добавляем/меняем в процессе.
OTRS 3.2.3
Ubuntu 12.10, MySQL 5

belko
OTRS Новобранец
Сообщения: 1
Зарегистрирован: 18 июл 2014, 11:23

Re: Ввод в заявку IP-адреса клиента

Сообщение belko » 18 июл 2014, 11:25

АХТУУУНГ!! для отрс 3.3 немного подругому, поменялись поля.

Рабочий подпиленный вариант:

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

<script type="text/javascript">
document.getElementById('LabelDynamicField_IPADDR').style.display = 'none';
document.getElementById('DynamicField_IPADDR').style.display = 'none';
document.getElementById('DynamicField_IPADDR').value = "$Env{"REMOTE_ADDR"}";
document.getElementById('LabelDynamicField_HOSTNAME').style.display = 'none';
document.getElementById('DynamicField_HOSTNAME').style.display = 'none';
document.getElementById('DynamicField_HOSTNAME').value = "$Env{"REMOTE_HOST"}";
</script>

Ответить