24
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

3分でClovaスキル「サイコロトーク」を作ってみた

Posted at

2018年7月12日にClova Extensions Kit(CEK)がリリースされました。
そこで簡単なスキルを3分で作ってみました。

作ったものはGoogle Homeでサイコロトークアプリを作ってみたと全く同じスキルです。
Clova Extensions Kitの基礎を知りたい方は@imajoririさんの記事が詳しいです。

完成動画

基本情報入力

LINE Developersでスキルチャネルを作成してください。
ざっくり基本情報はこのように埋めました。

s100.png

AWS Lambda関数作成

AWSのLambdaで関数を作成します。

s101.png

APIGateway作成

関数ができたら、APIGatewayを作成します。
トリガーの追加にあるAPI Gatewayをクリックします。

s102.png

新規APIの作成を行います。
埋めたら右下の[追加]ボタンをクリックします。

s103.png

右上の[保存]ボタンをクリックするとAPI GatewayのアクセスURLが発行されます。
この値をコピーしてClovaに貼り付けます。
s104.png

ExtensionサーバーのURLにLambdaでコピーした値を貼り付けます。

s105.png

プログラムを編集する

AWS Lambda画面のSaikoroSkillをクリックします。

s106.png

index.jsのコードを編集します。
編集したら右上の[保存]ボタンをクリックします。
s107.png

index.js
'use strict';

exports.handler = function (event, context, callback) {
    var response = {
        statusCode: 200,
        headers: {},
        body: ""
    };
    
    // 音楽再生先URL
    const url = `https://storage.googleapis.com/XXXXXXXXXXXXX.appspot.com/dice.mp3`;
    
    const wadai = ['情けない話。略して「なさばな」', 
                    '初めてまるまるした話。略して「はじまる」',
                    '信じられない話。「アンビリバボー!」',
                    '旬な話。「フレッシュ!」',
                    'シャレにならない話。略して「しゃればな」',
                    '今日の当たり目!。「おめでとー!おめでとー!」'];

    // ランダムで話題を選択する
    const wadaiIndex = Math.floor(Math.random() * wadai.length);
    const speechText = wadai[wadaiIndex];
                

    var responseJson = JSON.stringify({
        "version": "1.0",
        "response": {
            "outputSpeech": {
                "type": "SpeechList",
                "values": [
                    {
                        "type":"URL",
                        "lang":"",
                        "value": url
                    },
                    {
                        "type":"PlainText",
                        "lang":"ja",
                        "value": speechText
                    }
                ]
            },
            "card": {},
            "directives": [],
            "shouldEndSession": true
        }
    });
    
    response.body = responseJson;
    
    callback(null, response);

};

レスポンスの処理はコチラで確認してください。

まとめ

記事書く方が時間かかりましたが、実質3分で簡単なスキルが作成できました。
スキルを呼び出すためにはClovaの実機で「Clova、サイコロトークを開いて」と言えばスキルが実行されます。
ただ単純にしゃべらせるだけのスキルなら一瞬で作成することができます。
是非、皆様もスキルを作ってみましょう!

システム化のご検討やご相談は弊社までお問い合わせください。
https://i-enter.co.jp/contact/

24
12
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?