jambonz / jambonz-webapp

A simple provisioning web app for jambonz
MIT License
5 stars 20 forks source link

Allow multiple of same speech vendor #304

Closed davehorton closed 11 months ago

davehorton commented 11 months ago

Currently, jambonz allows an account or SP user to create and use only one speech credential per user. For example, you could not create one speech credential for a nuance hosted speech service and a second for a nuance on-prem and then switch between them in your app. It would be desirable to be able to allow the user to create multiple different credentials from the same vendor and then switch between them in their app. This means being able to reference them by something other than just vendor name.

The desired solution would consist of the following

The idea is that this is backwards compatible, so that existing speech credential entries do not need to be updated (they will have a NULL value for label) but that an application can specify either a vendor or a label name in the synthesizer properties of the say and config verb. If a vendor is provided then the credential is selected by vendor (and if multiple rows exist for the vendor/account/SP a random row is used) while if the credential is selected by label then the speech credential is selected by label.

Suggested wireframe showing changes to the Speech Credential form below:

image

The "Label" label should have a question mark icon with popup text:

"Assign a unique label if you intend to use multiple credentials from this vendor"

The combination of {vendor, label} needs to be unique for an account and/or SP. I don't think we necessarily need to enforce this in the database but the API in jambonz-api-server should ensure this

davehorton commented 11 months ago

Additionally to this requirement, when a user provides a label when provisioning a speech credential, then in the applications view where they specify the speech vendor to use for the application the dropdown list must now contain the full list of vendors + any label name that they provisioned for a speech credential.

davehorton commented 11 months ago

merged