Coder Social home page Coder Social logo

junheelee070712 / nugu-android Goto Github PK

View Code? Open in Web Editor NEW

This project forked from taehui/nugu-android

0.0 1.0 0.0 2.13 MB

NUGU SDK for Android

Home Page: https://developers-doc.nugu.co.kr/

License: Apache License 2.0

Kotlin 99.74% Java 0.26%

nugu-android's Introduction

NUGU SDK for Android

An SDK for application to integrate NUGU service at Android based on Kotlin or Java.

Introduction to components

The SDK consist of following components. Look at diagram.

  • Nugu Interface : Provide common interfaces to communicate with NUGU SDK.
  • Nugu Core : This component implements core business logic for NUGU service.
  • Nugu Agent : Provide default agent implementation such as ASRAgent, TTSAgent etc.
  • Nugu Android Helper : Provide a default android client to help you integrate into the application simply.
  • Nugu UX kit : Provide an UX components that follow NUGU's design guide.
  • Nugu Login kit : Provide helpers for NUGU Login.
  • Nugu Client kit : Provide helpers to easily develop for NUGU service

State Diagram

Requirements

Network : above TLS v1.2
OS : above Android 5.0 (API level 21)
Language : Java , Kotlin

How to integrate into your application?

Basically, the SDK provide a flexiable way for integration.
Only mandatory components for integration are 'Nugu Interface' and 'Nugu Core'.
The others are utility compoenents to easy integration.
But, we explain an simple method here.

Method 1 : (The most easy way) Use "Nugu Android Helper"

Setup dependency

At module's build.gradle

dependencies {
	implementation 'com.skt.nugu.sdk:nugu-android-helper:0.8.10'
}
Create Nugu Android Client

The client provides most of the APIs for status notification and control of the SDK.

val client = NuguAndroidClient.Builder(
        context,
        authDelegate,
        defaultAudioProvider
        ).endPointDetector(EndPointDetector(EPD_MODEL_FILE_PATH)).build()
Use SpeechRecognizerAggregator

If the application use "Keyword Detector" to wake up, recommend to use.
Otherwise, skip this part.
This class provides a convenient way to manage "Keyword Detector" and "SpeechProcessor" easily.
The constructor requires three parameters. Look at documentation about details.

val speechRecognizerAggregator = SpeechRecognizerAggregator(
									keywordResource, 
									SpeechProcessorDelegate(client?.asrAgent), 
									audioSourceManager)

nugu-android's People

Contributors

leesangho avatar shshshl09 avatar tommy5oo avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.