System Time, please

Glide picks up the time from user devices (‘current time’) which is fair enough but annoying and causes issues in some cases.

Use case:

  • my telemedicine app has users and agents (video call)
  • both are in different apps, but working on the same glide table (TestFlow)
  • sometimes the user sets values, sometimes the agent

example - agent time stamp drops put on the test cassette… to start a timer

Problem>
If an agent is in a different time zone to the user, the agent time is used. So…. It’s 1600 for the user, but the agent might be 2 hours ahead so the time is set at 1800 (in the future!)

I can work around with ite checks in a clumsy way, and no, I can ask the user and agent their time zone all the time, even for on boarding.

A better solution would be a second time - the System Time. Unless I’m missing a trick.

Maybe you’re already doing this, but one thought is if you have both the user and agent pushing a button or something around the same time, you could capture their local time and maybe some some math to calculate the difference to the nearest hour and use that difference to offset timer start time to the user’s or agent’s local time. Still clumsy, but a thought. I agree that a GMT or System time would make it a lot easier to figure this out.

1 Like

Fortunately, I had two timestamps around the same time:

  • user request video (e.g. 11:00)
  • agent joins video (e.g. 11:03… or 12:03 or 09:03, etc)

Problem fixed with two columns (with some help from this solution, and implementation courtesy of my son, Patrick - 17 years old, programming algorithms to solve Expert Sudokus in less than 0.4 sec… working on Glide as my intern :slight_smile:


2 Likes

BUT I do not always have two timestamps from both sides. I have a challenge to work out what to show agents … before they have interacted with the user.

System time is the way to go - please @Mark :slight_smile:

1 Like

It is driving me totally bonkers without system time. The things I want to do become brutally complex… and prone to error. It should not be too hard :wink: :slight_smile:

Agreed. Would be awesome to have the option to write timestamps in UTC time.

1 Like

Exactly.

A good use case to show why there’s a problem:

User A is in Boston (ET) - they click and set a timestamp (ET)

  • there is a computed column - ‘how many minutes has it been since user timestamp” - so comparing Now to timestamp

10 mins pass

User A now sees 10 mins
User B in San Fran - time?!? As their Now is before the Timestamp saved

A logic that’s missing. A big gap - and a huge win to put it in :star2::champagne::birthday:

Right. Recorded timestamps are the issue. Any user with a UTC time that’s later than another user will appear to be interacting with the app in the future.

:slight_smile: I’ll grant that the way time is done is better than random…… as in ‘pick a number and I’ll make that the timestamp’…

BTW I am looking forward to seeing the Murphy Clock in action :slight_smile: @Darren_Murphy your sneak peek was intriguing :slight_smile: :slight_smile:

@Mark_Turrell

Did you fix your problem with your GS timestamp and the user timestamp working together?

I think I have a workaround and works very well (not very complex as well)

Saludos

Just in case you missed my workaround solution…

1 Like

yeah, we have a solution…

  • Agents click a button to assign themselves to a waiting user
  • Multi-step action does the following:
    • Writes the TestID into the Agents row a GSheet column
    • Sends a webhook to Integromat with the AgentID and TestID
    • Integromat then writes the TestID back to a column in the Agent sheet, along with a UTC timestamp
  • Agent is then put into a holding pattern
  • Once those changes sync back to Glide (takes about 5-10 seconds), a relation is formed, and the Agent is allowed to proceed to the video call with the user.

If multiple agents try to assign themselves to the same user, then the one with the earliest UTC timestamp (from Integromat) wins the race, and the others are booted out of the “waiting room”

1 Like

Thanks @Darren_Murphy and @Simon_Hill, I will see better the Simon’s idea to verify if this covers multiples timezones at the same time (I’m using my phone and I can’t see very well the video… sorry).

Darren, my solution doesn’t use Webhook (I understand your idea) and works with Glide time and its Now() function natively.

In short, I just made a new Glide time but using the GS timezone so, every time Now() updates Glide time (every 10 sec), my new time (Column) is updated as well in GDE in order to be used at any moment.
You will have the time based on your GS timezone on your APP always.

I will explain it with some pics later when I come back to my home soon.

Feliz día!

1 Like

I think I may have cracked this entirely within glide. It’s 1am so I need to get to bed, but I’ll try to whip up an example in the morning.

2 Likes

1am local?

3 Likes

:rofl::rofl:

1 Like

Ha! Excellent question. :rofl:

2 Likes

The suspense is killing me… :joy:

1 Like

Couldn’t wait 5 seconds? :wink:

1 Like