@blazingedge/alexa-lists

    1.0.0 • Public • Published

    Alexa lists

    Working with lists requires proper permissions for your skill, read the permissions part of the amazon documentation before using this module.

    Before making the requests you need to provide the access token. That is why the init function needs to be called first. All examples use the alexa-app module.

    Permissions card

    If you don't have the permissions to work with lists, then you should send the permissions card to the user.

    Example

    async function sendPermissionsCard (req, res) {
      return res.card(alexaLists.getPermissionsCard()).send()
    }
    

    Create custom list

    Creates a new with the provided name and a state set to active.

    alexaLists.init(token).createCustomList(listName)
    

    Example

    async function createCustomList (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const createdList = await listHandler.createCustomList('blazing new list')
      ...
    }
    

    Create custom list item

    Creates a new item for a specified list with the provided item status can be active or completed. The active status is set by default

    alexaLists.init(token).createNewListItem(listName, listItemName, listItemStatus)
    

    Example

    async function createNewListItem (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const createdListItem = await listHandler.createNewListItem('blazing list', 'buy apples', 'completed')
      ...
    }
    

    Delete custom list

    Delete a custom list by name.

    alexaLists.init(token).deleteCustomList(listName)
    

    Example

    async function deleteCustomList (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const deletedList = await listHandler.deleteCustomList('blazing list')
      ...
    }
    

    Delete custom list item

    Delete a list item from a specified list.

    alexaLists.init(token).deleteListItem(listName, listItemName)
    

    Example

    async function deleteListItem (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const deletedListItem = await listHandler.deleteListItem('blazing list', 'buy apples')
      ...
    }
    

    Get list

    Get specific list by name and/or status.

    alexaLists.init(token).getList(listName, listState)
    

    Example

    async function getList (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const list = await listHandler.getList('blazing list', 'active')
      ...
    }
    

    Get list item

    Get a specific list item from a list.

    alexaLists.init(token).getListItem(listName, listItemName)
    

    Example

    async function getListItem (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const listItem = await listHandler.getListItem('blazing list', 'list item')
      ...
    }
    

    Get lists metadata

    Get all lists, without the list items.

    alexaLists.init(token).getListMetadata(listName, listItemName)
    

    Example

    async function getListMetadata (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const lists = await listHandler.getListMetadata()
      ...
    }
    

    Update custom list

    alexaLists.init(token).updateCustomList(listName, {
      name: 'new list name',
      state: 'completed'
    })
    

    Example

    async function updateCustomList (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const updatedCustomList = await listHandler.updateCustomList('blazing list', {
        name: 'new list name',
        state: 'completed'
      })
      ...
    }
    

    Update list item

    alexaLists.init(token).updateListItem(listName, listItemName, {
      value: 'new list item name',
      status: 'completed'
    })
    

    Example

    async function updateListItem (req, res) {
      const listHandler = alexaLists.init(_.get(req, 'context.System.apiAccessToken'))
      const updatedListItem = await listHandler.updateListItem('blazing list', 'some item', {
        value: 'some updated item name',
        status: 'completed'
      })
      ...
    }
    

    Keywords

    none

    Install

    npm i @blazingedge/alexa-lists

    DownloadsWeekly Downloads

    2

    Version

    1.0.0

    License

    ISC

    Unpacked Size

    14.9 kB

    Total Files

    7

    Last publish

    Collaborators

    • iblazevic
    • ivancevic
    • kotarac
    • rajkovic
    • rkatic