{"id":216,"date":"2016-07-21T11:18:27","date_gmt":"2016-07-21T11:18:27","guid":{"rendered":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?p=216"},"modified":"2016-07-21T11:18:27","modified_gmt":"2016-07-21T11:18:27","slug":"microsoft-bots-paso-a-paso-i","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/","title":{"rendered":"Microsoft Bot Framework | Creando nuestro primer bot paso a paso (I)"},"content":{"rendered":"<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"margin: 0px 0px 0px 10px; float: right;\" title=\"Microsoft Bot Framework\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg\" alt=\"Microsoft Bot Framework\" width=\"270\" height=\"261\" align=\"right\" border=\"0\" \/><\/a>Hace ya algunos meses,\u00a0<strong>Microsoft nos sorprendi\u00f3<\/strong> durante su evento anual \/\/build\/ <strong>presentando<\/strong>\u00a0(entre otras cosas) el <strong>Microsoft Bot Framework.<\/strong><\/p>\n<p>Este framework que nos permitir\u00e1 desarrollar bots que <strong>se comuniquen con los usuarios y realicen acciones automatizadas y desatendidas<\/strong> como responder a preguntas con ciertas palabras claves, realizar acciones en alg\u00fan sistema informatizado para dar soluci\u00f3n, registrar peticiones de un usuario, etc.\u00a0<strong>Un ejemplo<\/strong> mostrado durante su presentaci\u00f3n fue el uso de un <strong>bot que se comunicaba con un cliente de Domino\u2019s Pizza recogiendo todos los detalles del pedido,<\/strong> registrando el mismo para que fuera preparado e indicando un tiempo estimado de entrega. A partir de ah\u00ed, la imaginaci\u00f3n es el l\u00edmite para aprovechar este framework.<!--more-->En el art\u00edculo de hoy, comenzaremos a ver el proceso de creaci\u00f3n de un bot y que en el \u00faltimo art\u00edculo publicaremos para poder consumirlo de forma \u201creal\u201d.<\/p>\n<h2>Creando el proyecto<\/h2>\n<p>Como primer paso, tendremos que<strong> instalar lo necesario<\/strong> para poder \u201cjugar\u201d con esta tecnolog\u00eda:<\/p>\n<ol>\n<li>Instalar <strong>VS 2015<\/strong> (vale la versi\u00f3n Community)<\/li>\n<li>Instalar <a href=\"http:\/\/aka.ms\/bf-bc-vstemplate\" target=\"_blank\">la plantilla de bots que podemos encontrar aqu\u00ed<\/a><\/li>\n<li>Descomprimir el contenido del archivo .zip que nos descargamos en la carpeta <strong>\u00ab%USERPROFILE%\\Documents\\Visual Studio 2015\\Templates\\ProjectTemplates\\Visual C#\\\u00bb<\/strong><\/li>\n<li>Abrir Visual Studio<\/li>\n<li><strong>Crear un proyecto <\/strong>usando la plantilla <strong>\u201cAplicaci\u00f3n Bot\u201d<\/strong><\/li>\n<\/ol>\n<p><strong><span style=\"color: #333333;\"><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/01-project.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"border: 0px currentcolor;\" title=\"01-project\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/01-project_thumb.jpg\" alt=\"01-project\" width=\"654\" height=\"456\" border=\"0\" \/><\/a><\/span><\/strong><\/p>\n<h2>Estructura del proyecto<\/h2>\n<p>Una vez se ha creado el <strong>proyecto basado en la plantilla de \u201cAplicaci\u00f3n Bot\u201d<\/strong> podemos comprobar que <strong>la estructura se corresponde con la de un proyecto WebApi<\/strong> como se puede observar en la siguiente imagen:<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/02-Structure.png\"><img loading=\"lazy\" decoding=\"async\" style=\"margin-right: auto; margin-left: auto; float: none;\" title=\"02-Structure\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/02-Structure_thumb.png\" alt=\"02-Structure\" width=\"354\" height=\"307\" border=\"0\" \/><\/a><\/p>\n<p><span style=\"color: #333333;\">Por lo tanto, <strong>disponemos de un controlador<\/strong> que <strong>gestiona la funcionalidad<\/strong> que puede ejecutar el bot y que se llama en este caso MessagesController. Por otro lado, tambi\u00e9n <strong>disponemos del fichero WebApiConfig<\/strong> en la carpeta App_Start donde, entre otras cosas, se <strong>gestionan las rutas de acceso<\/strong> al bot y que, por defecto, ser\u00e1n \u201capi\/{NOMBRE_CONTROLADOR}\/{id}\u201d. <\/span><\/p>\n<p><span style=\"color: #333333;\">Visto esto, podemos conocer que <strong>para realizar las acciones del bot, es necesario comunicarse con \u00e9l por la url<\/strong> conformada por la direcci\u00f3n del mismo seguido de \/api\/messages, es decir <a href=\"http:\/\/{MY_BOT_URL}\/api\/messages\"><strong>http:\/\/{MY_BOT_URL}\/api\/messages<\/strong><\/a><strong> | <\/strong><a href=\"https:\/\/{MY_BOT_URL}\/api\/messages\"><strong>https:\/\/{MY_BOT_URL}\/api\/messages<\/strong><\/a><\/span><\/p>\n<p><span style=\"color: #333333;\">La p\u00e1gina de presentaci\u00f3n del bot, default.htm, mostrar\u00e1 una simple ayuda sobre los pasos a seguir.<\/span><\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/image.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/image_thumb.png\" alt=\"image\" width=\"654\" height=\"261\" border=\"0\" \/><\/a><\/p>\n<h2><span style=\"color: #333333;\">Primeros tests<\/span><\/h2>\n<p>Una vez ejecutado el proyecto y viendo el renderizado de la p\u00e1gina default.htm, ya estamos en disposici\u00f3n de realizar los primeros tests de nuestro bot pero&#8230; \u00bfC\u00f3mo?<\/p>\n<p>Microsoft ha dispuesto un <strong>emulador con el que podremos realizar tests<\/strong> sencillos para comprobar el funcionamiento de nuestro bot, <a href=\"https:\/\/aka.ms\/bf-bc-emulator\" target=\"_blank\"><strong>Bot Framework Emulator<\/strong><\/a>, y lo podemos descargar <a href=\"https:\/\/aka.ms\/bf-bc-emulator\" target=\"_blank\">desde este enlace<\/a>.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/03-bot-channel-emulator.png\"><img loading=\"lazy\" decoding=\"async\" title=\"03-bot-channel-emulator\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/03-bot-channel-emulator_thumb.png\" alt=\"03-bot-channel-emulator\" width=\"654\" height=\"421\" border=\"0\" \/><\/a><\/p>\n<p>Una vez lo instalemos, ya <strong>podremos ejecutarlo para probar nuestro bot<\/strong>, abri\u00e9ndose una sencilla ventana donde se puede configurar el punto de acceso para realizar la comunicaci\u00f3n.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/05-bot-channel-emulator-running.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"05-bot-channel-emulator-running\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/05-bot-channel-emulator-running_thumb.jpg\" alt=\"05-bot-channel-emulator-running\" width=\"654\" height=\"305\" border=\"0\" \/><\/a><\/p>\n<p>La configuraci\u00f3n que debemos tener en cuenta es la siguiente:<\/p>\n<ul>\n<li><strong>Bot Url:<\/strong> La <strong>direcci\u00f3n en la que se encuentra publicado el bot<\/strong> que, en caso de realizar una prueba en local como la que estamos tratando, ser\u00e1 <a href=\"http:\/\/localhost:{PORT}\/api\/messages\">http:\/\/localhost:{PORT}\/api\/messages<\/a>. Para conocer el puerto en el que se est\u00e1 ejecutando, basta con mirar la direcci\u00f3n resultante a la hora de ejecutar el proyecto desde visual studio o, simplemente configurarlo en el proyecto tal y como se ve en la siguiente imagen.<\/li>\n<\/ul>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/04-web-configuration.png\"><img loading=\"lazy\" decoding=\"async\" title=\"04-web-configuration\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/04-web-configuration_thumb.png\" alt=\"04-web-configuration\" width=\"654\" height=\"416\" border=\"0\" \/><\/a><\/p>\n<ul>\n<li><strong>Microsoft App Id<\/strong>: El <strong>id de la aplicaci\u00f3n relacionada con el Bot<\/strong>. Si lo estamos ejecutando en local y no establecemos nada en nuestro archivo de configuraci\u00f3n \u201cweb.config\u201d, debemos dejarlo vac\u00edo.<\/li>\n<li><strong>Microsoft App Password<\/strong>: El <strong>password de acceso a la aplicaci\u00f3n relacionada con el Bot<\/strong>. Si lo estamos ejecutando en local y no establecemos nada en nuestro archivo de configuraci\u00f3n \u201cweb.config\u201d, debemos dejarlo vac\u00edo.<\/li>\n<\/ul>\n<h2>Resultado de las pruebas<\/h2>\n<p>Una vez tengamos todo correctamente configurado, ya<strong> podemos escribir texto en el emulador de bots y ver el resultado que viene representado por un JSON que el propio emulador tratar\u00e1 para mostrar la conversaci\u00f3n<\/strong>.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/06-bot-conversation.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"06-bot-conversation\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/06-bot-conversation_thumb.jpg\" alt=\"06-bot-conversation\" width=\"654\" height=\"305\" border=\"0\" \/><\/a><\/p>\n<p>Y este es el resultado. <strong>El bot, por defecto, nos responder\u00e1 con el texto introducido y el n\u00famero de caracteres que lo componen<\/strong> tal y como viene indicado en la acci\u00f3n Post del controlador MessagesController.<\/p>\n<div id=\"scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:18026344-a6fa-4463-8da0-45f9df6f1195\" class=\"wlWriterEditableSmartContent\" style=\"margin: 0px; padding: 0px; float: none;\">\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\n        \/\/\/\r\n&lt;summary&gt;\r\n        \/\/\/ POST: api\/Messages\r\n        \/\/\/ Receive a message from a user and reply to it\r\n        \/\/\/ &lt;\/summary&gt;\r\n\r\n        public async Task&lt;HttpResponseMessage&gt; Post(&#x5B;FromBody]Activity activity)\r\n        {\r\n            if (activity.Type == ActivityTypes.Message)\r\n            {\r\n                ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl));\r\n                \/\/ calculate something for us to return\r\n                int length = (activity.Text ?? string.Empty).Length;\r\n\r\n                \/\/ return our reply to the user\r\n                Activity reply = activity.CreateReply($&quot;You sent {activity.Text} which was {length} characters&quot;);\r\n                await connector.Conversations.ReplyToActivityAsync(reply);\r\n            }\r\n            else\r\n            {\r\n                HandleSystemMessage(activity);\r\n            }\r\n            var response = Request.CreateResponse(HttpStatusCode.OK);\r\n            return response;\r\n        }\r\n<\/pre>\n<\/div>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Como pod\u00e9is comprobar en este primer art\u00edculo, <strong>crear un bot es una tarea muy sencilla<\/strong> pero ya lo iremos poniendo m\u00e1s dif\u00edcil a medida que vayamos avanzando en su configuraci\u00f3n en los siguientes art\u00edculos.<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Hace ya algunos meses,\u00a0Microsoft nos sorprendi\u00f3 durante su evento anual \/\/build\/ presentando\u00a0(entre otras cosas) el Microsoft Bot Framework. Este framework que nos permitir\u00e1 desarrollar bots que se comuniquen con los usuarios y realicen acciones automatizadas y desatendidas como responder a &hellip; <a href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":22,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32,4,58],"tags":[60,38,59],"class_list":["post-216","post","type-post","status-publish","format-standard","hentry","category-azure-app-services","category-microsoft-azure","category-microsoft-bots","tag-bot","tag-microsoft-azure","tag-microsoft-bot-framework"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>C\u00f3mo crear un bot paso a paso con\u00a0Microsoft Bot Framework<\/title>\n<meta name=\"description\" content=\"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Microsoft Bot Framework | Creando nuestro primer bot paso a paso (I)\" \/>\n<meta property=\"og:description\" content=\"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework\" \/>\n<meta property=\"og:url\" content=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/\" \/>\n<meta property=\"og:site_name\" content=\"Piensa en software, desarrolla en colores\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-21T11:18:27+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg\" \/>\n<meta name=\"author\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@saintwukong\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/\"},\"author\":{\"name\":\"Santiago Porras Rodr\u00edguez\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"headline\":\"Microsoft Bot Framework | Creando nuestro primer bot paso a paso (I)\",\"datePublished\":\"2016-07-21T11:18:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/\"},\"wordCount\":854,\"commentCount\":7,\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2016\\\/07\\\/Microsoft-Bot-Framework_thumb.jpg\",\"keywords\":[\"Bot\",\"Microsoft Azure\",\"Microsoft Bot Framework\"],\"articleSection\":[\"Azure App Services\",\"Microsoft Azure\",\"Microsoft Bots\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/\",\"url\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/\",\"name\":\"C\u00f3mo crear un bot paso a paso con\u00a0Microsoft Bot Framework\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#primaryimage\"},\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2016\\\/07\\\/Microsoft-Bot-Framework_thumb.jpg\",\"datePublished\":\"2016-07-21T11:18:27+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"description\":\"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/microsoft-bots-paso-a-paso-i\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2016\\\/07\\\/Microsoft-Bot-Framework_thumb.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2016\\\/07\\\/Microsoft-Bot-Framework_thumb.jpg\",\"width\":270,\"height\":261},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/\",\"name\":\"Piensa en software, desarrolla en colores\",\"description\":\"Las ventajas que te ofrece Microsoft Azure y el mundo.NET\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\",\"name\":\"Santiago Porras Rodr\u00edguez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"caption\":\"Santiago Porras Rodr\u00edguez\"},\"description\":\"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/saintwukong\"],\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/author\\\/en-tu-casa-o-en-la-mia\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo crear un bot paso a paso con\u00a0Microsoft Bot Framework","description":"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/","og_locale":"es_ES","og_type":"article","og_title":"Microsoft Bot Framework | Creando nuestro primer bot paso a paso (I)","og_description":"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework","og_url":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/","og_site_name":"Piensa en software, desarrolla en colores","article_published_time":"2016-07-21T11:18:27+00:00","og_image":[{"url":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg","type":"","width":"","height":""}],"author":"Santiago Porras Rodr\u00edguez","twitter_card":"summary_large_image","twitter_creator":"@saintwukong","twitter_misc":{"Escrito por":"Santiago Porras Rodr\u00edguez","Tiempo de lectura":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#article","isPartOf":{"@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/"},"author":{"name":"Santiago Porras Rodr\u00edguez","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"headline":"Microsoft Bot Framework | Creando nuestro primer bot paso a paso (I)","datePublished":"2016-07-21T11:18:27+00:00","mainEntityOfPage":{"@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/"},"wordCount":854,"commentCount":7,"image":{"@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg","keywords":["Bot","Microsoft Azure","Microsoft Bot Framework"],"articleSection":["Azure App Services","Microsoft Azure","Microsoft Bots"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#respond"]}]},{"@type":"WebPage","@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/","url":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/","name":"C\u00f3mo crear un bot paso a paso con\u00a0Microsoft Bot Framework","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website"},"primaryImageOfPage":{"@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#primaryimage"},"image":{"@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg","datePublished":"2016-07-21T11:18:27+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"description":"Serie de art\u00edculos que muestran paso a paso sobre c\u00f3mo crear bot con Microsoft Bot Framework","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/microsoft-bots-paso-a-paso-i\/#primaryimage","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg","contentUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2016\/07\/Microsoft-Bot-Framework_thumb.jpg","width":270,"height":261},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/","name":"Piensa en software, desarrolla en colores","description":"Las ventajas que te ofrece Microsoft Azure y el mundo.NET","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27","name":"Santiago Porras Rodr\u00edguez","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","caption":"Santiago Porras Rodr\u00edguez"},"description":"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong","sameAs":["https:\/\/x.com\/saintwukong"],"url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/author\/en-tu-casa-o-en-la-mia\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/users\/22"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/comments?post=216"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/216\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media?parent=216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/categories?post=216"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/tags?post=216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}