Hare.ru @ Коллективный разум / Hare.ru @ Дикое место |
Архив hare.ru | |||
Мысли, конвертированные в текст | ||||
Полезные технологииАгенты среди нас. Где взять агента и что он может.где-то в 2001 (Алексей Бажитов) Давайте вспомним, почему пользователи повально и так охотно ставили Microsoft Office 97 поверх старого доброго офиса для Windows 95? Всем понравилась забавная «Мурка» (она же «Скрепыш», она же ешё много чего) – «помощник», который больше мешает и отвлекает, чем помогает в работе.Умные дядьки из Microsoft знают, чем привлечь пользователя, да и денег там на это не жалеют. Толстой тетеньке-бухгалтеру, которая из софта видела только 1С и Lines, тоже понравится «Мурка» и другие персонажи из офисной галереи. Думается, есть шанс купить пользователя 1С с помощью подобной фичи. Эта статья расказывает об использовании технологии Microsoft Agent в среде «1С:Предприятие». Для управления агентами из V7 не требуются внешние библиотеки, никаких там AddIn.ЧтоТоТам или ЗагрузитьВнешнююКомпонету. Необходимым является установка самого Microsoft Agent'а, который является COM-сервером и предоставляет интерфесы управления персонажами. Microsoft Agent, возможно, уже есть на компьютерах ваших пользователей (входит в состав WinMe, Win2000, Office2000). Скачать установочный комплект можно с сайта Microsoft (бесплатно): http://activex.microsoft.com/activex/controls/agent2/MSagent.exe (392 Кб). Чтобы наши «агенты« разговаривали, нам потребуется Microsoft Text-To-Speech (он также может быть уже установлен): http://activex.microsoft.com/activex/controls/sapi/spchapi.exe (825 Kб). А чтобы говорили по-русски, нужен голосовой движок Lernout&Hauspie TTS3000: http://activex.microsoft.com/activex/controls/agent2/lhttsrur.exe (2.9 Mб). То же самое по-английски: http://activex.microsoft.com/activex/controls/agent2/lhttseng.exe (2.6 Mб) бесплатно. Не забудьте про самих «помощников». Можно использовать персонажи из поставок различных офисов, однако разговорить Мурку вам не удастся, не умеет она этого – даже на родном английском языке. Microsoft распространяет бесплатно четыре полноценных персонажа:
А на сайте Microsoft также бесплатно можно взять редактор агентов, и с его помощью создавать своих персонажей: http://agent.microsoft.com/agent2/sdk/ace.exe (1 Mб). К сожалению, редактировать уже сущесвующие файлы персонажей нельзя. Итак, начнем-с. После установки MSAgent'а нам становится доступен доступен ActiveX-компонет Agent.Control.2. Цепляемся к нему через нашу любимую функцию: Агент=СоздатьОбъект("Agent.Control.2"); Вторая строчка инициализирует MSAgent server. Теперь загрузим персонаж: Агент.Characters.Load("merlin","merlin.acs"); Characters – ссылка на объект коллекцию персонажей. Метод Load – загружает персонаж, имеет два параметра: в первом задаем идентификатор персонажа, во втором указываем файл или HTTP-адрес персонажа. Microsoft Agent по умолчанию ищет персонажи в каталоге %WinDir%\MSAgent\Chars,, так что если файл вашего персонажа находится в другом месте, указывайте полный путь. Теперь прицепимся непосредственно к персонажу: Персонаж=Агент.Characters("merlin"); "merlin" здесь – заданный идентификатор. Параметр метода Show логического типа и отвечает за вывод анимации при показе (0 – с анимацией, 1 – без оной). Если у Вас всё получилось, Вы увидите волшебника Мерлина в верхнем левом углу экрана. Верхний левый угол не есть хорошее место для него, давайте заставим его убраться оттуда: Персонаж.MoveTo(500,100,2000); Первый параметр метода MoveTo – экранная координата по X в пикселах, второй – по оси Y, третий – время в милисекундах, за которое совершается перемещение. Не загоните персонаж за край экрана, достать его оттуда мышкой не получится. Параметр время полета необязателен, по умолчанию – 1000. Каждый персонаж содержит свой набор анимаций, которые могут быть проиграны методом Play. Пусть наш волшебник подвигается: Персонаж.Play("Congratulate"); Параметр метода – строка идентификатор анимации. Как отмечалось выше, каждый персонаж имеет свой набор анимаций, и их идентификаторы тоже могут быть различны. Читайте документацию к вашим персонажам. В примере также есть функция, достающая список доступных анимаций конкретного персонажа (к сожалению, без использования Microsoft Script Control сделать это у меня не получилось). Еще про пару полезных методов объекта Character. Stop – останавливает анимацию. StopAll – останавливает вообще всё: анимацию, перемешение, речь… Нет ничего проще заставить персонажа говорить: Персонаж.Speak("Даёшь операционную систему Один Эс"); Закрыть «помощника» можно методом Hide(<параметр>), параметр этого метода аналогичен параметру метода Show. На этом пока заканчиваю. Если статья понравится, в дальнейшем планируется рассказать побольше о свойствах и методах Microsoft Agent'а, а также научить помошника делать предупреждения, задавать вопросы пользователю и предлагать пользователю ввод значения – с последующей обработкой этих значений и ответов на вопросы. А пока рекомендую всем скачать комплект документации по использованию Microsoft Agent: http://msdn.microsoft.com/workshop/imedia/agent/alldocs.zip. |
Партнеры: Также может быть интересно: Канал Россия 1 на http://spbtvonline.ru/ |
|||
Сайт поддерживается за счет партнеров: | ||||
:::... Сайт содержит архив двух версий hare.ru | Карта сайта |