добавлю еще баг сюда же
если использовать в паттерне "Use morphology"
с таким шаблоном \s(.+)(час.?\s|мин.?\s)(.+)
то фраза:"через одну минуту выключи свет на кухне"
превращается в одном их matches в КАПС
"Запомнила, что через 1 минуту надо выполнить: ВЫКЛЮЧИТЬ СВЕТ НА КУХНЯ"
А если строчку
$history=context_get_history().' '.$history;
заменить на
$history=context_get_history();
как будет себя вести?
признаться я этот функционал несколько лет назад делал и уже точно не помню всех тонкостей.
про капс -- библиотека приведения к базовым словоформам почему-то так устроена, что выдаёт их в капсе. но оно влияет на распознавание? его же можно без учета регистра использовать вроде как.
Вечером попробую.
Да с капсом ничего страшного, но иногда оно вываливает такое:
@@@ВЫКЛЮЧИТЬ СВЕТ НА КУХНЯ@@@ВЫКЛЮЧИТЬ СВЕТ НА КУХНЯ@@@ВЫКЛЮЧИТЬ СВЕТ НА КУХНЯ@@@
Но возможно эта бага как раз задвоения и после правки уйдет.
Протестировал.
$history=context_get_history();
так все равно задваивает, а без этого куска все работает ок
сама функция context_get_history() в файле lib/context.inc.php
function context_get_history()
{
$user_id = context_getuser();
$sqlQuery = "SELECT ID, ACTIVE_CONTEXT_ID, ACTIVE_CONTEXT_EXTERNAL, ACTIVE_CONTEXT_HISTORY
FROM users
WHERE ID = '" . (int)$user_id . "'";
...
$user = SQLSelectOne($sqlQuery);
if ($user['ACTIVE_CONTEXT_ID'])
return $user['ACTIVE_CONTEXT_HISTORY'];
return '';
}
Please login to leave comments. Join us!