iobroker.life360ng 1.0.21 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +124 -10
- package/admin/i18n/de.json +0 -5
- package/admin/i18n/en.json +0 -5
- package/admin/i18n/es.json +2 -7
- package/admin/i18n/fr.json +2 -7
- package/admin/i18n/it.json +2 -7
- package/admin/i18n/nl.json +2 -7
- package/admin/i18n/pl.json +2 -7
- package/admin/i18n/pt.json +3 -8
- package/admin/i18n/ru.json +2 -7
- package/admin/i18n/uk.json +2 -7
- package/admin/i18n/zh-cn.json +2 -7
- package/admin/jsonConfig.json +4 -64
- package/io-package.json +14 -17
- package/lib/life360CloudConnector.js +79 -126
- package/lib/life360DbConnector.js +93 -144
- package/main.js +0 -107
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -51,19 +51,125 @@ Add private places not visible to Life360 cloud services. The adapter checks pre
|
|
|
51
51
|
|
|
52
52
|
### Integration
|
|
53
53
|
|
|
54
|
-
Choose which Life360 data to process: circles, places, people.
|
|
54
|
+
Choose which Life360 data to process: circles, places, people.
|
|
55
55
|
|
|
56
56
|
### Location-Tracking
|
|
57
57
|
|
|
58
58
|
Enable location-tracking to add geo-positioning details (latitude, longitude, `locationName`) to the people data points.
|
|
59
59
|
|
|
60
|
+
## Migration / Upgrade Notes
|
|
61
|
+
|
|
62
|
+
### Upgrading from 1.0.x to 1.1.0
|
|
63
|
+
|
|
64
|
+
The internal object hierarchy has been restructured to comply with
|
|
65
|
+
ioBroker's object type rules.
|
|
66
|
+
|
|
67
|
+
**Please perform the following steps after updating:**
|
|
68
|
+
1. Stop the adapter instance
|
|
69
|
+
2. Delete all objects of the adapter (in ioBroker Admin:
|
|
70
|
+
Objects → life360ng.0 → Delete all)
|
|
71
|
+
3. Start the adapter instance again
|
|
72
|
+
4. All datapoints will be recreated automatically
|
|
73
|
+
|
|
74
|
+
> ⚠️ Your existing scripts and automations do **not** need to be changed –
|
|
75
|
+
> all datapoint IDs remain the same.
|
|
76
|
+
|
|
60
77
|
## States
|
|
61
78
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
|
79
|
+
### circles
|
|
80
|
+
|
|
81
|
+
Life360 circles with their associated places and member presence.
|
|
82
|
+
|
|
83
|
+
| State | Type | Description |
|
|
84
|
+
|---|---|---|
|
|
85
|
+
| `circles.<id>.name` | text | Circle name (e.g. `Family skvarel`) |
|
|
86
|
+
| `circles.<id>.id` | text | Circle UUID |
|
|
87
|
+
| `circles.<id>.memberCount` | value | Number of circle members *(may be null)* |
|
|
88
|
+
| `circles.<id>.createdAt` | date | Circle creation date |
|
|
89
|
+
| `circles.<id>.timestamp` | date | Last data update |
|
|
90
|
+
| `circles.<id>.places.<placeId>.<memberId>.isPresent` | indicator | Member is present at this place |
|
|
91
|
+
| `circles.<id>.places.<placeId>.membersPresent` | value | Number of members currently at this place |
|
|
92
|
+
|
|
93
|
+
### info
|
|
94
|
+
|
|
95
|
+
| State | Type | Description |
|
|
96
|
+
|---|---|---|
|
|
97
|
+
| `info.connection` | boolean | `true` when connected to Life360 cloud |
|
|
98
|
+
|
|
99
|
+
### myplaces
|
|
100
|
+
|
|
101
|
+
Custom places defined in the adapter configuration (not synced to Life360 cloud).
|
|
102
|
+
Structure: `myplaces.<placeName>.<memberName>.*`
|
|
103
|
+
|
|
104
|
+
| State | Type | Description |
|
|
105
|
+
|---|---|---|
|
|
106
|
+
| `myplaces.<place>.<member>.distance` | value.distance | Distance to place center in meters |
|
|
107
|
+
| `myplaces.<place>.<member>.isPresent` | indicator | Member is within the place radius |
|
|
108
|
+
| `myplaces.<place>.<member>.startTimestamp` | date | Timestamp when member entered the place |
|
|
109
|
+
| `myplaces.<place>.<member>.timestamp` | date | Last check timestamp |
|
|
110
|
+
| `myplaces.<place>.gps-coordinates` | value.gps | Place center as JSON `{"lat":..,"lng":..}` |
|
|
111
|
+
| `myplaces.<place>.latitude` | value.gps.latitude | Place center latitude |
|
|
112
|
+
| `myplaces.<place>.longitude` | value.gps.longitude | Place center longitude |
|
|
113
|
+
| `myplaces.<place>.members` | list | All members checked against this place |
|
|
114
|
+
| `myplaces.<place>.membersCount` | value | Total number of tracked members |
|
|
115
|
+
| `myplaces.<place>.membersPresent` | list | Names of members currently present |
|
|
116
|
+
| `myplaces.<place>.membersPresentCount` | value | Number of members currently present |
|
|
117
|
+
| `myplaces.<place>.radius` | value | Configured radius in meters |
|
|
118
|
+
| `myplaces.<place>.timestamp` | date | Last data update |
|
|
119
|
+
| `myplaces.<place>.urlMap` | text.url | OpenStreetMap link to place |
|
|
120
|
+
| `myplaces.<place>.urlMapIframe` | text.url | Google Maps embeddable URL |
|
|
121
|
+
|
|
122
|
+
### people
|
|
123
|
+
|
|
124
|
+
Each Life360 circle member gets their own channel under `people.<id>`,
|
|
125
|
+
where `<id>` is the member's Life360 UUID.
|
|
126
|
+
|
|
127
|
+
| State | Type | Description |
|
|
128
|
+
|---|---|---|
|
|
129
|
+
| `people.<id>.avatar` | text.url | Profile picture URL |
|
|
130
|
+
| `people.<id>.battery` | value.battery | Battery level in % |
|
|
131
|
+
| `people.<id>.createdAt` | date | Account creation date |
|
|
132
|
+
| `people.<id>.disconnected` | indicator | App is explicitly disconnected |
|
|
133
|
+
| `people.<id>.firstName` | text | First name |
|
|
134
|
+
| `people.<id>.gps-coordinates` | value.gps | GPS position as JSON `{"lat":..,"lng":..}` |
|
|
135
|
+
| `people.<id>.id` | text | Life360 member UUID |
|
|
136
|
+
| `people.<id>.isConnected` | indicator.reachable | App is connected and reachable |
|
|
137
|
+
| `people.<id>.isSharingLocation` | indicator | Location sharing is active |
|
|
138
|
+
| `people.<id>.lastName` | text | Last name |
|
|
139
|
+
| `people.<id>.lastPositionAt` | date | Timestamp of last position update |
|
|
140
|
+
| `people.<id>.latitude` | value.gps.latitude | Current latitude |
|
|
141
|
+
| `people.<id>.locationName` | text | Current place name (e.g. `Home`) |
|
|
142
|
+
| `people.<id>.longitude` | value.gps.longitude | Current longitude |
|
|
143
|
+
| `people.<id>.status` | text | Connection status (e.g. `Ok`) |
|
|
144
|
+
| `people.<id>.timestamp` | date | Timestamp of last data update |
|
|
145
|
+
| `people.<id>.urlMap` | text.url | OpenStreetMap link to current position |
|
|
146
|
+
| `people.<id>.urlMapIframe` | text.url | Google Maps embeddable URL |
|
|
147
|
+
|
|
148
|
+
> **Note:** `isConnected` reflects whether the Life360 app is reachable,
|
|
149
|
+
> while `disconnected` indicates an explicit disconnect state.
|
|
150
|
+
> Both can be `false` simultaneously during a connection loss.
|
|
151
|
+
|
|
152
|
+
### places
|
|
153
|
+
|
|
154
|
+
Life360 places synced directly from the Life360 cloud (defined in the Life360 app).
|
|
155
|
+
These are **read-only** and cannot be configured in the adapter.
|
|
156
|
+
|
|
157
|
+
| State | Type | Description |
|
|
158
|
+
|---|---|---|
|
|
159
|
+
| `places.<id>.name` | text | Place name (e.g. `Refugium`) |
|
|
160
|
+
| `places.<id>.id` | text | Life360 place UUID |
|
|
161
|
+
| `places.<id>.circleId` | text | UUID of the circle this place belongs to |
|
|
162
|
+
| `places.<id>.ownerId` | text | UUID of the place owner |
|
|
163
|
+
| `places.<id>.gps-coordinates` | value.gps | Place center as JSON `{"lat":..,"lng":..}` |
|
|
164
|
+
| `places.<id>.latitude` | value.gps.latitude | Place center latitude |
|
|
165
|
+
| `places.<id>.longitude` | value.gps.longitude | Place center longitude |
|
|
166
|
+
| `places.<id>.radius` | value | Radius in meters |
|
|
167
|
+
| `places.<id>.timestamp` | date | Last data update |
|
|
168
|
+
| `places.<id>.urlMap` | text.url | OpenStreetMap link to place |
|
|
169
|
+
| `places.<id>.urlMapIframe` | text.url | Google Maps embeddable URL |
|
|
170
|
+
|
|
171
|
+
> **Note:** For custom places with presence detection, see [myplaces](#myplaces).
|
|
172
|
+
|
|
67
173
|
|
|
68
174
|
## Support
|
|
69
175
|
|
|
@@ -72,12 +178,23 @@ If you like our work and would like to support us, we appreciate any donation.
|
|
|
72
178
|
|
|
73
179
|
[](https://www.paypal.com/donate?hosted_button_id=7W6M3TFZ4W9LW)
|
|
74
180
|
|
|
181
|
+
## Credits
|
|
182
|
+
|
|
183
|
+
This adapter is based on the original work by [MiGoller](https://github.com/MiGoller).<br>
|
|
184
|
+
Many thanks for the initial implementation and idea!
|
|
185
|
+
This repository contains optimizations and further development.<br>
|
|
186
|
+
Note: The original [repository](https://github.com/MiGoller/ioBroker.life360) is archived and no longer maintained.
|
|
75
187
|
|
|
76
188
|
## Changelog
|
|
77
189
|
|
|
78
190
|
<!--
|
|
79
|
-
|
|
191
|
+
### **WORK IN PROGRESS**
|
|
80
192
|
-->
|
|
193
|
+
### 1.1.0 (2026-04-23)
|
|
194
|
+
- (skvarel) Fixed invalid object hierarchy (device under channel)
|
|
195
|
+
- (skvarel) Removed dependency on Places adapter
|
|
196
|
+
- (skvarel) NOTE: Delete all adapter objects after updating (see Migration Notes)
|
|
197
|
+
|
|
81
198
|
### 1.0.21 (2026-04-13)
|
|
82
199
|
- (skvarel) Improved help tab in the config
|
|
83
200
|
- (skvarel) Added new screenshots of browser DevTools
|
|
@@ -95,9 +212,6 @@ If you like our work and would like to support us, we appreciate any donation.
|
|
|
95
212
|
- (skvarel) ESLint now covers all lib files with strict no-warnings enforcement
|
|
96
213
|
- (skvarel) Added Copilot instructions for guided development
|
|
97
214
|
|
|
98
|
-
### 1.0.17 (2026-04-12)
|
|
99
|
-
- (skvarel) Configuration revised, translations adjusted and repo cleaned up
|
|
100
|
-
|
|
101
215
|
## Older changes
|
|
102
216
|
- [CHANGELOG_OLD.md](CHANGELOG_OLD.md)
|
|
103
217
|
|
package/admin/i18n/de.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Token (ohne 'Bearer' und ohne Leerzeichen)",
|
|
9
9
|
"life360_username": "E-Mail-Adresse (optional, Ersatz für Passwortauthentifizierung)",
|
|
10
10
|
"life360_username_help": "Wird nur benötigt, wenn du die passwortbasierte Anmeldung anstelle des Tokens verwenden möchtest (nicht empfohlen)",
|
|
11
|
-
"location_object_type": "Geolokalisierungsobjekttyp",
|
|
12
11
|
"location_unknown_name": "Ersatzname für unbekannten Standort",
|
|
13
12
|
"location_unknown_name_help": "Text für locationName wenn die Person an keinem bekannten Ort ist (z.B. 'unterwegs'). Leer lassen, um den Wert leer zu belassen.",
|
|
14
13
|
"paypal_donate": "Falls du uns unterstützen möchtest.",
|
|
@@ -25,10 +24,6 @@
|
|
|
25
24
|
"section_life360_data": "Life360-Daten",
|
|
26
25
|
"section_location_tracking": "Standortverfolgung",
|
|
27
26
|
"section_places_adapter": "Orte-Adapter",
|
|
28
|
-
"sendto_places_adapter_instance": "Places-Adapter-Instanz (-1 = deaktiviert)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Gib die Instanznummer des Places-Adapters ein (z. B. 0). Auf -1 setzen, um die Weiterleitung zu deaktivieren.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Regex-Filter für Personen (leer = alle senden)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Regulärer Ausdruck abgeglichen mit „[Vorname] [Nachname]“. Lass das Feld leer, um alle zu senden.",
|
|
32
27
|
"tab_advanced": "Protokolle/Logging",
|
|
33
28
|
"tab_general": "Life360-LogIn",
|
|
34
29
|
"tab_integration": "Integration",
|
package/admin/i18n/en.json
CHANGED
|
@@ -19,15 +19,10 @@
|
|
|
19
19
|
"process_life360_places": "Process Life360 places",
|
|
20
20
|
"process_life360_people": "Process Life360 people",
|
|
21
21
|
"section_places_adapter": "Places-adapter",
|
|
22
|
-
"sendto_places_adapter_instance": "Places-adapter instance (-1 = disabled)",
|
|
23
|
-
"sendto_places_adapter_instance_help": "Enter the instance number of the Places-adapter (e.g. 0). Set to -1 to disable forwarding.",
|
|
24
|
-
"sendto_places_adapter_regexp": "Regex filter for people (empty = send all)",
|
|
25
|
-
"sendto_places_adapter_regexp_help": "Regular expression matched against '[Firstname] [Lastname]'. Leave empty to send all.",
|
|
26
22
|
"section_location_tracking": "Location-tracking",
|
|
27
23
|
"track_location_people": "Enable location-tracking for people",
|
|
28
24
|
"location_unknown_name": "Fallback name for unknown location",
|
|
29
25
|
"location_unknown_name_help": "Text shown in locationName when the person is at no known place (e.g. 'on tour'). Leave empty to keep blank.",
|
|
30
|
-
"location_object_type": "Geo-location object type",
|
|
31
26
|
"debugging_verbose": "Enable verbose logging",
|
|
32
27
|
"helps": "Help & FAQ",
|
|
33
28
|
"intro_txt": "Help & FAQ.",
|
package/admin/i18n/es.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "ficha al portador",
|
|
9
9
|
"life360_username": "Dirección de correo electrónico (opcional, alternativa para la autenticación de contraseña)",
|
|
10
10
|
"life360_username_help": "Solo es necesario si desea utilizar un inicio de sesión basado en contraseña en lugar de un token",
|
|
11
|
-
"location_object_type": "Tipo de objeto de ubicación geográfica",
|
|
12
11
|
"location_unknown_name": "Nombre alternativo para una ubicación desconocida",
|
|
13
12
|
"location_unknown_name_help": "Texto que se muestra en LocationName cuando la persona no se encuentra en un lugar conocido (por ejemplo, \"de gira\"). Déjelo vacío para mantenerlo en blanco.",
|
|
14
13
|
"paypal_donate": "Donar con PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Vida del proceso360 círculos",
|
|
22
21
|
"process_life360_people": "Vida del Proceso360 personas",
|
|
23
22
|
"process_life360_places": "Proceso de vida360 lugares",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Capturas de pantalla del navegador DevTools (F12) con el valor del token resaltado • (se recomienda usar DevTools en una nueva ventana):",
|
|
25
24
|
"section_life360_data": "Datos de vida 360",
|
|
26
25
|
"section_location_tracking": "Seguimiento de ubicación",
|
|
27
26
|
"section_places_adapter": "Adaptador de lugares",
|
|
28
|
-
"sendto_places_adapter_instance": "Instancia de adaptador de lugares (-1 = deshabilitado)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Introduzca el número de instancia del adaptador de lugares (por ejemplo, 0). Establezca en -1 para deshabilitar el reenvío.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Filtro Regex para personas (vacío = enviar todo)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Expresión regular comparada con '[Nombre] [Apellido]'. Déjelo vacío para enviarlo todo.",
|
|
32
27
|
"tab_advanced": "Avanzado",
|
|
33
28
|
"tab_general": "vida360",
|
|
34
29
|
"tab_integration": "Integración",
|
|
35
30
|
"tab_myplaces": "Mis lugares",
|
|
36
31
|
"token1_txt": "Primera variante:",
|
|
37
32
|
"token2_txt": "Segunda variante:",
|
|
38
|
-
"token_hint": "Usuarios de la UE: cómo obtener su token de portador:\n1. Abra https://life360.com/login\n2. Ingrese su dirección de correo electrónico → haga clic en Continuar\n3. Ingrese el código de un solo uso enviado a su correo electrónico\n4. Abra el navegador DevTools (F12) → pestaña Red\n5. Busque la solicitud POST denominada 'token' (no OPCIONES)\n6. Abra la pestaña Vista previa/Respuesta → copie el valor de 'access_token' y péguelo debajo\n\n¡Ingrese el token SIN la palabra 'Portador' y SIN espacios!\n\
|
|
33
|
+
"token_hint": "Usuarios de la UE: cómo obtener su token de portador:\n1. Abra https://life360.com/login\n2. Ingrese su dirección de correo electrónico → haga clic en Continuar\n3. Ingrese el código de un solo uso enviado a su correo electrónico\n4. Abra el navegador DevTools (F12) → pestaña Red\n5. Busque la solicitud POST denominada 'token' y/o 'portador' (no OPCIONES)\n6. Abra la pestaña Vista previa/Respuesta → copie el valor de 'access_token' y péguelo debajo\n\n¡Ingrese el token SIN la palabra 'Portador' y SIN espacios!\n\nEl token es válido por varios meses.",
|
|
39
34
|
"track_location_people": "Habilitar el seguimiento de ubicación de personas",
|
|
40
35
|
"txt_one": "... ¡más información próximamente!"
|
|
41
36
|
}
|
package/admin/i18n/fr.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Jeton du porteur",
|
|
9
9
|
"life360_username": "Adresse e-mail (facultatif, solution de secours pour l'authentification par mot de passe)",
|
|
10
10
|
"life360_username_help": "Nécessaire uniquement si vous souhaitez utiliser une connexion par mot de passe au lieu d'un jeton",
|
|
11
|
-
"location_object_type": "Type d'objet de géolocalisation",
|
|
12
11
|
"location_unknown_name": "Nom de secours pour un emplacement inconnu",
|
|
13
12
|
"location_unknown_name_help": "Texte affiché dans locationName lorsque la personne ne se trouve dans aucun endroit connu (par exemple « en tournée »). Laissez vide pour rester vide.",
|
|
14
13
|
"paypal_donate": "Faites un don avec PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Traiter les cercles Life360",
|
|
22
21
|
"process_life360_people": "Processus de vie360 personnes",
|
|
23
22
|
"process_life360_places": "Processus Life360 lieux",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Captures d'écran du navigateur DevTools (F12) avec la valeur du jeton en surbrillance • (l'utilisation de DevTools dans une nouvelle fenêtre est recommandée) :",
|
|
25
24
|
"section_life360_data": "Données Life360",
|
|
26
25
|
"section_location_tracking": "Suivi de localisation",
|
|
27
26
|
"section_places_adapter": "Adaptateur de lieux",
|
|
28
|
-
"sendto_places_adapter_instance": "Instance d'adaptateur Places (-1 = désactivé)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Entrez le numéro d'instance de l'adaptateur Places (par exemple 0). Réglez sur -1 pour désactiver le transfert.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Filtre Regex pour les personnes (vide = tout envoyer)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Expression régulière comparée à « [Prénom] [Nom] ». Laissez vide pour tout envoyer.",
|
|
32
27
|
"tab_advanced": "Avancé",
|
|
33
28
|
"tab_general": "Vie360",
|
|
34
29
|
"tab_integration": "Intégration",
|
|
35
30
|
"tab_myplaces": "Mes adresses",
|
|
36
31
|
"token1_txt": "Première variante :",
|
|
37
32
|
"token2_txt": "Deuxième variante :",
|
|
38
|
-
"token_hint": "Utilisateurs de l'UE – comment obtenir votre jeton Bearer :\n1. Ouvrez https://life360.com/login\n2. Entrez votre adresse e-mail → cliquez sur Continuer\n3. Entrez le code à usage unique envoyé à votre email\n4. Ouvrez le navigateur DevTools (F12) → onglet Réseau\n5. Recherchez la requête POST nommée
|
|
33
|
+
"token_hint": "Utilisateurs de l'UE – comment obtenir votre jeton Bearer :\n1. Ouvrez https://life360.com/login\n2. Entrez votre adresse e-mail → cliquez sur Continuer\n3. Entrez le code à usage unique envoyé à votre email\n4. Ouvrez le navigateur DevTools (F12) → onglet Réseau\n5. Recherchez la requête POST nommée 'token' et/ou 'bearer' (pas OPTIONS)\n6. Ouvrez l'onglet Aperçu / Réponse → copiez la valeur de 'access_token' et collez-la ci-dessous\n\nEntrez le jeton SANS le mot 'Porteur' et SANS espaces !\n\nLe token est valable plusieurs mois.",
|
|
39
34
|
"track_location_people": "Activer le suivi de localisation des personnes",
|
|
40
35
|
"txt_one": "... plus d'informations à venir !"
|
|
41
36
|
}
|
package/admin/i18n/it.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Gettone al portatore",
|
|
9
9
|
"life360_username": "Indirizzo email (facoltativo, fallback per l'autenticazione della password)",
|
|
10
10
|
"life360_username_help": "Necessario solo se desideri utilizzare l'accesso basato su password anziché su token",
|
|
11
|
-
"location_object_type": "Tipo di oggetto di geolocalizzazione",
|
|
12
11
|
"location_unknown_name": "Nome di fallback per posizione sconosciuta",
|
|
13
12
|
"location_unknown_name_help": "Testo mostrato in locationName quando la persona si trova in un luogo sconosciuto (ad esempio \"in tour\"). Lascia vuoto per mantenere vuoto.",
|
|
14
13
|
"paypal_donate": "Dona con PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Cerchi Process Life360",
|
|
22
21
|
"process_life360_people": "Process Life360 persone",
|
|
23
22
|
"process_life360_places": "Process Life360 posti",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Schermate del browser DevTools (F12) con il valore del token evidenziato • (si consiglia di utilizzare DevTools in una nuova finestra):",
|
|
25
24
|
"section_life360_data": "Dati Life360",
|
|
26
25
|
"section_location_tracking": "Tracciamento della posizione",
|
|
27
26
|
"section_places_adapter": "Adattatore di luoghi",
|
|
28
|
-
"sendto_places_adapter_instance": "Istanza dell'adattatore Places (-1 = disabilitato)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Inserisci il numero di istanza dell'adattatore Places (ad esempio 0). Impostare su -1 per disabilitare l'inoltro.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Filtro regex per persone (vuoto = invia tutto)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Espressione regolare abbinata a \"[Nome] [Cognome]\". Lascia vuoto per inviare tutto.",
|
|
32
27
|
"tab_advanced": "Avanzato",
|
|
33
28
|
"tab_general": "Vita360",
|
|
34
29
|
"tab_integration": "Integrazione",
|
|
35
30
|
"tab_myplaces": "I miei posti",
|
|
36
31
|
"token1_txt": "Prima variante:",
|
|
37
32
|
"token2_txt": "Seconda variante:",
|
|
38
|
-
"token_hint": "Utenti UE: come ottenere il token al portatore:\n1. Apri https://life360.com/login\n2. Inserisci il tuo indirizzo email → fai clic su Continua\n3. Inserisci il codice monouso inviato alla tua email\n4. Aprire il browser DevTools (F12) → scheda Rete\n5. Trova la richiesta POST denominata \"token\" (non
|
|
33
|
+
"token_hint": "Utenti UE: come ottenere il token al portatore:\n1. Apri https://life360.com/login\n2. Inserisci il tuo indirizzo email → fai clic su Continua\n3. Inserisci il codice monouso inviato alla tua email\n4. Aprire il browser DevTools (F12) → scheda Rete\n5. Trova la richiesta POST denominata \"token\" e/o \"portatore\" (non OPZIONI)\n6. Apri la scheda Anteprima/Risposta → copia il valore di \"access_token\" e incollalo di seguito\n\nInserisci il gettone SENZA la scritta 'Portatore' e SENZA spazi!\n\nIl token è valido per diversi mesi.",
|
|
39
34
|
"track_location_people": "Abilita il rilevamento della posizione per le persone",
|
|
40
35
|
"txt_one": "...maggiori informazioni in arrivo!"
|
|
41
36
|
}
|
package/admin/i18n/nl.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Token aan toonder",
|
|
9
9
|
"life360_username": "E-mailadres (optioneel, reserve voor wachtwoordauthenticatie)",
|
|
10
10
|
"life360_username_help": "Alleen nodig als u op wachtwoord gebaseerde login wilt gebruiken in plaats van een token",
|
|
11
|
-
"location_object_type": "Objecttype geolocatie",
|
|
12
11
|
"location_unknown_name": "Reservenaam voor onbekende locatie",
|
|
13
12
|
"location_unknown_name_help": "Tekst getoond in locationName wanneer de persoon zich op een onbekende plaats bevindt (bijvoorbeeld 'op tournee'). Laat leeg om leeg te blijven.",
|
|
14
13
|
"paypal_donate": "Doneer met PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Verwerk Life360-cirkels",
|
|
22
21
|
"process_life360_people": "Verwerk Life360 mensen",
|
|
23
22
|
"process_life360_places": "Verwerk Life360-plaatsen",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Schermafbeeldingen van de browser DevTools (F12) met de tokenwaarde gemarkeerd • (het gebruik van DevTools in een nieuw venster wordt aanbevolen):",
|
|
25
24
|
"section_life360_data": "Life360-gegevens",
|
|
26
25
|
"section_location_tracking": "Locatie-tracking",
|
|
27
26
|
"section_places_adapter": "Plaatsen-adapter",
|
|
28
|
-
"sendto_places_adapter_instance": "Plaatsen-adapterinstantie (-1 = uitgeschakeld)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Voer het instancenummer van de Places-adapter in (bijvoorbeeld 0). Stel in op -1 om het doorsturen uit te schakelen.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Regex-filter voor mensen (leeg = alles verzenden)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Reguliere expressie komt overeen met '[Voornaam] [Achternaam]'. Laat leeg om alles te verzenden.",
|
|
32
27
|
"tab_advanced": "Geavanceerd",
|
|
33
28
|
"tab_general": "Leven360",
|
|
34
29
|
"tab_integration": "Integratie",
|
|
35
30
|
"tab_myplaces": "Mijn plaatsen",
|
|
36
31
|
"token1_txt": "Eerste variant:",
|
|
37
32
|
"token2_txt": "Tweede variant:",
|
|
38
|
-
"token_hint": "EU-gebruikers – hoe u uw Bearer-token kunt verkrijgen:\n1. Open https://life360.com/login\n2. Voer uw e-mailadres in → klik op Doorgaan\n3. Voer de eenmalige code in die naar uw e-mail is verzonden\n4. Open browser DevTools (F12) → tabblad Netwerk\n5. Zoek het POST-verzoek met de naam 'token' (niet OPTIONS)\n6. Open het tabblad Preview / Response → kopieer de waarde van 'access_token' en plak deze hieronder\n\nVoer het token in ZONDER het woord 'Bearer' en ZONDER spaties!\n\
|
|
33
|
+
"token_hint": "EU-gebruikers – hoe u uw Bearer-token kunt verkrijgen:\n1. Open https://life360.com/login\n2. Voer uw e-mailadres in → klik op Doorgaan\n3. Voer de eenmalige code in die naar uw e-mail is verzonden\n4. Open browser DevTools (F12) → tabblad Netwerk\n5. Zoek het POST-verzoek met de naam 'token' en/of 'bearer' (niet OPTIONS)\n6. Open het tabblad Preview / Response → kopieer de waarde van 'access_token' en plak deze hieronder\n\nVoer het token in ZONDER het woord 'Bearer' en ZONDER spaties!\n\nHet token is meerdere maanden geldig.",
|
|
39
34
|
"track_location_people": "Schakel locatietracking voor mensen in",
|
|
40
35
|
"txt_one": "... binnenkort meer informatie!"
|
|
41
36
|
}
|
package/admin/i18n/pl.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Token okaziciela",
|
|
9
9
|
"life360_username": "Adres e-mail (opcjonalnie, zastępczy do autoryzacji hasłem)",
|
|
10
10
|
"life360_username_help": "Potrzebne tylko wtedy, gdy chcesz używać logowania opartego na haśle zamiast tokena",
|
|
11
|
-
"location_object_type": "Typ obiektu geolokalizacji",
|
|
12
11
|
"location_unknown_name": "Nazwa zastępcza dla nieznanej lokalizacji",
|
|
13
12
|
"location_unknown_name_help": "Tekst wyświetlany w nazwie lokalizacji, gdy dana osoba przebywa w nieznanym miejscu (np. „w trasie”). Pozostaw puste, aby pozostawić puste.",
|
|
14
13
|
"paypal_donate": "Przekaż darowiznę za pomocą PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Proces Life360 kręgów",
|
|
22
21
|
"process_life360_people": "Życie Procesowe 360 osób",
|
|
23
22
|
"process_life360_places": "Proces Życia360 miejsc",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Zrzuty ekranu przeglądarki DevTools (F12) z podświetloną wartością tokena • (zalecane jest użycie DevTools w nowym oknie):",
|
|
25
24
|
"section_life360_data": "Dane Life360",
|
|
26
25
|
"section_location_tracking": "Śledzenie lokalizacji",
|
|
27
26
|
"section_places_adapter": "Adapter miejsc",
|
|
28
|
-
"sendto_places_adapter_instance": "Instancja adaptera miejsc (-1 = wyłączona)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Wprowadź numer instancji adaptera Places (np. 0). Ustaw na -1, aby wyłączyć przekazywanie.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Filtr Regex dla osób (pusty = wyślij wszystko)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Wyrażenie regularne dopasowane do „[Imię] [Nazwisko]”. Pozostaw puste, aby wysłać wszystko.",
|
|
32
27
|
"tab_advanced": "Zaawansowany",
|
|
33
28
|
"tab_general": "Życie360",
|
|
34
29
|
"tab_integration": "Integracja",
|
|
35
30
|
"tab_myplaces": "Moje miejsca",
|
|
36
31
|
"token1_txt": "Pierwszy wariant:",
|
|
37
32
|
"token2_txt": "Drugi wariant:",
|
|
38
|
-
"token_hint": "Użytkownicy z UE – jak zdobyć token okaziciela:\n1. Otwórz https://life360.com/login\n2. Wpisz swój adres e-mail → kliknij Kontynuuj\n3. Wpisz jednorazowy kod przesłany na Twój adres e-mail\n4. Otwórz przeglądarkę DevTools (F12) → zakładka Sieć\n5. Znajdź żądanie POST o nazwie „token” (nie OPCJE)\n6. Otwórz zakładkę Podgląd / Odpowiedź → skopiuj wartość „access_token” i wklej ją poniżej\n\nWprowadź token BEZ słowa „Nosiciel” i BEZ spacji!\n\
|
|
33
|
+
"token_hint": "Użytkownicy z UE – jak zdobyć token okaziciela:\n1. Otwórz https://life360.com/login\n2. Wpisz swój adres e-mail → kliknij Kontynuuj\n3. Wpisz jednorazowy kod przesłany na Twój adres e-mail\n4. Otwórz przeglądarkę DevTools (F12) → zakładka Sieć\n5. Znajdź żądanie POST o nazwie „token” i/lub „nośnik” (nie OPCJE)\n6. Otwórz zakładkę Podgląd / Odpowiedź → skopiuj wartość „access_token” i wklej ją poniżej\n\nWprowadź token BEZ słowa „Nosiciel” i BEZ spacji!\n\nToken ważny jest kilka miesięcy.",
|
|
39
34
|
"track_location_people": "Włącz śledzenie lokalizacji dla ludzi",
|
|
40
35
|
"txt_one": "...więcej informacji już wkrótce!"
|
|
41
36
|
}
|
package/admin/i18n/pt.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Token do portador",
|
|
9
9
|
"life360_username": "Endereço de e-mail (opcional, substituto para autenticação de senha)",
|
|
10
10
|
"life360_username_help": "Necessário apenas se você quiser usar login baseado em senha em vez de token",
|
|
11
|
-
"location_object_type": "Tipo de objeto de geolocalização",
|
|
12
11
|
"location_unknown_name": "Nome substituto para local desconhecido",
|
|
13
12
|
"location_unknown_name_help": "Texto mostrado em locationName quando a pessoa não está em um local conhecido (por exemplo, 'em passeio'). Deixe em branco para manter em branco.",
|
|
14
13
|
"paypal_donate": "Doe com PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Processar círculos Life360",
|
|
22
21
|
"process_life360_people": "Processo Life360 pessoas",
|
|
23
22
|
"process_life360_places": "Processar Life360 lugares",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Capturas de tela do DevTools do navegador (F12) com o valor do token destacado • (recomenda-se usar o DevTools em uma nova janela):",
|
|
25
24
|
"section_life360_data": "Dados Life360",
|
|
26
25
|
"section_location_tracking": "Rastreamento de localização",
|
|
27
26
|
"section_places_adapter": "Adaptador de lugares",
|
|
28
|
-
"sendto_places_adapter_instance": "Instância do adaptador de locais (-1 = desabilitada)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Insira o número da instância do adaptador Places (por exemplo, 0). Defina como -1 para desabilitar o encaminhamento.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Filtro Regex para pessoas (vazio = enviar todos)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Expressão regular correspondente a '[Nome] [Sobrenome]'. Deixe em branco para enviar todos.",
|
|
32
27
|
"tab_advanced": "Avançado",
|
|
33
28
|
"tab_general": "Vida360",
|
|
34
29
|
"tab_integration": "Integração",
|
|
35
30
|
"tab_myplaces": "Meus lugares",
|
|
36
31
|
"token1_txt": "Primeira variante:",
|
|
37
32
|
"token2_txt": "Segunda variante:",
|
|
38
|
-
"token_hint": "Usuários da UE – como obter seu token ao portador:\n1. Abra https://life360.com/login\n2. Digite seu endereço de e-mail → clique em Continuar\n3. Digite o código único enviado para seu e-mail\n4. Abra o navegador DevTools (F12) → guia Rede\n5. Encontre a solicitação POST chamada 'token' (não OPTIONS)\n6. Abra a guia Visualização/Resposta → copie o valor de 'access_token' e cole-o abaixo\n\nInsira o token SEM a palavra 'Bearer' e SEM espaços!\n\
|
|
33
|
+
"token_hint": "Usuários da UE – como obter seu token ao portador:\n1. Abra https://life360.com/login\n2. Digite seu endereço de e-mail → clique em Continuar\n3. Digite o código único enviado para seu e-mail\n4. Abra o navegador DevTools (F12) → guia Rede\n5. Encontre a solicitação POST chamada 'token' e/ou 'bearer' (não OPTIONS)\n6. Abra a guia Visualização/Resposta → copie o valor de 'access_token' e cole-o abaixo\n\nInsira o token SEM a palavra 'Bearer' e SEM espaços!\n\nO token é válido por vários meses.",
|
|
39
34
|
"track_location_people": "Habilite o rastreamento de localização para pessoas",
|
|
40
|
-
"txt_one": "...
|
|
35
|
+
"txt_one": "...mais informações em breve!"
|
|
41
36
|
}
|
package/admin/i18n/ru.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Токен на предъявителя",
|
|
9
9
|
"life360_username": "Адрес электронной почты (необязательно, резервный вариант для аутентификации по паролю)",
|
|
10
10
|
"life360_username_help": "Требуется только в том случае, если вы хотите использовать вход на основе пароля вместо токена.",
|
|
11
|
-
"location_object_type": "Тип объекта геолокации",
|
|
12
11
|
"location_unknown_name": "Резервное имя для неизвестного местоположения",
|
|
13
12
|
"location_unknown_name_help": "Текст, отображаемый в locationName, когда человек находится в неизвестном месте (например, «в туре»). Оставьте пустым, чтобы оставить пустым.",
|
|
14
13
|
"paypal_donate": "Пожертвовать через PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Процесс Life360 кругов",
|
|
22
21
|
"process_life360_people": "Процесс Life360 человек",
|
|
23
22
|
"process_life360_places": "Процесс Лайф360 мест",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Снимки экрана DevTools браузера (F12) с выделенным значением токена • (рекомендуется использовать DevTools в новом окне):",
|
|
25
24
|
"section_life360_data": "Данные Life360",
|
|
26
25
|
"section_location_tracking": "Отслеживание местоположения",
|
|
27
26
|
"section_places_adapter": "Места-адаптер",
|
|
28
|
-
"sendto_places_adapter_instance": "Экземпляр адаптера мест (-1 = отключено)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Введите номер экземпляра адаптера Places (например, 0). Установите значение -1, чтобы отключить пересылку.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Фильтр регулярных выражений для людей (пусто = отправить все)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Регулярное выражение соответствует «[Имя] [Фамилия]». Оставьте пустым, чтобы отправить все.",
|
|
32
27
|
"tab_advanced": "Передовой",
|
|
33
28
|
"tab_general": "Жизнь360",
|
|
34
29
|
"tab_integration": "Интеграция",
|
|
35
30
|
"tab_myplaces": "Мои места",
|
|
36
31
|
"token1_txt": "Первый вариант:",
|
|
37
32
|
"token2_txt": "Второй вариант:",
|
|
38
|
-
"token_hint": "Пользователи из ЕС – как получить токен на предъявителя:\n1. Откройте https://life360.com/login.\n2. Введите свой адрес электронной почты → нажмите «Продолжить».\n3. Введите одноразовый код, отправленный на вашу электронную почту.\n4. Откройте DevTools браузера (F12) → вкладка «Сеть».\n5. Найдите запрос POST с именем «токен» (не ОПЦИИ).\n6. Откройте вкладку «Предварительный просмотр/Ответ» → скопируйте значение «access_token» и вставьте его ниже.\n\nВведите токен БЕЗ слова «На предъявителя» и БЕЗ пробелов!\n\n
|
|
33
|
+
"token_hint": "Пользователи из ЕС – как получить токен на предъявителя:\n1. Откройте https://life360.com/login.\n2. Введите свой адрес электронной почты → нажмите «Продолжить».\n3. Введите одноразовый код, отправленный на вашу электронную почту.\n4. Откройте DevTools браузера (F12) → вкладка «Сеть».\n5. Найдите запрос POST с именем «токен» и/или «носитель» (не ОПЦИИ).\n6. Откройте вкладку «Предварительный просмотр/Ответ» → скопируйте значение «access_token» и вставьте его ниже.\n\nВведите токен БЕЗ слова «На предъявителя» и БЕЗ пробелов!\n\nТокен действителен в течение нескольких месяцев.",
|
|
39
34
|
"track_location_people": "Включить отслеживание местоположения для людей",
|
|
40
35
|
"txt_one": "... дополнительная информация скоро появится!"
|
|
41
36
|
}
|
package/admin/i18n/uk.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "Токен на пред'явника",
|
|
9
9
|
"life360_username": "Адреса електронної пошти (необов’язково, резервний варіант для авторизації пароля)",
|
|
10
10
|
"life360_username_help": "Потрібен, лише якщо ви хочете використовувати вхід на основі пароля замість маркера",
|
|
11
|
-
"location_object_type": "Тип об'єкта геолокації",
|
|
12
11
|
"location_unknown_name": "Запасна назва для невідомого місця",
|
|
13
12
|
"location_unknown_name_help": "Текст, який відображається в LocationName, коли особа перебуває у невідомому місці (наприклад, «у турі»). Залиште порожнім, щоб залишити порожнім.",
|
|
14
13
|
"paypal_donate": "Пожертвуйте за допомогою PayPal",
|
|
@@ -21,21 +20,17 @@
|
|
|
21
20
|
"process_life360_circles": "Круги Process Life360",
|
|
22
21
|
"process_life360_people": "Процес Life360 людей",
|
|
23
22
|
"process_life360_places": "Процес Life360 місць",
|
|
24
|
-
"screenshot_txt": "
|
|
23
|
+
"screenshot_txt": "Скріншоти веб-переглядача DevTools (F12) із виділеним • значенням маркера (рекомендується використовувати DevTools у новому вікні):",
|
|
25
24
|
"section_life360_data": "Дані Life360",
|
|
26
25
|
"section_location_tracking": "Відстеження місцезнаходження",
|
|
27
26
|
"section_places_adapter": "Місця-адаптер",
|
|
28
|
-
"sendto_places_adapter_instance": "Примірник Places-adapter (-1 = вимкнено)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "Введіть номер екземпляра адаптера Places (наприклад, 0). Встановіть -1, щоб вимкнути пересилання.",
|
|
30
|
-
"sendto_places_adapter_regexp": "Фільтр регулярних виразів для людей (порожній = надіслати всім)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "Регулярний вираз відповідає \"[Ім'я] [Прізвище]\". Залиште пустим, щоб надіслати все.",
|
|
32
27
|
"tab_advanced": "Просунутий",
|
|
33
28
|
"tab_general": "Life360",
|
|
34
29
|
"tab_integration": "Інтеграція",
|
|
35
30
|
"tab_myplaces": "Мої місця",
|
|
36
31
|
"token1_txt": "Перший варіант:",
|
|
37
32
|
"token2_txt": "Другий варіант:",
|
|
38
|
-
"token_hint": "Користувачі ЄС – як отримати токен Bearer:\n1. Відкрийте https://life360.com/login\n2. Введіть адресу електронної пошти → натисніть Продовжити\n3. Введіть одноразовий код, надісланий на вашу електронну пошту\n4. Відкрийте браузер DevTools (F12) → вкладка Мережа\n5. Знайдіть запит POST під назвою
|
|
33
|
+
"token_hint": "Користувачі ЄС – як отримати токен Bearer:\n1. Відкрийте https://life360.com/login\n2. Введіть адресу електронної пошти → натисніть Продовжити\n3. Введіть одноразовий код, надісланий на вашу електронну пошту\n4. Відкрийте браузер DevTools (F12) → вкладка Мережа\n5. Знайдіть запит POST під назвою «token» та/або «bearer» (не OPTIONS)\n6. Відкрийте вкладку Preview / Response → скопіюйте значення 'access_token' і вставте його нижче\n\nВведіть жетон БЕЗ слова «Пред'явник» і БЕЗ пробілів!\n\nТокен діє протягом кількох місяців.",
|
|
39
34
|
"track_location_people": "Увімкніть відстеження місцезнаходження людей",
|
|
40
35
|
"txt_one": "... більше інформації буде незабаром!"
|
|
41
36
|
}
|
package/admin/i18n/zh-cn.json
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"life360_token": "不记名令牌",
|
|
9
9
|
"life360_username": "电子邮件地址(可选,密码验证的后备)",
|
|
10
10
|
"life360_username_help": "仅当您想使用基于密码的登录而不是令牌时才需要",
|
|
11
|
-
"location_object_type": "地理位置对象类型",
|
|
12
11
|
"location_unknown_name": "未知位置的后备名称",
|
|
13
12
|
"location_unknown_name_help": "当此人不在已知地点(例如“在旅行中”)时,位置名称中显示的文本。留空以保持空白。",
|
|
14
13
|
"paypal_donate": "通过 PayPal 捐赠",
|
|
@@ -25,17 +24,13 @@
|
|
|
25
24
|
"section_life360_data": "Life360数据",
|
|
26
25
|
"section_location_tracking": "位置追踪",
|
|
27
26
|
"section_places_adapter": "地方适配器",
|
|
28
|
-
"sendto_places_adapter_instance": "Places-adapter 实例(-1 = 禁用)",
|
|
29
|
-
"sendto_places_adapter_instance_help": "输入 Places-adapter 的实例编号(例如 0)。设置为 -1 以禁用转发。",
|
|
30
|
-
"sendto_places_adapter_regexp": "人员的正则表达式过滤器(空=发送全部)",
|
|
31
|
-
"sendto_places_adapter_regexp_help": "正则表达式与“[名字] [姓氏]”匹配。留空即可发送全部。",
|
|
32
27
|
"tab_advanced": "先进的",
|
|
33
28
|
"tab_general": "生活360",
|
|
34
29
|
"tab_integration": "一体化",
|
|
35
30
|
"tab_myplaces": "我的地点",
|
|
36
31
|
"token1_txt": "第一个变体:",
|
|
37
32
|
"token2_txt": "第二种变体:",
|
|
38
|
-
"token_hint": "欧盟用户 – 如何获取您的不记名代币:\n1.打开https://life360.com/login\n2. 输入您的电子邮件地址 → 单击继续\n3. 输入发送到您的电子邮件的一次性代码\n4. 打开浏览器 DevTools (F12) → Network 选项卡\n5
|
|
33
|
+
"token_hint": "欧盟用户 – 如何获取您的不记名代币:\n1.打开https://life360.com/login\n2. 输入您的电子邮件地址 → 单击继续\n3. 输入发送到您的电子邮件的一次性代码\n4. 打开浏览器 DevTools (F12) → Network 选项卡\n5. 找到名为“token”和/或“bearer”的 POST 请求(不是 OPTIONS)\n6. 打开预览/响应选项卡 → 复制“access_token”的值并将其粘贴到下面\n\n输入令牌时不要包含“Bearer”一词,也不要包含空格!\n\n该令牌的有效期为几个月。",
|
|
39
34
|
"track_location_people": "启用人员位置跟踪",
|
|
40
|
-
"txt_one": "
|
|
35
|
+
"txt_one": "...更多信息即将推出!"
|
|
41
36
|
}
|
package/admin/jsonConfig.json
CHANGED
|
@@ -176,34 +176,6 @@
|
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
178
|
},
|
|
179
|
-
"_placesAdapter": {
|
|
180
|
-
"type": "panel",
|
|
181
|
-
"label": "section_places_adapter",
|
|
182
|
-
"xs": 12,
|
|
183
|
-
"items": {
|
|
184
|
-
"sendto_places_adapter_instance": {
|
|
185
|
-
"type": "number",
|
|
186
|
-
"label": "sendto_places_adapter_instance",
|
|
187
|
-
"help": "sendto_places_adapter_instance_help",
|
|
188
|
-
"min": -1,
|
|
189
|
-
"xs": 12,
|
|
190
|
-
"sm": 6,
|
|
191
|
-
"md": 6,
|
|
192
|
-
"lg": 6,
|
|
193
|
-
"xl": 6
|
|
194
|
-
},
|
|
195
|
-
"sendto_places_adapter_regexp": {
|
|
196
|
-
"type": "text",
|
|
197
|
-
"label": "sendto_places_adapter_regexp",
|
|
198
|
-
"help": "sendto_places_adapter_regexp_help",
|
|
199
|
-
"xs": 12,
|
|
200
|
-
"sm": 12,
|
|
201
|
-
"md": 6,
|
|
202
|
-
"lg": 6,
|
|
203
|
-
"xl": 6
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
179
|
"_locationTracking": {
|
|
208
180
|
"type": "panel",
|
|
209
181
|
"label": "section_location_tracking",
|
|
@@ -216,42 +188,10 @@
|
|
|
216
188
|
"sm": 6,
|
|
217
189
|
"md": 6,
|
|
218
190
|
"lg": 6,
|
|
219
|
-
"xl": 6
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
"label": "location_object_type",
|
|
224
|
-
"options": [
|
|
225
|
-
{
|
|
226
|
-
"label": "LonLat tuple",
|
|
227
|
-
"value": "LonLatTuple"
|
|
228
|
-
},
|
|
229
|
-
{
|
|
230
|
-
"label": "LatLon object",
|
|
231
|
-
"value": "LatLon"
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
"label": "LatLng object",
|
|
235
|
-
"value": "LatLng"
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
"label": "LatitudeLongitude object",
|
|
239
|
-
"value": "LatitudeLongitude"
|
|
240
|
-
},
|
|
241
|
-
{
|
|
242
|
-
"label": "Latitude,Longitude (comma)",
|
|
243
|
-
"value": "CUSTOM_LatCommaLon"
|
|
244
|
-
},
|
|
245
|
-
{
|
|
246
|
-
"label": "Latitude;Longitude (semicolon)",
|
|
247
|
-
"value": "CUSTOM_LatSemicolonLon"
|
|
248
|
-
}
|
|
249
|
-
],
|
|
250
|
-
"xs": 12,
|
|
251
|
-
"sm": 6,
|
|
252
|
-
"md": 6,
|
|
253
|
-
"lg": 6,
|
|
254
|
-
"xl": 6
|
|
191
|
+
"xl": 6,
|
|
192
|
+
"style": {
|
|
193
|
+
"marginTop": "20px"
|
|
194
|
+
}
|
|
255
195
|
},
|
|
256
196
|
"location_unknown_name": {
|
|
257
197
|
"type": "text",
|