How to setup dynamic list for a slot? - amazon-lex

I building a bot in amazon lex , I have a usecase where , I will give the user option to choose flower to order , My list of flowers is dynamic and will be got from a service , how should I build a slot for this use case ?

For a very similar question can go here: Custom Slot Type with AWS Lambda hook for Amazon Lex
AWS exposes an API to dynamically create slot types, and updating the LEX bot. (see: http://docs.aws.amazon.com/lex/latest/dg/API_PutSlotType.html, and http://docs.aws.amazon.com/lex/latest/dg/API_CreateSlotTypeVersion.html)
Your best bet is to use their LEX API to update the custom slot type whenever you detect a change in your list. There seems to be no "native" way to specify a dynamics list.

Related

How to store multiple value in one Application Settings (i.e. env vaiable) in Azure Function

I am setting up an Azure Function for housekeeping my relational database.
I want to be able to control what table can be clear in which interval via Application Settings (i.e. env vaiable), so I am investigating the best way to insert multiple value in one application settings.
I currently have 2 ideas:
Idea 1:
Use JSON, so the application settings will be something like this:
HOUSEKEEPING_VALUE={"table_a":3,"table_b":6}
After decoding the JSON format, I will clear table_a in 3 months interval, table_b in 6 months interval.
Idea 2:
Use the same format as those used by Azure connection string x1=y1;x2=y2;x3=y3;:
HOUSEKEEPING_VALUE=table_a=3;table_b=6;
Would like to ask the community, any other ways to achieve my goal which is more elegant? Or perhaps using JSON for my case is the norm? Thanks!
There are no elegant ways for multiple values stored in app setting in azure portal.
You should use the 2 solutions as mentioned in your question, then parse them by yourself.
There other option (secured/centralized) is using Azure App Configuration Store to and bootsrap in your Azure Functions
quick start of Azure App Configuration
how to leverage json content type

Eloqua API - Retrieve a list of contacts based on Security Label

I'm trying to build a dashboard that provides information (aggregates only) about contacts in our Eloqua database, but only those with a specific security label. Is there a way to gather this info using the REST APIs that ELoqua publishes? If not, is it something I can filter on in the Analytics suite?
Unfortunately, the contact security labels are very internal and are not directly available through the api or reporting. A workaround would be to create a shared list for each label, and then add the contact to that list depending on what label they have been assigned, and handle this directly on the label assignment workflow (each time they run through the label assignment workflow, remove them from all shared lists in case their label changes).
You can then access list membership through the API or bring it in as a subject area in OBIEE, filtering on the appropriate lists.

Is it possible to rename an Intent in Amazon Lex?

I am using Amazon Lex to build a chatbot. I have an intent called GetPersonalLoan which I now want to break down into multiple intents like GetPersonalDetails, GetLoanDetails and so on. So is there any option to change the name of the intent GetPersonalLoan?
No, there is currently no ability to rename intents. You can copy or move intents to other lex bots, but the name is fixed and cannot be used a second time in your AWS account. You will have to create a new intent for the new name.

How to enable Watson conversation service to use your own database for serving user's request

I want to build a smart search agent which would use Watson conversation to process the request and give response but will use my own database say SQL server to search the desired output.
In Short Instead of writing intents and dialogues manually or importing from a csv file, I want to write my won code in .net in such a way that all the request and responses are influenced by my own data stored in my database. I only intent to use watson's processing and interpreting capability. But the processing must happen on my data.
E.g If the user searches for a word say "Dog", the Watson conversation service must search in my database and give relevant answers to the user based on the search.
Take a look at the solution architecture in the Watson Conversation documentation. Your database would be one of the depicted backend systems. Your application would be, as you mentioned, written in .NET and would use WCS to process the user input. It would return a response with all the associated metadata. Instead of having complete answers configured in a dialog, you would use something I have described as "replaced markers" in my collection of examples. Those markers are kind of hints to your application of which database query or which action to perform.
Note that WCS requires some intents and entities to work on. If you want to rely just on the detected intents and entities, you could work with one or two generic dialog nodes. As another technique you could use data from your database to generate intents and entities as an initial setup. In my "Mutating EgoBot" I use the Watson Conversation API to add intents and entities on the fly.
I believe you should use the standard trick:
instead of defining resposnses in the node of your diaglog, define an action on the output object of the node and let your applicatation take care of providing response (see https://console.bluemix.net/docs/services/conversation/develop-app.html#building-a-client-application)

Is there a way to update custom fields with a post function in JIRA?

I was wondering if there is a way to update a custom field during a workflow transition in JIRA.
The "Update Issue Field" post function is the closest feature I found, but its document explicitly states "This post function cannot update custom fields and must be positioned after the other optional post functions."
I was wondering if there is another function can support my purpose.
JIRA Suite Utilities is the standard add-on everyone uses to do this
https://jsutil.atlassian.net/wiki/display/JSUTIL/JIRA+Suite+Utilities+Workflow+Post-Functions#JIRASuiteUtilitiesWorkflowPost-Functions-UpdateIssueCustomFieldPost-Function
Not available for OnDemand
EDIT: JIRA Suite Utilities is now available for JIRA Cloud and comes pre-installed in new Cloud instances.
EDIT: And now it is no longer free.
There is a Post Function Update Issue Custom Field now in JIRA OnDemand 7.1. It seems to be pretty limited, e.g. you can't write an expression such as setting the value if it's currently empty.
I'd provide a link to their documentation page but their search claims it doesn't exist.
There is possible to execute Groovy script as Post Function and it let you do almost everything.
For example, here is script, how to update custom field (option) dependent on value of another custom field value.
EDIT: This solution is abel only for hosted instace. Not for Cloud

Resources