Skip to main content

Apprentice is a library for deploying and developing actions via Dialogflow and Google Cloud Functions.

Project description

Apprentice

Build Status PyPI version

Apprentice is a library for deploying and developing actions via Dialogflow and Google Cloud Functions.

Installation

pip install apprentice

Quickstart

A Google Action project will consist of two things:

  1. A Dialogflow defined action
  2. An endpoint that your Dialogflow Action can talk to.

To generate a Hello World application, you can run:

$ apprentice init

This will create a file structure:

hello_world_agent/
    main.py
    requirements.txt

main.py is the file that gcloud looks for to upload the function. It is important that the name, main.py, remains in order to use gcloud cli.

Testing

To make local development quicker, you can run a local server with

$ apprentice run

Deployment

Note

gcloud cli must be installed and authorized for the following command to work. If you wish to not have gcloud cli installed, you can copy the file contents via the gcloud function dashboard.

$ apprentice -f hello_world -s hello_world_agent -e hello_world

This will generate the command to execute a gcloud function deploy via the cli.

Getting Started

from apprentice import Apprentice

apr = Apprentice(__name__)


@apr.action()
def hello_world(*args, **kwargs):
    reply = 'Hello world!'
    return apr.response(reply)

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

GNU 3.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apprentice-0.1.7.tar.gz (17.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page