![]() |
Обработка запросов. Создание словарей синонимов.
Есть у меня давняя задумка реализовать компьютерного помощника и столкнулся с проблемкой..
Например требуется завершить процесс в нужное время(например блокнот) Человек пишет "Закрой блокнот в 11:25" Батник обрабатывает запрос и делает команду taskkill... ла ла ла Как реализовать обработку по запросу? И не отходя от кассы второй вопрос. Если мы настроим прогу под определенную последовательность ввода, а человек введет не "Закрой блокнот в 11:25", а например "Выруби блокнот в 11:25" Компьютеру нужен еще словарь синонимов, aka Закрой = close Выруби = close Собственно вопрос опять стоит в реализации Сможет кто помочь или направить на какой источник инфы на эту тему? |
Цитата:
Цитата:
С помощью планировщика в нужное время запускается файл name.bat, в котором примерно: Код:
@echo off |
Цитата:
И автору вопроса надо, чтобы компьютер понял жаргон этого человека, его неграмотные выражения, очепатки и т.д.: чтобы с одной стороны закрыть то, что нужно , а с другой— не дать закрыть то, что закрывать не нужно или вообще нельзя. |
Кирилл_Трофименко@vk, реализовать подобную работу очень сложно!
1) Вопрос синонимов можно решить скачиванием словаря таковых, но ещё надо научить sed находить в этом словаре слово, оставлять только синонимы к этому слову, и работать скрипту при наличии команды (например taskkill) при соответствии к одному из слов. Но с учётом гибкости русского языка "выруби" может определиться как "обездвижить" и это только один пример. Однозначно появятся трудности. 2) Чтобы закрыть приведенный пример Блокнот, нужно получить весь список процессов, а на этом форуме никто не дал ответа как это сделать с временем запуска всех процессов(может невозможно?), а оно может понадобиться, и найти в этом списке соответствующий процесс, а для этого слово "блокнот" нужно прогнать по какой-либо базе (или интернет) и определить какой процесс ему присвоен. Получение списка можно в этом примере упустить, так как если процесса нет то и закрываться нечему, но если смотреть на перспективу, то список нужен - например Открой Блокнот, и тогда надо анализировать нет ли уже запущенного процесса и может его просто нужно вывести на экран с тем что там записано, а не запускать новый. 3) Если нужно задействовать дату и время то я когда-то делал напоминания для голосового помощника и использовал подобную команду schtasks /create /tn "НАПОМИНАНИЕ20.05.2015:14-33-10" /tr C:\A\finish.bat /sc once /st 14:33:10 /sd 20/05/2015 Можно на её примере всё что нужно сделать. |
Время: 12:22. |
Время: 12:22.
© OSzone.net 2001-