iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 30
0
AI & Data

Voice App 開發實務:使用Diagflow+firebase開發Google home App (google assistant action)系列 第 30

Line clova-cek-sdk-nodejs 撰寫clova skill #29 導入

審査結果
 — — — — — — — — — — — — — — — — — — — — — — -
その他
 — — — — — — — — — — — — — — — — — — — — — — -
デザインガイドラインの以下の要件を満たしておりません。

□その他の留意事項
https://clova-developers.line.me/guide/#/Design/Design_Guideline_For_Extension.md#OtherNotices2

具体的には、コンテンツの内容が日本以外を対象としているため、許可できません。
何卒、ご了承ください


前幾章的送審結果,這個理由也太蝦了吧!市政府的open data API 也不放心…

但身為Line API expert 沒有半支skill在store上是不行的,所以自然得上訴到底啊!雖然今年2018的Boot award 已經結束…殘念…

本章將採用 NHK news 的api 搭配 clova-cek-sdk-nodejs 服用,直接用日本本土的總可以了吧!

http://api-portal.nhk.or.jp/ja

目前NHK有提供4組api,我只需要當日新聞list 就可以了。

http://api.nhk.or.jp/v2/pg/list/130/g1/2018-10-18.json?key=xxxx

那作法就是如之前所述章節,不熟請先預習,再繼續下一步喔

如何使用LINE Clova 後台,建置 LINE Clova
#11 介紹
#12 Line Clova Developer Centerβ 環境設定
#13 建立
#14 訓練model
#15 使用 ExtensionサーバーのURL (webhook)串API
#16 送審

做法都一樣,只是 #15 使用 ExtensionサーバーのURL (webhook)串API 這裡,原本我是直接倒json回去,那現在就是會採用 line 官方的clova-cek-sdk-nodejs來實作。

https://github.com/line/clova-cek-sdk-nodejs


const clova = require('@line/clova-cek-sdk-nodejs'); // 引用 clova-cek-sdk
const http = require('http');
const bodyParser = require('body-parser');
const clovaSkillHandler = clova.Client
    .configureSkill()
    .onLaunchRequest(responseHelper => {
        //launch時 clova 要說的話
        responseHelper.setSimpleSpeech({
            lang: 'ja',
            type: 'PlainText',
            value: '私はNHKからのニュースを読むことができます,「ニュースを聞く」のように問いてください',
        });
    })
    .onIntentRequest(async responseHelper => {
        const intent = responseHelper.getIntentName();
        const sessionId = responseHelper.getSessionId();
        //定義各種 intent clova 要說的話,
        switch (intent) {
            case 'read':
                let text = await getNews();   //撈新聞data回來
                responseHelper.setSimpleSpeech(
                    clova.SpeechBuilder.createSpeechText(text)
                );
                break;
        }
    })
    .onSessionEndedRequest(responseHelper => {
        const sessionId = responseHelper.getSessionId();
        responseHelper.setSimpleSpeech(
            clova.SpeechBuilder.createSpeechText('また明日ね');  // skill 關閉時要說的話
        );

        // Do something on session end
    })
    .handle();

line clova-cek-sdk 初體驗完成!


上一篇
Voice App 開發實務 #28 dialogflow Intent的 對話設計
下一篇
#30 結語。
系列文
Voice App 開發實務:使用Diagflow+firebase開發Google home App (google assistant action)31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言