(20##) 10 9 8 7 6 5 4 3 2 1 0 <
DesktopWeb FormText   sample bot using WFWed, 29 Nov 2006 05:38:03 GMT # 

just wrapping up the IM bot kick i was on. went ahead and created a (simple) sample bot that uses the same Workflow framework i created for the /mobileRecord bot. you can download it from the Source section of the /mobileRecord article. this framework was key to creating complex challenge-response dialogs. /mobileRecord was menu based because, well ... chat bots are stupid. i'm quite certain most people have better things to do than chat with bad attempts at AI. especially if you're on a mobile device. so the goal was to make /mobileRecord useful and require minimal input for people on the go. IM makes great sense for mobile devices with small screens and weak connections, because transferring plain text is quick. forget having to refresh a mobile web page. the framework supports this style with the key activity being QuestionAnswer in which the bot asks the user a question and waits for an answer, followed by an IfElse activity to branch to the next question or to execute some user command. the article has some more details on what the custom workflow activities do (plus the sample code). with the framework, you can basically crank out bots like mad. to make a new bot, all you have to do is create a new Workflow, start adding the custom IM activities to it, and then instantiate that workflow from the host Form. i'd actually like to see MS adapt a similar model for the unified communication initiative. because a dialog between a user and a bot over IM has many of the same concepts of dialog between a user and an IVR system over telephone. which is actually where i stole the model from the 1st place ... the Speech Server 2007 beta. in theory, a user could create one dialog based workflow, and then host it so it could be accessed over a telephone line with voice or by a thumbboard device with Mobile MSN. this would allow the same bot to support the user in diff scenarios. if the user is in a public place and needed to be private ... IM. if the user is in their car and needs their hands for driving ... voice.