Полнотекстовый поиск по условию.

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

Модератор: ykolesnikov

Ответить
hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Полнотекстовый поиск по условию.

Сообщение hydromarine » 02 сен 2016, 15:57

Всем доброго времени суток.
Версия otrs 5.0.12.
Пытаю реализовать задачу через планировщик.
Чтобы искал в теле письма определенные слова и менял тип заявки.
Столкнулся с проблемой что условие такого типа ("*доступ" или "*доступа") - не отрабатывает.
Как только меняю условие на (*доступ) - то тип у заявки меняется.
Может я использую неверный синтаксис?
OTRS 5.0.12, Debian

Вольха Редная
OTRS Новобранец
Сообщения: 57
Зарегистрирован: 22 апр 2015, 09:52
Откуда: Москва

Re: Полнотекстовый поиск по условию.

Сообщение Вольха Редная » 06 сен 2016, 17:09

Привет, желательно конечно сделать подпись, чтобы не возникало вопросов о версии otrs,
но это на будущее, пока посмотри вот эту тему: http://otrs.ru/forum/viewtopic.php?f=5& ... %82#p16041
С уважением, Трофимова Римма
OTRS 4.0.14 my SQL linux server

hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Re: Полнотекстовый поиск по условию.

Сообщение hydromarine » 07 сен 2016, 07:59

Ох! Вы меня выручили.
Действительно синтаксис используется совершенно не такой как описано в примере.
Работает на ура вот с таким условием: *доступ || *доступа. Главное правильную маску подобрать под конкретные условия.
Огромное Вам спасибо!
OTRS 5.0.12, Debian

hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Re: Полнотекстовый поиск по условию.

Сообщение hydromarine » 07 сен 2016, 14:14

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

Например: %предоставить%доступ% - не отрабатывает если нет одного или другого слова и это правильно, но отрабатывает если в теме сообщения фраза предоставитьдоступ будет слитна, это конечно абсурд, но все равно.
OTRS 5.0.12, Debian

bloodice
OTRS Новобранец
Сообщения: 120
Зарегистрирован: 24 ноя 2010, 06:48

Re: Полнотекстовый поиск по условию.

Сообщение bloodice » 08 сен 2016, 06:41

Попробуйте что то типа такого "*доступ "||"*доступа "
OTRS 4.0.12, ITSM 4.0.12 тестовая

hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Re: Полнотекстовый поиск по условию.

Сообщение hydromarine » 08 сен 2016, 08:15

Пробовал - не работает.
У нее синтаксис с одной стороны вроде бы как в запросах на sql, но все равно какой-то кривоватый местами.
В итоге делаю вот так, может кому пригодится.
Например: %предоставить%доступ% || %предоставление%доступа%
В данном примере otrs понимает что задано не одно слово, а словосочетание.
Хотя % означает вроде как любой символ, в том числе и пробел. Поэтому если написать в письме слитно "предоставитьдоступ" то отарася все равно это воспримет как то что задано в условии и естественно отработает. Именно поэтому и я ищу вариант задать конкретно пробел, а не любой символ. Разные нижние подчеркивания, кавычки, скобки, ?, уже пробовал. Ничего из этого не дает результата.
OTRS 5.0.12, Debian

paver
OTRS Мастер
Сообщения: 507
Зарегистрирован: 22 апр 2015, 06:45
Откуда: Томск
Благодарил (а): 7 раз
Поблагодарили: 45 раз

Re: Полнотекстовый поиск по условию.

Сообщение paver » 08 сен 2016, 11:33

hydromarine писал(а):Хотя % означает вроде как любой символ
Любую комбинацию символов. По строке %предостав%дост% будут найдены и "предоставить доступ", и "предоставление неограниченного доступа", например
--
OTRS 6.0.22

hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Re: Полнотекстовый поиск по условию.

Сообщение hydromarine » 08 сен 2016, 11:48

paver писал(а): Любую комбинацию символов. По строке %предостав%дост% будут найдены и "предоставить доступ", и "предоставление неограниченного доступа", например
Верно, так и отрабатывает. Вот и ломаю голову как правильно задать этот пробел вместо %. Знак "?" - воспринимается отарасей тоже как набор произвольных символов почему-то.
OTRS 5.0.12, Debian

paver
OTRS Мастер
Сообщения: 507
Зарегистрирован: 22 апр 2015, 06:45
Откуда: Томск
Благодарил (а): 7 раз
Поблагодарили: 45 раз

Re: Полнотекстовый поиск по условию.

Сообщение paver » 08 сен 2016, 12:10

"предоставить доступ" || "предоставление доступа"
--
OTRS 6.0.22

hydromarine
OTRS Новобранец
Сообщения: 10
Зарегистрирован: 02 сен 2016, 15:48

Re: Полнотекстовый поиск по условию.

Сообщение hydromarine » 08 сен 2016, 12:31

paver писал(а):"предоставить доступ" || "предоставление доступа"
Не работает, реагирует на письмо в теме которого "Предоставить неограниченный доступ".
OTRS 5.0.12, Debian

paver
OTRS Мастер
Сообщения: 507
Зарегистрирован: 22 апр 2015, 06:45
Откуда: Томск
Благодарил (а): 7 раз
Поблагодарили: 45 раз

Re: Полнотекстовый поиск по условию.

Сообщение paver » 09 сен 2016, 06:49

hydromarine писал(а):в теме которого "Предоставить неограниченный доступ".
Полнотекст ищет не только в теме, возможно где-то в содержимом заметок заявки есть и чистый "предоставить доступ"
Сейчас специально проверил. Заявка с текстом "Поменять внутренние номера" по поисковой строке Поменять номера (без кавычек) находится, с кавычками - нет.
OTRS 4.0.12

Поэкспериментируйте сначала с одной фразой, потом с объединением.
--
OTRS 6.0.22

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

Re: Полнотекстовый поиск по условию.

Сообщение alexus » 09 сен 2016, 11:20

Полнотекстовый поиск ищет по темам и содержимому всех заметок тикетов, а так же по полям From To и СС.
С уважением,
Алексей Юсов

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

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 14:37

alexus писал(а):
09 сен 2016, 11:20
Полнотекстовый поиск ищет по темам и содержимому всех заметок тикетов, а так же по полям From To и СС.
Сейчас столкнулся с тем, что полнотекстовый поиск не находит содержимое ТЕМЫ заметки (не тикета).
Там, в теме, URL вида "https://waveaccess.atlassian.net/browse/SERP2-1154". Не находит ни по полной фразе, ни по частичной типа "SERP2-1154". Ощущение, будто URL как-то экранирует себя от поиска. Почему?

В той же системе другой полнотекстовый поиск и поиск по Subject вполне работает. Фразы типа "неполадки при заполнении" отлично находит в сабже заметки.

Более того, ищет по URL, если перед ним есть какие-нибудь слова, типа "добрый день, сайт http://www.ya.ru не открывается" - тогда по URL он этот тикет найдет.

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 15:45

Ага. Интересно.

"https://guitarmag.net/browse" - ищется
"https://guitarmag.net/browse/" - НЕ ищется

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 15:46

"Сайт https://guitarmag.net/browse/" - ищется!
"Сайт https://guitarmag.net/browse/SERP2-1154" - НЕ ищется!

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 16:01

Временно удалил фильтры Ticket::SearchIndex::Filters - не помогло. Вернул на место.

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 16:02

Smirnoff писал(а):
17 авг 2021, 15:46
"Сайт https://guitarmag.net/browse/" - ищется!
После добавления этой строки стали находиться и записи "https://guitarmag.net/browse/" со слешем в конце.

Да, к слову, я добавляю все это как Note к тикету.

Smirnoff
OTRS-shmOTRS
Сообщения: 15
Зарегистрирован: 08 дек 2010, 18:12
Контактная информация:

Re: Полнотекстовый поиск по условию.

Сообщение Smirnoff » 17 авг 2021, 16:14

Ответ нащупывается с подачи alexus.
Кажется, дело в длине ссылки. Длинные (больше 30 символов) ссылки не индексируются. Короче 30 - вполне.

Итог: раздел Ticket::SearchIndex::Attribute, параметр WordLengthMax - был установлен в 30. Поменял на 60.
Остается запустить переиндексирование.

Ответить