Creating A Custom Amazon Alexa Skill

Ryan Nguyen .NET, Programming, Tutorial Leave a Comment

With the explosion of the internet of things (IoT), many companies are competing to create the best smart home ecosystem for consumers.

Amazon Echo, for instance, is a robust system that allows the user to interact with their smart devices via voice command. Alexa is the application that the Echo communicates with, essentially the brain of the Amazon Echo. It controls how your Amazon Echo communicates with your other smart devices and services. It can sync with a variety of smart devices including switches, thermostats, garage doors, sprinklers, door locks, music streamers, news outlets, and more. It also allows the third-party companies to create custom skills which are then accessible through the Amazon Echo.

In this blog I will discuss the Amazon Echo and its Alexa application. We will go through the process to create a custom Alexa skill about the Keyhole blog, paying particular attention to keywords you’ll need to understand when you create your own Skill. From there, we’ll show how to test a Skill via simulators and deploy it to your Amazon Echo.



Real-Time Communication: Implementing Websockets With Spring Boot

Thomas Kendall Java, JavaScript, Technology Snapshot Leave a Comment

When developing web applications, we sometimes need to push server events down to connected clients. However, HTTP was not designed to allow this. To get around this limitation, a polling pattern was established where web pages would intermittently poll the server for any new events. This pattern was not ideal as it added HTTP overhead, was only as fast as the polling rate, and caused unnecessary load on the server.

Luckily, with the emergence of HTML5 came the WebSocket. The WebSocket protocol enables interaction between a browser and a web server with lower overheads. In this blog we’ll introduce the Websockets API and show how to implement Websockets with Spring Boot.



Auto-Publishing & Monitoring APIs With Spring Boot

David Pitt Keyhole Creations, Microservices, Technology Snapshot, Tutorial Leave a Comment

If you are heading down the path of a Microservices style of architecture, one tenant you will need to embrace is automation. Many moving parts are introduced with this style of architecture. If successful, your environment will have a plethora of service APIs available that the enterprise can consume for application development and integration.

This means that there must be a way that available API documentation can be discovered. API information needs to be effectively communicated throughout the enterprise that shows where APIs are used, how often APIs are used, and when APIs change. Not having this type of monitoring in place will hinder and possibly cripple the agility benefits that a Microservice style of architecture can bring to the enterprise.

This blog will describe how Swagger/OpenAPI documentation can be applied to a Spring Boot implementation. We will show how API documentation and monitoring can be automatically published to an API documentation portal.

As an example, we introduce a reference Spring Boot API CRUD application (using Spring MVC/Data with Spring Fox) and set up the automatic publishing of API documentation and statistics to documentation portal GrokOla. In the example, we introduce two open source utilities to help and allow published APIs the ability to be searched and notify users when changed….



White Paper Published – Microservices: Patterns for Enterprise Agility and Scalability

Keyhole Software Architecture, Company News, Microservices, Tutorial 4 Comments

We’re excited to announce the release of a new, free white paper on the Microservices software architecture style.

Microservices is an architectural pattern gaining steam in the development community. A Microservices architecture addresses problems that modern enterprises often face, including responding to market demands, handling spikes in traffic, and being tolerant to failure. These benefits are achieved by functionally decomposing a business’ domain into microservices, services that handle only a single responsibility.

In this white paper, we discuss how Microservices came to be, contrasting architecture patterns, features of a Microservices architecture, established patterns, how to get started with Microservices, and suggestions for Microservices adoption.

Download the free Keyhole Software white paper today!