{"action":"opened","issue":{"url":"https://api.github.com/repos/Microsoft/BotBuilder/issues/889","repository_url":"https://api.github.com/repos/Microsoft/BotBuilder","labels_url":"https://api.github.com/repos/Microsoft/BotBuilder/issues/889/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/BotBuilder/issues/889/comments","events_url":"https://api.github.com/repos/Microsoft/BotBuilder/issues/889/events","html_url":"https://github.com/Microsoft/BotBuilder/issues/889","id":169084667,"number":889,"title":"3 state problem, and simple examples aren't helping so much.","user":{"login":"mephisto83","id":7797183,"avatar_url":"https://avatars.githubusercontent.com/u/7797183?v=3","gravatar_id":"","url":"https://api.github.com/users/mephisto83","html_url":"https://github.com/mephisto83","followers_url":"https://api.github.com/users/mephisto83/followers","following_url":"https://api.github.com/users/mephisto83/following{/other_user}","gists_url":"https://api.github.com/users/mephisto83/gists{/gist_id}","starred_url":"https://api.github.com/users/mephisto83/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mephisto83/subscriptions","organizations_url":"https://api.github.com/users/mephisto83/orgs","repos_url":"https://api.github.com/users/mephisto83/repos","events_url":"https://api.github.com/users/mephisto83/events{/privacy}","received_events_url":"https://api.github.com/users/mephisto83/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-08-03T09:15:31Z","updated_at":"2016-08-03T09:15:31Z","closed_at":null,"body":"The problem of simple bot examples. My problem is I have been tasked with creating a bot which can switch between tasks at any point in a conversation.\r\n\r\nFor example. \r\nIf John asks the bot, \"I would like to submit my timesheet\".\r\n\r\nBot: \"Sure, would you like to submit last week or this week\".\r\nJohn: \"Last week, please\"\r\nBob: \"You worked 40 hrs last week, is this correct\".\r\n\r\nNow John remembers that he needs to order some new supplies, and now decides to say.\r\n\r\nJohn: \"I need to order some new pens\".\r\n\r\nThe Bot is expecting a boolean(ish) reply but receives something not even close. So the expected behaviour is that the bot will be able to switch to a new task without missing a beat.\r\n\r\nI refer to this problem as a 3-state problem. \r\nStates \r\n\t1) The reply is an expected value.\r\n\t2) The reply is an unexpected value, but it is understood as a new/different task.\r\n\t3) The reply is unexpected, and is not understood and is assumed to be an error.\r\nThe bot framework doesn't seem to handle anything like this, which is fine because I have built simple pattern which does. The V1 of the bot framework worked well with the pattern, but the v3 seems to have hidden a lot of this away which makes it difficult/impossible. Which leads to my questions, where does the dialogstack get stored, and how do replies get the correct callback method to execute."}}
{"actor":{"display_login":"mephisto83"}}