Alexa Dev Summit 2018 Tokyo

This is a report of Alexa Dev Summit 2018 @ Meguro Tokyo Japan. This is the big conference which focused on Amazon Alexa. I attended to talk about our community (Amazon Alexa Japan User Group a.k.a AAJUG) I’m surprised with attendees who had a big passion for the Amazon Alexa.

Community Session.

The post is the summary with complementation what I want to talk at the session.


First Part: Are you enjoying VUX?

VUX is a natural way to interact between device and people.
GUI tend with becoming systematic. People had to be gotten along with the system. So people were expecting the system is completely moved even if there was just one petit fail. 
In VUI world, We may be able to accept several fails in conversation. When I talk with my friends, if I could not listen a part of the content, You ask it again, don’t you? You are not angry.

Basically, Voice is ambiguous.  So we speak each other on the premise that making a mistake.

I surely understand there are many situations that VUX must not make mistake(e.g: medical scene). But I think this use case seems few.

VUX may bring a generousity to connecting the technology. That’s why I like VUX interaction.


Second Part: Lightning Talks

Three community members talk about their experience.


Jun Kawaoka

He was making Alexa Skill in Sapporo. the skill called “the trash calendar” This skill was pulled the gathering trash data which published by the government. Unfortunately, Data was a PDF. Then Government changed this data to the open data. I think this is a really nice sample which the government is moved by an Alexa skill.


Rie Motoki

She is a VUX designer. She is really passionate to the Voice Experience. So She talked about her experience why she dive deep to the community.

181215_AlexaDevSummitLT資料


Miso Tanaka

He is not an engieer. But he was launching several Alexa Skills and Many prototypes which Some IoT Device links to Alexa. 


Third Part: Through the community

at the networking party(Day 1). 

The community is an opportunity to output your knowledge what you like things. It was Alexa in my experience. AAJUG has over 450 members. It was raised up more 300 members in a year. But I think that the Size of the community does not matter.
Because freshness of Community depends on how many members who have big passion.
I would like to talk… “Let’s do output and share your Alexa knowledge and Experience at the community!”
You will get the big feedbacks depends on the number of your outputs.
If you are hesitating to output your Alexa knowledge, It is nonsense.

  • You don’t need provides correct knowledge.
  • You don’t need provides really difficult knowledge.
  • When you feel your experience seems a little bit useful for other people, Please talk at the community.

And, AAJUG is a not developer community. Designer, Planner, Seller, Marketer, and any other people can join us. We hope that People will be collaborating with each other naturally in the AAJUG community.


MORE HUMAN CENTRIC.

https://www.facebook.com/groups/amazon.alexa.jp/

https://twitter.com/aajugvoice

Thanks all attendees, staffs, and all amazonians.

Voice User Experience should be more humanic.

The Amazon would like to make Alexa to more HUMAN CENTRIC. You should not convert your web services to Alexa Skill directly.  What is the humanistic way? We consider these feature what we have.

  • We already have experience.  In conversation, We always complement information from our experience.
  • We often extend our conversation with the information that is stored each other.
  • We usually take care of him(or her) in conversation.
  • We store some keywords in our conversation for the next time.

In many cases of GUI systems, There are many implementations which we don’t go forward if all conditions should be clear. This is a not appropriate way for Voice User Experience. 

test

First Time
—————————————————————————————————————-
You:       Alexa, open booking concierge
Alexa:   Welcome booking concierge. What your name?

You:       hugtech
Alexa:    Welcome hugtech. ….
—————————————————————————————————————-

Secound Time
—————————————————————————————————————-
You:       Alexa, open booking concierge
Alexa:   Welcome booking concierge. What your name?

You:       (I already told my name to you….)
—————————————————————————————————————-

That is not humanistic! When you turn on the skill for the second time,  How about this?

Second Time
—————————————————————————————————————-
You:       Alexa, open booking concierge.
Alexa:   Welcome. I’m happy to see you again. 
—————————————————————————————————————-

In addition to this, We usually use several greeting. There are many patterns. Shall we modify greeting every time after Second time?

Third Time
—————————————————————————————————————-
You:       Alexa, open booking concierge
Alexa:   Welcome back, hugtech.
—————————————————————————————————————-

Re:Cap Re:Invent

The re:Invent is the biggest AWS conference in the world.  The post is a self-report(retrospective) at the re:Invent.

https://reinvent.awsevents.com/

 

Meet with Alexa EU Team

I went to join the breakfast with Alexa EU Team.

I helped to make AWS Certification in August.

  • Assisted in the development of AWS Certification Examinations by serving as a subject matter expert.

They are Amazonian, other Alexa’s expert and AWS Hero.

 

Stay together

We stayed a condominium with JAWS-UG community members. Here was the best place! It’s center of Las Vegas.

And, All JAWS-UG KOBE core organizers gathered at Vegas for the first time. It took for 3 years. That was my pleasure!

Meet Alexa Champions

 

As Alexa Champion, I and Hide joined the Alexa Champions meetup.

We could introduce our activity and discussing how to enhance the Japanese NLU.

In the future, They may join us.

 

KeyNote

Ruby! Ruby! Ruby!  Lambda!Ruby! Ruby! Ruby!

Finally!  AWS Lambda officially support Ruby!

There were many useful new service and features.

 

AWS Lambda Support Ruby.

https://aws.amazon.com/blogs/compute/announcing-ruby-support-for-aws-lambda/

 

Lambda Layers

https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html

With lambda layers, We can integrate the common logic into a layer.

 

Step Functions supports eight more services

https://aws.amazon.com/about-aws/whats-new/2018/11/aws-step-functions-adds-eight-more-service-integrations/?nc1=f_ls

We can import the data from Amazon ECS, AWS Fargate, Amazon DynamoDB, Amazon SNS, Amazon SQS, AWS Batch, AWS Glue, and Amazon SageMaker.

So We can do more less code.

 

For Amazon Alexa

Amazon Personalize

https://aws.amazon.com/personalize/

I had been expecting how to personalize Alexa Skill.

AWS personalize analyzes consumer needs and respond automatically by using ML power.

 

Machine Learning Model Marketplace.

https://aws.amazon.com/marketplace/solutions/machinelearning/

Alexa will be growth with Amazon SageMaker to enhance User Experience.

But Many people are not familiar with Machine Learning.

I think that The marketplace of ML models is really useful and much easier to implement ML technologies.

 

WorkShop

I joined 3 workshops.

I really excited with AVS Echo show development kit!

 

And,

I recommend 2 tutorials.

https://github.com/alexa/avs-device-sdk/wiki/Raspberry-Pi-Quick-Start-Guide-with-Script

https://github.com/alexa/workshop-in-skill-purchasing


 

Foot Print

 

AWS-UG Booth

There was Community Booth at the Expo floor.

I could talk with other countries UG leaders.

And,

Martijn (Organizer of AWS Amsterdam) came to our booth.

He presented his knowledge at besides our booth.

That was precious time.

 

Community Workshop

 

 

At the night,  In the community leaders workshop.

Hiromi Ito talked as represent of JAWS-UG.

She is really passionating for community activities.

 

re:Play

We were burning at the front!!!

 

 

 

Account Linking with Amazon Cognito by Authorization Code Grant

Prologue

If you would like to provide your SAAS.  Adding Voice Experience to your service is a good choice for the customer.

Voice Experience has a possibility that customer can use your service easier.

In this post, We show you to build the Serverless OAuth infrastructure and combining this your Alexa Skill.

Step by Step Summary

  1. Constructing Amazon Cognito UserPool
  2. Configuring Client App
  3. Create your Custom skill with Account Linking
  4. Acquire OAuth token

 

Recipe

1. Constructing Amazon Cognito UserPool

At first, Creating User Pool on AWS.

Access to the Management Console, Select Cognito. Then select “Manage User Pool“.

 

Select “Create a user pool

Select “Review defaults

 

In this post, All configuration is a default. (User is authenticated by email)

Select “Add Clients

done.

before going, Checking the Client information.

client_id” and “App client secret” will use Step 3.

 

2. Configuring Client App

There are two authentication types in OAuth2. The one is an implicit grant, and Auth code grant.

Implicit grant can use the use-case which user needs to authenticate every time when The Access Token had expired.

Auth code grant can use the use-case which application needs to update Access Token automatically.

For Alexa Skill,  Auth code grant is the better way to acquiring an access token.  Because Alexa has a feature that Access Token automatically updated.

 

To do this, Configuration is really easy. Just checking the “Authorization code grant” checkbox. and For authenticate by email, check “aws.cognito.signin.user.admin” in the Scopes.

 

In the Domain name, most of the use-cases are needed a custom domain for authentication.  Add Your own domain and Enter “Domain name” and “AWS managed certificate“.

 

Attaching is in progress….

 

You will find the Alias target (“xxxxxx.cloudfront.net”) on the screen. Add the URL as an alias record(A record) to your Hosted Zone on the Route53.

When attaching is finished, Domain status transits the “ACTIVE“.

 

Almost done.

For the test, Add the redirect URL to the Callback URL(s).

 

OK. Let’s access sign in page.

https://auth.hugtech.io/login?response_type=code&client_id=xxxxxxxxxxxxxx&redirect_uri=https://hugtech.io#

 

3. Create your Custom skill with Account Linking

Make a custom skill using the Fact Skill tutorial.

https://developer.amazon.com/alexa-skills-kit/tutorials/fact-skill-1

(Any other skills which are able to call can use as an alternative.)

 

Then, In Alexa Developer console, Add the Client Information.

In the same screen, Write down Redirect URLs. These URLs needs later.

 

Back to the Amazon Cognito Screen, Set the three Redirect URLs to the Callback URL(s).

 

done. You finished configuring Account Linking!

Let’s test!

 

Good.

4. Acquire Access token

When the skill was called, You can find the access token in the Request.

(Cloud Watch Logs)


ASK-SDK for Node.js のCode Snipet

const Axios = require('axios');
const HelloWorldIntentHandler = {
  canHandle(handlerInput) {
    return handlerInput.requestEnvelope.request.type === 'IntentRequest'
      && handlerInput.requestEnvelope.request.intent.name === 'HelloWorldIntent';
  },
  handle(handlerInput) {
    const accessToken = handlerInput.RequestEnvelope.session.user.accessToken;
    const speechText = 'Hello World!';
    const headers = {Authorization:  `bearer ${accessToken}`,  'Content-Type':  'application/json'};
    const Axios.get(url, headers);
    return handlerInput.responseBuilder
      .speak(speechText)
      .withSimpleCard('Hello World', speechText)
      .getResponse();
  }
};

 

Epilogue

With using Cognito, You can build the scaffold of OAuth2 flow much easier.

And, You don’t need to maintain the user resource in your own database.

And, You can build Voice User Experience with your customer resources.

 

For more information:

https://developer.amazon.com/docs/account-linking/understand-account-linking.html

 

 

More naturally interface. More Humanic interface.

HUMAN CENTRIC (Dr Warner Vogels at re:Invent 2018)

 

 

 

 

 

 

Alexa Champions

I was given the honor as a Alexa Champion today.

I have been holding Amazon Alexa’s meetup in Japan. But Now I’m living in the Netherlands.

Surely my situation is a little bit strange. I understand it.

But I would like to do my activities of Alexa community to spread Alexa’s Experience.

See my bio on Champions Gallery.

https://developer.amazon.com/ja/alexa/champions/tomoharu-ito

AAJUG Online Discussion #01

The AAJUG is a short name of Amazon Alexa Japan User Group.

The first online meetup was taken placed on 4 June 2018.

https://aajug.connpass.com/event/92574/

Thank you to all attendees!

Topics

  • self-introducing
  • about your skill
  • how do you usually do the test?
  • how to test the SSML
  • which is better node or python?
  • We wish the whole room can be Smart Home.
  • Clova, Google Home, Alexa, and Line
  • How about microphone’s performance of Spot and Show?
  • Which is better for designing the skill? Many conversations? Minimise?
  • advertisement(meetup, event etc..)

URL’s in the Topics

Python tutorial 5 munites alexa skill
https://developer.amazon.com/…/…/alexa-skill-python-tutorial

Alexa Skill: YUUBIN BANGOU KENSAKU
https://www.amazon.co.jp/Tomoyuki-Tochihira-%E…/…/B078SLJZ9G

Alexa Skill: Backlog for Amazon Alexa
https://www.amazon.co.jp/voicelabo-Backlog-for…/…/B07B2MVNQH

Alexa Skill: OTAMESHI GACHA!
https://www.amazon.co.jp/ottori-%E3%81%8A%E8%…/…/

Alexa Skill: MHW JAKUTEN checker
https://www.amazon.co.jp/ottori-%E3%80%8C%E9%9D%9E%E5%85…/…/

Alexa Skill: Mesoko URANAI
https://www.amazon.co.jp/%E3%82%AF%E3%83%A9%E3…/…/B07CND9KR7

Alexa Skill: BOSS NO HITOKOTO
https://www.amazon.co.jp/voicehackerjp-%E9%9D%…/…/B07DBBJB16

Alexa Skill: POIMONN NO MORI
https://www.amazon.co.jp/TAKAHIRO-NISHIZONO-%E…/…/B077LPDVXW

tips Github/URL

https://github.com/daisukeA…/alexa-conversation-model-assert
https://github.com/daisukeArk
https://www.npmjs.com/package/alexa-ssml-jsx
https://github.com/nickclaw/alexa-ssml
https://www.twilio.com/channels

Others

[Amazon Key]
https://www.amazon.com/b?ie=UTF8&node=17735409011

[Gadgets]
https://www.amazon.com/Light-Rhapsody-Control-…/…/B0766D7V3X

[Advertisement]
https://classmethod.jp/news/180712-alexa-salon-sapporo/

https://alexaskillawards.connpass.com/

 

Give me the PR、issue

https://github.com/ask-utils/ask-utils

 

See you next online discussion and enjoy voice experience!
https://aajug.connpass.com/event/92576/

 

FB Group

https://www.facebook.com/groups/amazon.alexa.jp/

 

Slack

https://alexa-jp.slack.com/

Invitation link

https://join.slack.com/t/alexa-jp/shared_invite/enQtMzY0NzczOTA5MDc3LTdhOTdhMDllM2JhODZlMjg2NDdjYWQxNTU5OWQwMWEzZWU3YTEzNjQzN2M4N2Y2YjI1ZGZkNGZiMGMwMmMwNDQ

 

WordBenchが終わることについて


This post is written in Japanese.

For thinking about community.


 

WordBench が終わることについて思うこと

僕は、WordPress のコミュニティにそれほど関わってる人間ではありません。WordBench には1、2回参加し、WordCamp KyotoでLTした、くらいの人間です。そんな数少ない参加でも、、それでも、WordBench は他のコミュニティよりも、よりピースフルな場所に感じていて、僕自身もWordPressではないですが、コミュニティを運営する立場の一人として、コミュニティに助けられた一人として、先日の「WordBench 終了」というのは、とても寂しい気持ちになった、というのが正直なところです。

一個人がブートしたコミュニティが10年も続いたんです。止めたい時に止めればいいと僕は思います。

(もちろん、もったいないなあという気持ちはありますが。)

コミュニティを先導したのはMiyoshiさん(と有志のボランティアメンバー)、なのであれば、最終決定もMiyoshiさんがすればいい、というのが私の考えです。コミュニティは大きくなった、メンバーも増えた、それに群がる人たちも増えてきた。WordPressがデファクトスタンダードになるにつれて、不協和音も起こる、それを軌道修正しようとしたけどダメだった。止めます。それでいいじゃない?と思います。

「いままでありがとう! あとは僕らが引き継ぐ!」みたいなのが起こったらそれはそれで続ければいいんじゃない?と。

そんな単純は話でないことはわかっていますが、止めるという意思も尊重したい。WordBenchの存続を望む声が多いんなら、遅かれ早かれ、引き継ぐ人が出るでしょう。コミュニティは、それくらいの「軽さ」でいいんではないか? と思うのです。

 

10年続いたコミュニティなんです。ひとまず、ほんとにおつかれさまでしたと言いたい。

今後 meetup.com へ移行していくようですが、体裁やレギュレーションの差異はあれど、WordBenchの価値観がこれまでと変わりなく続いていくことに僕は楽観的です。これだけWordBenchを思う人たちが声をあげて議論がされてるところを見ると、作り上げてきたものはちゃんと伝搬してるのではないかと思います。

マル。

 

 

AWS Summit Benelux 2018

 

AWS Summit Benelux is the really big conference for developers.

 

Introduction

Opening Session (Werner Vogels CTO of AWS)

Some new AWS service was introduced.

Although I’ve already known at re:Invent 2017, I recognized again AWS improve and more convenient the world.

Sessions

Unfortunately, I didn’t watch sessions much. Here are sessions which I joined.

 

Machine Learning

 Introduction of AWS SageMaker.

 

Serverless

 Making Serverless App with GraphQL

 

Culture of AWS

 Interviewing to Werner Vogels.

 

AWS Community Organizers in the Netherlands

They are AWS community organizers. Amsterdam, Hague, and JAWS-UG the Netherlands branch(it’s me)

 

Community pages

AWS Amsterdam

AWS Hague

JAWS-UG the Netherlands branch

 

Mr. Danilo again since re:Invent 2017 and a new nice guy in AWS

We met at re:Invent 2017.  Thanks to Danilo, I could join AWS community in the Netherlands.

 

See you next AWS Summit Benelux!

 

Backlog User Group Netherlands (NBUG) has birthed.

Bucklog User Group has booted up!

The Backlog is famous Project Management tool in Japan.

Manufacture of Backlog (Nulab.inc) has come to the Netherlands recently.

Hugtech.io helped them to built up the community.

 

NBUG Netherlands Backlog UserGroup Meetup

Haarlem, NL
10 メンバー

https://backlog.com/Are you interested in Project Management?Would you like to your PM operation to be easier and more enjoyable?With using the Backlog, It may come true.I…

Check out this Meetup Group →

 

We held pre meetup at 26 May in Amsterdam.

Check it and Let’s join us!

Jump to the community page