Timeline actions render incorrect verb tense for actions that end in the future

298 views Asked by At

I am publishing actions for events to the timeline ("Dave attended...", "Dave is attending...") with start_time = {now}; end_time = {time of the event}

My intent is that the action will render as "Dave is attending..." up until the event takes place, and then "Dave attended..." once the event is over.

It seems like when I perform multiple actions, the tense is correctly chosen as "is attending". (This is the UI where the large app icon is used, and multiple actions are listed next to it.)

However, when I've only performed one action, FB renders uses the past tense verb. (This is the inline UI, using the small app icon inline with the action)

Am I doing something conceptually wrong, or is this just a bug in FB's rendering? Has anyone else seen this and found a fix/workaround?

1

There are 1 answers

0
Philip Bulley On BEST ANSWER

Reposting my answer from here as it may also be useful to you.

If your start time is now, the easiest way is to specify "expires_in" as a POST variable. This is an optional parameter and will denote the duration (in seconds) for which your action should remain in the present tense.

From the documentation:

expires_in (integer)

The number of seconds before this action is considered “old”. From the time the action until expires_in seconds have elapsed, the action is considered “present tense”, and afterwards, it is considered “past tense”.

expires_in is a shortcut for specifying end_time when it’s more convenient to provide a delta in seconds between when an action started and when it ends. For example, when a user starts watching a movie, when you post a watch action, expires_in should be the length of the movie in seconds.