DialogFlow(API.AI) using slot filling to get queries answered updates response for multiple parameters - machine-learning

Just to give you a brief, I'm working on a Chatbot, that will suggest the user some things, based on the answers of a few quetions. Now, most of the questions that the agent asks the user are in Yes/No and with a very little variation.
So here's the usercase:
The agent asks the user these two questions:
Did you have your meal(s) on time?
Did you work out today?
The answers to both these questions can be in a YES/NO.
In that case, if the user is asked the meal question and the user responds with a NO, the agent updates the parameter values for both the meal question as well as the workout question.
But that's something that I don't want.
I'm using the slot-filling technique here. Is there a way around this problem.
Here's my User Info Intent and the parameters that I have:
PS - I don't really want to create multiple intents for all these parameters and want to handle all these answers with just one intent

If the agent updates the parameter values for both the meal question as well as the workout question that means you're using the same parameter to host both answers, you need to use different parameters.
If would be very helpful if you shared how you have handled the dialog so far. And can I ask why do you want to use only one intent?
You can try creating a generic intent and setting both parameters as required, defining your questions as prompts for each parameter. That way the answers will be hosted in two different parameters.

Related

How do I associated custom metadata with a SurveyMonkey survey?

I would like to configure my SurveyMonkey account so that when I create a new survey I am required to assign the new survey to one of an editable (by me) list of 'groups'. I would then like to aggregate reports based on survey 'group'.
SurveyMonkey seems to have a fixed list of 'categories', respondent 'metadata', and per-response 'custom variables', but I'm not seeing any kind of mixed metadata or custom variables at the level of a survey.
Does such a thing exist or is there a common workaround to achieve this?
There isn't currently a way to tag surveys. That would be a nice feature to have.
One possible workaround (although not ideal) is to set the Survey nickname or put an ID in the Survey title you can filter by when searching for surveys.
Another one is to set a custom variable on the Survey. Although these are normally meant as GET parameters when taking the Survey, you can use it to categorize Surveys as well.
One last thing is to add a question and use advanced branching if necessary to make sure it's always hidden to the user, and categorize based on that.
I do agree that a way to tag surveys directly, and then filter surveys based on a tag would be very useful but there is no current way to do that (as far as I'm aware)..

rails survey - tracking when already answer

I've just implemented a simple model in my app, to create a survey. Simple question and some answer.
There is no need to be connected to answer the survey, but I want people to answer it just one time. How can I do that?
I don't know how to track this easily: IP, user agent etc. But these things can be easily changed. Any idea?

Eventbrite API: What does event_list_attendees modified_after compare to?

I looked through the questions and found a question somewhat related but it wasn't the same.
If you use the event_list_attendees api call you get back a list of attendees. Those attendees have a modified field. One of the possible parameters in the api call is modified_after.
My question is regarding what triggers the modified field to update? Is this a user profile related field or is it related to this particular event ticket purchase? The api describes these two as the following:
modified_after Return only attendees whose “modified” value is equal
to or after this date/time (e.g., “2013-01-28 00:00:00″)
modified The date and time the event was last modified, in ISO 8601
format (e.g., “2007-12-31 23:59:59″).
Perhaps to explain why I am wondering what triggers modified to update. The goal is to create a small, one day use, mobile website that will allow users to see who has shown up so far for a local event I am working with. I know the api does not directly support this functionality. In my case however "close enough" is "good enough". If someone's ticket being scanned at the door triggers the modified field that would be sufficient.
So, does it?
Great question!
The modified attribute relates only to the individual attendee in the order. So, it won't be triggered by the account wide profile changes for that respective user. However, if a user logs in to Eventbrite and changes the information that specifically relates to this event (example: they change the spelling on their last name for this specific order).
Alternatively, you can actually use /event_list_attendees and set "display_full_barcodes" to "true" to see the status of the barcodes. When the barcode is used, you'll know that someone has been scanned in.
If you come up with a cool hack, then we'd love to check it out!
Hope that helps!

Pass quiz score to Desire2Learn Valence via API

I am trying to integrate an external multimedia application with Valence. The application presents the user with quizzes along the way, with each question mapping to a learning objective. Using the API, how can I send the results of each quiz/objective to D2L so it's part of the overall course grade?
Thanks for your question, it's definitely a good one that I'd love to hear more about!
Right off the top, I'll say that unfortunately the short answer is that Valence currently doesn't support retrieving quiz information, nor accepting question responses to contribute to the user's quiz grade in the grade book, and competency-based evaluation. We recognize this is a big gaping hole in Valence, but the reason why we don't have it yet is due to an assessment tools re-architecture which we're embarking on now, which will put things in place to expose more assessments tools functionality via Valence.
That said, I'd love to capture more details about your use case so that we # D2L can be well-positioned to support it in the future.
Can I assume that you would want to perform the quiz create, update, delete operations, inclusive of learning objective question association, directly in D2L, and not via Valence?
Get Questions: Would you be looking to retrieve all quiz question information, providing a quiz identifier?
Submit Responses, and Trigger Evaluation: Would you be looking to submit all quiz question responses, in order to trigger automatic evaluation, to populate the quiz's score in the grade book, and contribute to competency-based evaluation? Would you ever have a case where a question response was provided which required manual evaluation (such as a short/long answer question type)? If so, how would you like to see that handled?
Many thanks again, I appreciate your time to communicate this request.

How to Track my sites URLs across the web? Not using google analytics

Sorry for the simple question but I've searched through the forums for 2 hours.
Goal:
I want to track my websites URLs across the web. I'm current using google analytical to do tracking which is fine for me. But I want to show my users where their links are being clicked when they login to their account.
What's the best way I can do this? I'm using a php backed if that helps. My goal is to provide: how many times their links are clicked and where the URL was clicked from.
Edit: I was hoping somebody else would give you a better hint, but since the question doesn't seem to attract many people I'll try to give you a better answer.
So, breaking down your problem to pieces, you want to trigger a piece of code everytime a page is accessed. You should be able to do a mapping between the page and its owner at one point - when rendering the statistics. If you want to "cut corners" and have a simple solution, you simply insert into your database a new entry describing the event. You seem to be only interested in the number of times it was accessed, so for a specific pageID, you can count how many entries there is, so this data can be computed directly from your database.
Now, the interesting part, figuring out where the visitor comes from. If you take a look at the $_SERVER variable for PHP, documented here, you will see that it contains a lot of interesting information. I think you're mostly interested in 'HTTP_REFERER' which contains
The address of the page (if any) which referred the user agent to the
current page. This is set by the user agent. Not all user agents will
set this, and some provide the ability to modify HTTP_REFERER as a
feature. In short, it cannot really be trusted.
Looking quickly on Stack Overflow I didn't find a more trustable source, so when available, I guess that's the only data you can use.
If you want to make things a bit more robust, you could log the IP address of the visitor and only count 1 visit per day.
So, to recapitulate, you create a table which logs the visits, containing the pageID and referer (optionally the IP address and date to prevent multiple insertions on the same day from the same user if you want to be strict). You add a function call to each page that will record the information of your pageID, maybe the URL or an ID you use internally? and the value of $_SERVER['HTTP_REFERER']. Then, when a user wants to see his stats, you look up every pageID that belongs to him, then pull the count of entries for that page and all the referers.
I hope my explanations are clear. It's definitely not bulletproof, but it's simple and should do the job, and it can be programmed pretty quickly.
Old answer: Piwik (documented here) is pretty similar to Google Analytics. Since you own the database where the data is stored, you could probably extract all the data you want, the way you want it, and manipulate it the way you want without having to depend on someone else (Google).

Resources