Giter Site home page Giter Site logo

freepbx-aws-polly's Introduction

FreePBX AWS Polly TTS Engine

badge badge badge

About

This is a FreePBX TTS Engine for AWS Polly. It is based on the FreePBX TTS Engine from The Web Machine. I updated the code to work with the aws sdk v3 (as v2 is no longer supported), packaged it with a 'new' version of nodejs (16) and added some new features.

Just want to use it?

See the step-by-step guide in the wiki.

Features

  • AWS Polly TTS Engine
  • Multi Language Support
  • Multi Voice Support
  • Prefix and Suffix Support

Installation

For beginners: see the step-by-step guide in the wiki.

Login to your FreePBX Server and run the following command:

curl -s https://raw.githubusercontent.com/scolastico/freepbx-aws-polly/main/install.sh | bash

Configuration

After the installation you can configure the /opt/scolastico/freepbx-aws-polly/config.json file.

See the defaultConfig.json for reference.

You can find the available voices here.

You should create a IAM user with the following permissions:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1234567890",
            "Effect": "Allow",
            "Action": [
                "polly:SynthesizeSpeech"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

FreePBX Configuration

After the installation you can configure the TTS Engine in the FreePBX GUI.

Settings -> Text to Speech Engines -> Add TTS Engine

Engine name: polly Engine path: /opt/scolastico/freepbx-aws-polly/bin

Installation Image

Usage

If you want to use a different voice or language you can use a !<presets as csv> before your text. You can chain multiple presets which will overwrite already set variables For example:

!en Hello World!

or

!de,2-seconds-silence Hello World!

Troubleshooting

If something does not seem to work, check the log files:

tail -f /opt/scolastico/freepbx-aws-polly/logs/combined.log

If this does not help, you are always welcome to open an issue.

Update

Just run the installation again.

Development

You need to install the following packages:

sudo apt install nodejs npm lame

Then install the dependencies:

pnpm install

License

This project is licensed under the Apache License 2.0.

About

Apache-2.0 A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.

What you can do

Permissions Conditions Limitations
๐ŸŸข Commercial useThe licensed material and derivatives may be used for commercial purposes.
๐Ÿ”ต License and copyright noticeA copy of the license and copyright notice must be included with the licensed material.
๐Ÿ”ด LiabilityThis license includes a limitation of liability.
๐ŸŸข DistributionThe licensed material may be distributed.
๐Ÿ”ต State changesChanges made to the licensed material must be documented.
๐Ÿ”ด Trademark useThis license explicitly states that it does NOT grant trademark rights, even though licenses without such a statement probably do not grant any implicit trademark rights.
๐ŸŸข ModificationThe licensed material may be modified.
๐Ÿ”ด WarrantyThis license explicitly states that it does NOT provide any warranty.
๐ŸŸข Patent useThis license provides an express grant of patent rights from contributors.
๐ŸŸข Private useThe licensed material may be used and modified in private.

Information provided by https://choosealicense.com/licenses/apache-2.0/

Read more here.

freepbx-aws-polly's People

Contributors

scolastico 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.