Category Archives: Azure

#Podcast – Entrepreneurs and “the Cloud”; some experiences, opinions and more (Spanish)

 

ya es viernes 02

Hello!

In this episode, I’m not along, I’m lucky enough to share some time with Elena Salcedo Ortega and Juan Manuel Servera from Microsoft; and also Braulio Diez as an entrepreneur; and we all talk a little about how the world of small businesses has changed thanks to programs like BizSpark, platforms such as Visual Studio Team Services and many other services that you can use in these days.

During the first 15 minutes we started talking mostly about apps and business problems. Then Juan Manuel Servera joins the session and it becomes a little more technical, focusing on problems and opportunities we have today. Not all the topics we touch are about tools and Microsoft services, for example: the comparison of prices of BitBucket, GitHub or Visual Studio Team Services is an exercise that really worth listening.

Personally I get to the conclusion that thanks to services-oriented models, a small Startup can enjoy the same Apps and services that a great company; and the same goes for the development-oriented services. Whether you’re a company with 5000 developers, or a 3 people start-up, the services that you can count will be the same.

It is good to see that the SaaS model really works and can help a Start-Up can put its focus on “the business” rather than having to invest time in tasks trivial and heavy as maintaining infrastructure, dealing with suppliers, etc.
Ir a descargar
Greetings @ Toronto

El Bruno

References

#Podcast – Emprendedores y la nube, algunas experiencias, opiniones y mas

ya es viernes 02

Hola !

En este episodio, tengo la suerte de estar acompañado por Elena Salcedo Ortega y Juan Manuel Servera de Microsoft y Braulio como emprendedor para hablar un poco sobre cómo ha cambiado el mundo de las pequeñas empresas gracias a programas como Bizspark, a herramientas como Visual Studio Team Services y a muchos otros servicios que podemos usar en estos días.

Durante los primeros 15 minutos comenzamos hablando sobre los problemas más de negocio y apps. Luego se suma Juan Manuel Servera y la sesión se vuelve un poco más técnica, con foco en los problemas y oportunidades que tenemos hoy en día. No todos los temas que tocamos son sobre herramientas y servicios de Microsoft, por ejemplo: la comparación de precios de BitBucket, GitHub o Visual Studio Team Services es un ejercicio que realmente vale la pena escuchar.

Personalmente me ha gustado llegar a la conclusión de que gracias a los modelos orientados a servicios, una pequeña Startup puede disfrutar de las mismas Apps y servicios que una gran empresa; y lo mismo sucede con los servicios orientados al desarrollo. Ya seas una empresa con 5000 developers, o una startup de 3 personas, los servicios con los que puedes contar serán los mismos.

Es bueno ver que el modelo de SaaS realmente funciona y puede ayudar a que una StartUp pueda poner su foco en “el negocio” en lugar de tener que invertir tiempo en tareas triviales y pesadas como mantener infraestructuras, lidiar con proveedores, etc.

 

Ir a descargar
Saludos @ Toronto

El Bruno

References

#Bots – (III) Agregando canales a Bots: #Skype, #Facebook, #Telegram y mas !

Hola !

Hola estamos ya en el 3er y ultimo paso en esta serie sobre bots:

  1. Crear Hello Bot con Visual Studio 2015
  2. Publicar el Bot en Azure y registrarlo en Microsoft Bot Framework
  3. Asociar canales de comunicación con el Bot

Como escribí en post anteriores, una vez que se publica el bot, el canal Web Chat se activa por defecto y es el primero que podemos utilizar.image

Skype Channel

Llegado a este punto, lo siguiente y natural para mi fue intentar integrar el canal de Skype con  mi Bot. Para acceder a la configuración del mismo tenemos que navegar a Skype Bot Configuration page. Y como se ve en la siguiente imagen, los pasos a seguir son bastantes sencillos.

image

Una vez que hemos configurado todo lo necesario en el Bot, lo siguiente es darnos de alta en el  Skype Bot Portal utilizando una Microsoft Account. Para este ejemplo he creado una cuenta de ejemplo [elbrunoblog@outlook.com] and y he solicitado el ingreso al programa que todavía está en Beta.

image

Así que, al final, llegué a un punto en el que tengo que esperar el OK para entrar al Skype Bot Program para poder probar mi Bot en Azure. Es momento de probar algo más.

Facebook Channel

El Facebook Channel es similar. Comenzamos con una página paso a paso (Bot Facebook Configuration), donde podemos encontrar todo lo necesario para poder publicar y conectar nuestro Bot a Facebook. Como modelo de pruebas, creé una Facebook App que luego usaré en mi página de Facebook  (Si, tengo una humilde Facebook page)

image

Luego de conocer y configurar mi primera Facebook App, me pasé los 15 minutos más divertidos del mundo intentando conocer este mundo. Eso sí, muy difícil no debía ser porque logré tener toda la información que necesitaba para publicar mi Bot.

image

Así que, volví a la configuración de Facebook Bot y seguí con la configuración de Webhooks:

image

Y listo! ya tenía todo lo necesario. Sin embargo, quedé en un estado similar a Skype, ya que mi Facebook App queda a la espera que Facebook apruebe mi petición. Pero tampoco pude probar mi Bot en un canal Sad smile

Telegram Channel

En este momento comencé a estar un poco de bajón, ya que después de pasar un tiempo con Skype and Facebook, no había podido probar mi bot. Eso sí, Telegram me estaba esperando con una gran sorpresa.

Al igual que Skype y Facebook, tenemos una página para la configuración Bot Telegram, con todos los pasos necesarios para la publicación.

image

Para la creación del bot, usamos @botfather, que es una de las ideas más inteligentes que he visto últimamente. Bot Father es un Telegram bot para crear bots !!!

Solo unos segundos después, ya tenía creado mi Telegram Bot con el original nombre de @ElBrunoBlogBot

image

El proceso de creación del bot nos ofrece un Token, que es el que tenemos que utilizar en la configuración de nuestro Bot.

image

Así que, una vez habilitado mis credenciales de Telegram para mi bot ya podia comenzar a probar el mismo.

image

En la configuración de mi Bot podemos ver los 3 canales sobre los que he trabajado (aunque el canal de Facebook todavía no está habilitado)

image

Y ahora ya podemos tener una “conversación de las buenas” con mi Telegram Bot !

image

Por ejemplo: 😉

2016 05 06 Bot Telegram

Saludos @ Toronto

-El Bruno

2016 05 06 Bot Telegram

#Bots – (III) Connect to bots channels, #Skype, #Facebook, #Telegram and more !

Hi !

So, we are ready to go for the step 3, and start to use our bot in some channels:

  1. Create Hello Bot app using Visual Studio
  2. Publish the bot to Azure and register the bot in Microsoft Bot Framework
  3. Connect the bot to specific channels

As I wrote in my previous post, once we have out  Bot registered, the Web Chat channel is automatically enabled for our Bot.image

Skype Channel

My next natural step was to enable the bot in a Skype account. I was redirected to the Skype Bot Configuration page. As you can see in the following image, the configuration page is very straight forward, with all the necessary steps.

image

Once we get all the Bot information we need to go to the Skype Bot Portal using a Microsoft account. For this sample I’ve created a sample account [elbrunoblog@outlook.com] and requested access to be part of the Bot program.

image

At the end, to connect my Bot with Skype means wait until to get into the Skype Bot program. Time to move on.

Facebook Channel

Facebook Channel is similar. We start with a step by step page (Bot Facebook Configuration), where we have most of the necessary steps to publish and connect our bot with a Facebook page. So I decided to create a Facebook App which later will be used in my Facebook page (Yes, I’ve got a never seen Facebook page)

image

So, a couple of configuration minutes later I’ve got my basic Facebook App created and all the mandatory information was available for me.

image

At this moment, I can go back to my Facebook Bot Configuration page and start the Webhooks configuration

image

And that’s great! However, my app was submitted to Facebook and I need to wait until they approve the Facebook app. So no chance to test the bot here either Sad smile

Telegram Channel

So, at this moment I was very upset. I’ve spent some time dealing with Skype and Facebook, and I couldn’t test my robot in a final platform. However, Telegram was there with a big surprise for me.

Like Skype and Facebook, we have a nice Bot Telegram Configuration page with all the necessary steps to do this.

image

The creation of the bot is using @botfather, which is so smart. Bot Father is a Telegram bot to create bots !!!

So after a couple of seconds, I’ve got my Telegram Bot created and named @ElBrunoBot

image

And of course, I got a Token which I will use later on the Bot configuration page.

image

So, I enable my Telegram credentials for my bot and that’s it! is working.

image

Now I’ve got my Bot connected with 3 channels (even if the Facebook one is not working)

image

And I can finally have a “nice conversation” using telegram with my bot !

image

Like this one😉

2016 05 06 Bot Telegram

Greetings @ Toronto

-El Bruno

#Bots – (II) Como publicar el Bot en #Azure y registrarlo en Microsoft Bot Network

Hola !

En mi post anterior expliqué como crear un project tipo Hello Bot utilizando Visual Studio 2015. Este es el 1er paso de la serie de Bots:

  1. Crear Hello Bot con Visual Studio 2015
  2. Publicar el Bot en Azure y registrarlo en Microsoft Bot Framework
  3. Asociar canales de comunicación con el Bot

Así que, como ya tenemos el proyecto creado lo siguiente es publicar en Azure. Esta tarea es bastante trivial, no entrare en detalles sobre a misma (he dejado un link mas completo en la sección de referencias). Solo necesitamos una suscripción de Azure.

Seleccionamos el proyecto en Visual Studio 2015, desplegamos el context menu y seleccionamos “Publish”.

image

Esto lanza el asistente de publicación de Azure. Para este caso crearemos una App Service, que llamaré “BotApplicationElBrunoTest

image

Después del asistente de Azure, se lanza el asistente de publicación de Visual Studio y en solo unos segundos ya tenemos nuestro Bot publicado en un Azure App Service.

image

Detalle importante, es anotar la url de publicación [http://botapplicationelbrunotest.azurewebsites.net/]

Y ahora ya podemos registrar nuestro bot en Microsoft Bot Framework.

image

Lo primero que debemos hacer es navegar a la sección “My Bots” para registrar el bot. En el proceso de registro la mayoría de los campos son bastantes descriptivos, y lo único a tener en cuenta es el endpoint de nuestro bot. Para esto usamos la url de publicación en Azure con el sufijo /api/messages.

image

Y listo ! Nuestro Bot ya está registrado en el directorio de Bot Framework. Por defecto, los bot habilitan un canal de Web Chat para poder interactuar con los mismos.

image

Podemos probar esta funcionalidad utilizando el panel de prueba en la sección de la izquierda debajo

image

O podemos ser mucho más inteligentes y usar la Microsoft Bot Emulator app. Cambiamos la url para utilizar la de Azure y podemos tener algo como lo siguiente

2016 05 05 Bot Azure publish

El último paso, es agregar el AppId y AppSecret correctos en nuestro proyecto de Bot. Para esto debemos actualizar el web.config en Visual Studio. Y obviamente, publicar a Azure nuevamente nuestro Bot.

Clipboard01

En el siguiente y ultimo post, como agregar canales nuevos!😀

Saludos @ Toronto

-El Bruno

References

2016 05 05 Bot Azure publish

#Bots – (II) Publish to #Azure and register your Bot into Microsoft Bot Network

Hi !

In my previous post I explained how to create a simple Hello Bot project using Visual Studio 2015. Once we have created this bot (step 1), our next steps are:

  1. Create Hello Bot app using Visual Studio
  2. Publish the bot to Azure and register the bot in Microsoft Bot Framework
  3. Connect the bot to specific channels

So, let’s go with the Azure publish process. This is something very usual so I won’t get into the small step by step details (see the references section). You need an Azure subscription and then you can move on.

Select your project in Visual Studio 2015, get the context menu and select “Publish”.

image

This will start the Azure publish wizard. We’ll create an App Service. And for this demo I’ll name it “BotApplicationElBrunoTest

image

So, the Visual Studio publish wizard will be started, and a couple of seconds later we’ll have our Bot App published into an Azure App Service.

image

At this moment is important to annotate the url of our service [http://botapplicationelbrunotest.azurewebsites.net/]

Now is moment to register our bot into the Microsoft Bot Framework.

image

We go to the “My Bots” section and we can register our new bot. Most of the fields are very descriptive, and we need to define and endpoint for our bot. This is our previous Azure URl with the /api/messages suffix.

image

And that’s it! Our bot is registered in the Bot Framework directory. By default the bot are enabled with a Webchat channel.

image

We can try this channel using the test feature in the bottom left of the page

image

However, is better to do this using the Microsoft Bot Emulator app. Once we add the correct url in the app, we can try something like this

2016 05 05 Bot Azure publish

Once we got the bot registered, we need to update the AppId and AppSecret values on the web.config file in Visual Studio. After we update this values, we need to publish again to Azure our project and that’s it!

Clipboard01

So, we only need to add one more Step, that’ will be the latest post for this series😀

Greetings @ Toronto

-El Bruno

References

#Bots – Hola Mundo con Bot Framework y #VisualStudio 2015

Clipboard05

Hola !

Una de las características más cool que Microsoft presentó en estos días es una plataforma de Bot. Casi al mismo tiempo otros proveedores como Facebook también han presentado su propia versión de los Bots, así que es algo a tener en cuenta en un futuro cercano.

La descripción oficial es:

The Microsoft Bot Framework Connector is a communication service that helps you connect your Bot with many different communication channels (GroupMe, SMS, email, and others). If you write a conversational Bot or agent and expose a Microsoft Bot Framework-compatible API on the internet, the Connector will forward messages from your Bot to a user, and will send user messages back to your Bot.

Así que básicamente estamos tratando con una clase de comunicación inteligente, que se aloja en Azure y (esto es lo mejor) automáticamente se conecta con otros proveedores como Telegram, Twitter, Skype, etc.

Si queremos crear la estructura básica de un Bot, debemos descargar la siguiente plantilla (link) y añadir la misma en nuestros proyectos de Visual Studio 2015. Para ello, tenemos que copiar el archivo zip en el directorio de plantillas [%USERPROFILE%\Documents\Visual Studio 2015\Templates\ProjectTemplates\Visual C#]

image

Ahora en Visual Studio 2015, tenemos una nueva plantilla de proyecto. Vamos a crear un proyecto para probar

image

En este momento podemos compilar y probar el proyecto en modo local. La clase principal del proyecto es la clase de MessagesController

image

Esta clase recibe un mensaje de texto desde un usuario, y luego crea un replyMessage utilizando la función CreateReplyMessage. También es posible realizar  autenticación mediante credenciales sobre HTTPS, con el atributo [BotAuthentication]

image

Ahora, si ejecutamos nuestro proyecto de Bot Framework veremos que se encuentra por defecto en  [http://localhost:3978/]

image

Para probar este proyecto podemos usar una app que nos brinda el equipo de producto, Microsoft Bot Framework Emulator app. La misma se puede descargar desde aqui.

image

Eso es todo, podemos escribir un mensaje de muestra en la ventana de chat y el bot le devolverá la cantidad de caracteres del mensaje. A partir de aquí solo queda ver como pude crecer nuestro Bot

image

Y eso es un Hola mundo utilizando Bot Framework. En los siguientes posts explicare los pasos a seguir para la publicación de este bot en Azure y probar el mismo en uno de los canales soportados.

Saludos @ Toronto

-El Bruno

References

#CognitiveServices – Recap de posts

image

Hola !

Hoy toca cerrar la primera semana de posts sobre los nuevos servicios de Cognitive Services

El código fuente de todos los posts está en mi repositorio público de GitHub

GitHub Sample https://github.com/elbruno/Blog/tree/master/CognitiveServices

Saludos @ Toronto

-El Bruno

References

#CognitiveServices – Recap on #APIs: Bing Auto Suggest, Bing Web Search and Text Analytics

image

Hi !

So, I’ll close the week with a quick recap of the posts I wrote about Cognitive Services

You can download and use the sample from the GitHub source Code.

GitHub Sample https://github.com/elbruno/Blog/tree/master/CognitiveServices

And of course, for the other stuff I’ll still have my “old posts” on Project Oxford

Greetings @ Toronto

-El Bruno

References

#CognitiveServices – Text Analytics API, nuevo servicio: detección de key topics en documentos

Hola !

En el post de hoy veremos el último servicio incluido en Cognitive Services Text Analytics Api: Detect Key Topics.

Este servicio analiza un conjunto de documento y devuelve una colección con los topics más importante para documento. El servicio está pensado para trabajar con párrafos pequeños, como por ejemplo: reviews o feedback en un producto. Sobre estas base se puede utilizar esta API para aprender y conocer los temas principales sobre los que están hablando los clientes.

Este servicio tiene algunas diferencias con los anteriores de esta serie de posts. Por ejemplo:

– Para obtener  un mejor rendimiento es aconsejable que cada documento sea un pequeño párrafo de texto.

– En cada petición, es necesario enviar 100 o mas documentos para comenzar el proceso. En caso de enviar menos documentos nos encontraremos con el siguiente error:

Clipboard02

– Cada documento procesado se cuenta como una transacción,  esto es importante ya que la cuenta de prueba puede llegar al limite muy rápidamente si no trabajamos con cuidado.

– Este servicio no tiene respuesta en modo sin crono. Una vez enviada la colección de documentos obtendremos una colección de JobsIds para poder consultar luego el estado del procesamiento

{
    "odata.metadata":"<url>",
    "JobId":"<JobId>"
}

Si queremos analizar el estado de un Job, el resultado que obtendremos es similar al siguiente:

{
    "odata.metadata":"<url>",
    "Status":"Running",
    "TopicInfo":[],
    "TopicAssignment":[],
    "Errors":[]
}

Es por esto, que no he agregado un ejemplo en la App de Consola de este servicio. Están las clases de contrato y la llamada en el proyecto Client Library así que cualquiera lo puede usar si lo desea..

GitHub Sample https://github.com/elbruno/Blog/tree/master/CognitiveServices

Saludos @ Toronto

-El Bruno

References