Date period System Entity resolves to the next calendar year for non year-specific sentences - actions-on-google

Assuming I have a news app and I am in the year of 2018:
If the user says something like "Give me June's news", DialogFlow will resolve it to June 2019. I understand that it makes sense for some applications like event scheduling, but for my app, how can I control (train) it to resolve to the current calendar year?

You could customize your response in a fulfillment webhook. For example, you could set up a fulfillment function that will read the value of the date system entity and perform appropriate logic.
Depending on whether you're using Actions on Google client library or Dialogflow fulfillment library, the syntax will be different. Please refer to the docs for Actions on Google or Dialogflow on how to extract the values of entities from DialogFlow.

You shouldn't need to train DialogFlow with what the current year is, your webhook service (logic) should make this assumption.

Related

Importing google calendar availability for clients in flutter

I am creating an app for a business where the user is able to select an available time slot for an appointment, then schedule it. On the backend I'd like to pull available times from my personal google calendar, let them select a time slot, then see the events autopopulate to my google calendar so I have them clearly there. I am having a really hard time finding documentation on how to use the google calendar API to pull events from a hard coded (not a user authentication sign in) google account. Can anyone help here?

Skill closing and google opens recipe

We are developing interactive audiobooks for voice and have problems with some of our continuations with google assistant.
Example: In our story "Das tapfere Schneiderlein", the user hast to decide if he wants "Pflaumenmus" (plum butter) or "Apfelmus" (apple puree).
In the Test-console, everything works fine, both answers lead to the correct audio.
BUT with Google Assistant on Mobile device, only Pflaumenmus works. If I answer "Apfelmus", the action leaves conversations and opens Apple puree recipes with Google search. (see example image below, it's German, but still understandable I guess)
As we can never now, what our customers might answer, how can we prevent this from happening? (We are using Actions Builder.)
Example
This might be a result of an update regarding the Google Assistant Actions fallback intent behavior change that we announced on October 15/2020.
Follow the message from Google to make it work as you expect:
In order to provide a better experience, we now allow users to ask for some Assistant features, such as the weather or time, from within your Action. To perform this function, the Assistant detects if your Action matched a user's query with a fallback intent or NO_MATCH intent. If that is the case, and an appropriate response is available, Assistant responds to the user's request. If no response is available, or Assistant doesn't understand the query, the conversation continues within your Action.
As of October 15, 2020, this new behavior applies only if the fallback does not use a webhook. Starting January 15th 2021, we'll start enabling this feature for any Dialogflow fallback intent or Actions Builder NO_MATCH intent whether or not they use a webhook.
This change should not impact the operation of your Actions, unless you are using fallbacks as a way to collect input from your users. Going forward, you should only use fallback intents or NO_MATCH intents as a way to reprompt the user in the context of your Action. If you want your Actions to attempt to capture data from a wider range of user responses, create an intent that uses a Free form text type if you use Actions Builder. If you use Dialogflow, add an intent with a #sys.any type as the training phrase.

Google Calendar API V3 insert recurring event default timezone

Looks like there is a bit of inconsistency between 2 ways calendar RECURRING events could be created using the TIME ZONE:
'quickAdd' - does not require you to provide a timezone. The Calendar's default (UTC) or the one set by the Calendar owner will be used. Fair enough.
'insert' - the API doc states: "For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end."
Why for 'insert'-ing recurring events we cannot use use the time zone the Calendar already have?
The 'quickAdd' api endpoint clearly shows that it is possible!
For example, if you call the quickAdd with the following text (Important meeting at Office at 11am-11:25am every Fri with John) recurring events will be created with the time zone that already set in the Calendar!
Sure thing that I could get the Calendar time zone from the settings (/calendar/v3/users/me/settings/timezone). But this will require one extra call. It will cause more latency and bring more complexity to the code.
Another issue. The quickAdd api call for recurring events creates not only recurring events but also the same event on the day when the call been made! The API doc does not provide any explanation what are the correct values for the text attribute.
Would be great to hear back from Google API team to clarify those things.
Thank you.

Retrieving friend count delta

I've been looking through the Facebook-graph API for a way to get a kind of 'delta' of friend changes since a given date. it looks like the /<id>/friends end point will give me a total count at the current time. What I'd like is that same value but for a historic date (i.e. where the date is this time last year, so that I can see how many friends someone has made/lost since then).
(I was originally hoping Facebook would just let me see when people became friends, but it looks like a user's friends list, and all the related details, are off limits).
Unfortunately I can't just rely on the use of future dates, though that may be the solution I end up with (as in, I request the count at the current date, and then at some point in the future request it again and compare the difference).
I can see from my own Facebook account that they do track when a friend/connection was made, and I'm not looking to dig up details on the friend/connection. Ideally I'm looking for something like /<id>/friends?asat=<date>
As a follow up question assuming this feature isn't available through the facebook-graph API, how would I go about requesting this feature for a future version?
There is no way to get the history, you can only call the API endpoint on a regular basis and store the difference with date on your own.
Feature requests can be sent here: https://www.facebook.com/help/contact/268228883256323
...although, i doubt that they will implement this, to be honest. Those kind of "insights" are usually only available for Pages, but not for User Profiles.

Notifications on changes in SmartSheet

The API only seems to describe how to get other programs to control smartsheets, how do I get smartsheet to control other apps?
It seems to be possible, the zapier integration mentions that you can make an event "on new row".
In particular, it would be nice to get notifications on new rows and changes in dates.
Cine, you are correct - the explicit objective of the Smartsheet API (as is with most APIs) is to provide access to and facilitate management of Smartsheet data and properties. The API has no knowledge of other products and services - nor it should.
The Smartsheet connectors for Zapier, Azuqua, itduzzit and other similar "API orchestration" services allow users to create triggers on various Smartsheet events, like new rows or row updates... or take an action based on another event (e.g., create a new row or update an existing row).
In addition, we are in the process of developing webhooks (see https://en.wikipedia.org/wiki/Webhook and http://resthooks.org/) and plan to make these available later this year. Through webhooks you will be able to subscribe to notifications on Smartsheet events, like new rows, sheets, discussions, etc.