【发布时间】:2016-11-05 08:56:15
【问题描述】:
创建新的行程提醒需要 事件的时间 和 reminder_time UNIX 时间戳。 https://developer.uber.com/docs/ride-requests/tutorials/ride-reminders/introduction#create-a-new-reminder
{
"reminder_time": 1477397303,
"phone_number": "+1234567890",
"event": {
"name": "Coding night Test",
"location": "AMC Metreon 16",
"latitude": 37.784223,
"longitude": -122.403462,
"time": 1477411703
}
}
我正在创建一个新提醒,并根据我的时区在 UNIX 时间戳中提供事件时间和提醒时间(我已经计算了它们,并且这两个时间都在同一个 TZ 中)。
我的问题是优步如何解释这些提供的时间?
场景:活动时间在不同时区,用户设置提醒在不同TZ。
根据 uber 文档,时区仅提供以下信息:
时区:API 中的所有时区都表示为 UTC 纪元,本地化是客户端的责任。
- 我该如何处理?我是否必须将 event_time 和 &reminder_time 都转换为标准时区,如 GMT/UTC,并传递这些时间戳。
- 优步将如何解释这些给定的时间戳,并在用户预期发送的正确时间向用户发送提醒。
- Uber 是否考虑提供 phone_number 来计算时区并根据她的 TZ 向用户发送通知/短信。
到目前为止,当我发送在我的 TZ 中计算的两个时间戳时,我只能在正确的时间收到短信。
【问题讨论】:
-
Unix 时间戳始终基于 UTC。您的目标是什么类型的输入或输出?什么编程语言?至于电话号码,不-根本与时区无关。可以使用 lat/lon 来导出时区,但不能使用电话号码。
-
您应该将两个时间都转换为 utc,因为 unix 时间是 utc。您可以为用户本地化以转换为他们的本地时间进行显示。
标签: datetime timezone unix-timestamp timezone-offset uber-api