Git Product home page Git Product logo

antaris-main's Introduction

Antaris-main documentation

Antaris is a project from ENGR 498 Capstone class at the University of Arizona designed and developed by team 23062.


Table of contents:

Software concept and explanation

Interation models

Interaction models are the entry points through which the Alexa device recognizes the functionalities of the skill and provides a corresponding response. More details about Interaction Model can be viewed here through Amazon documentation here

The interation models in this Antaris skill include the following custom intents:

  • UserAuthenticationIntent: handles the authentication of participants
  • ChooseStudyIntent: provides the participant with a list of available surveys after successful authentication
  • BeginSurveyIntent: activates the survey after the participant has provided the choice or survey
  • QuestionIntent: handles the participant's command to start reading the questions
  • AnswerIntent: recogizes the answer from the participant to each survey

The intents in the Interation Model can be updated and developed further using either the built-in interface inside the Amazon Developer Console (recommended) or the Alexa Skills Toolkit extension that can be installed in VS Code.

Multimodal Responses

Multimodal Responses are visual elements built in Alexa Presentation Language (APL) included in the Alexa's response to a command from the user (the participant) should their Alexa supports a display screen. Similarly to Interaction modes, Multimodal Response can be developed using either the built-in interface inside the Amazon Developer Console (recommended) or the Alexa Skills Toolkit extension that can be installed in VS Code.

The Multimodal responses in this Antaris skill include the following visual models:

  • BasicAnnoucement: a screen with a main text in the middle and a subtext at the bottom left. BasicAnnouncement example

  • QuestionDisplay: a screen with the question text in the middle, question number and survey name at the top left, and a subtext at the bottom left. QuestionDisplay example

  • SurveySelection: a screen with a list of available surveys in the middle and 2 lines of text at the top left corner that greets the authenticated user and let them know the number of surveys available. SurveySelection example

Intent handlers

Each intent described in Interation models above requires a handler which is a function declared inside @/lambda/handlers. The code in each intent handler will decide logics and actions that the Alexa skill will perform when that intent is triggered by the participant.

For instance, at @/lambda/handlers/UserAuthenticationHandler.js we have the handler function for the UserAuthenticationIntent.

All handler functions have to be imported into the index file at @/lambda/index.js, which serves as the entry point of all handlers, to be added to the SkillBuilders module from the ask-sdk-core package.

External communications

This skill communicates with Antaris-web server in order to fetch participant data as well as to upload the response to MongoDB Atlas connected to Antaris-web server. At the moment, the functions to make the HTTP requests to Antaris-web's RESTful APIs are located at @/lambda/services and the configurations are located at @/lambda/config/api.config.js.

Version control

During development, this skill is setup with Git and is configured to fetch from the Amazon Developer Console and to push to both the Amazon Developer Console and a Github repository (antaris-main). Please check out this video to learn more about this setup.

antaris-main's People

Contributors

sonmac1203 avatar juliannechania avatar darsanchez avatar abdullahk9 avatar

Watchers

Shravan Aras avatar  avatar

Forkers

nextgensh

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.