# Standort und Geräte

Mit Standort- und URL-Funktionen arbeiten deine Skripte mit Standortwerten und URLs.

In diesem Kapitel lernst du, wie du:

* Standortwerte erstellst.
* Aktionen an das Gerät übergibst.
* URL-Teile sicher kodierst und dekodierst.

<table><thead><tr><th width="197.16015625">Funktion (A-Z)</th><th>Aufgabe</th></tr></thead><tbody><tr><td><code>latitude()</code></td><td>Gibt den Breitengrad aus einem Standortwert zurück</td></tr><tr><td><code>location()</code></td><td>Gibt einen Standortwert aus Titel und Koordinaten zurück</td></tr><tr><td><code>longitude()</code></td><td>Gibt den Längengrad aus einem Standortwert zurück</td></tr><tr><td><code>openURL()</code></td><td>Öffnet einen Website-, Karten- oder App-Link</td></tr><tr><td><code>phone()</code></td><td>Gibt einen Telefonwert mit Anrufaktion zurück</td></tr><tr><td><code>url()</code></td><td>Gibt einen Linkwert aus Text oder Query-Daten zurück</td></tr><tr><td><code>urlDecode()</code></td><td>Dekodiert URL-kodierten Text</td></tr><tr><td><code>urlEncode()</code></td><td>Kodiert Text für die sichere Nutzung in URLs</td></tr></tbody></table>

## Mit Standortwerten arbeiten

Nutze diese Funktionen, wenn du mit einem Standortwert arbeiten oder Koordinaten an einen anderen Dienst übergeben willst.

### Mit einem Standortwert arbeiten

Nutze `location()`, wenn du einen Standortwert aus Titel, Breitengrad und Längengrad erstellen willst.

Nutze es, wenn du:

* Koordinaten in einem Standortfeld speichern willst.
* einen Titel und Koordinaten in einem Wert zusammenhalten willst.
* einen Standortwert an ein anderes Feld oder eine andere Funktion übergeben willst.

`location(string, number, number)`

* `string`: der Titel für den Standort
* erstes `number`: der Breitengrad
* zweites `number`: der Längengrad

`location()` gibt einen Standortwert zurück.

Tipps:

* Nutze einen klaren Titel, damit Nutzer den gespeicherten Standort leicht erkennen.

#### Schauen wir uns einige Beispiele an:

```ninox
address := location("Ninox Office", 52.5235175, 13.3989201)
```

Speichert den Standort mit den angegebenen Koordinaten im Standortfeld `address`.

## Links öffnen und Geräteaktionen starten

Nutze diese Funktionen, wenn ein Skript Arbeit an das Gerät, den Browser oder eine andere App übergeben soll.

### Einen URL-Wert zurückgeben

Nutze `url()`, wenn du eine URL als Datenwert brauchst, statt sie sofort zu öffnen.

Nutze es, wenn du:

* einen Link in einem Feld oder einer Variable speichern willst.
* einen erzeugten Link in einem späteren Skriptschritt wiederverwenden willst.
* eine URL an eine andere Funktion übergeben willst.
* URL-kodierte Query-Werte aus einem JSON-Objekt hinzufügen willst.

`url(any)`\
`url(any, JSON)`

* `any`: der Wert, den du in einen Link umwandeln willst
* `JSON`: optionale Query-Werte, die URL-kodiert angehängt werden

`url()` gibt einen Linkwert zurück.

#### Schauen wir uns einige Beispiele an:

```ninox
url("https://ninox.com")
```

Zeigt die Ninox Website als Linkwert mit einer Internet-Schaltfläche an.

```ninox
url("https://ninox.com", {Name: "Max Mustermann"})
```

Gibt `https://ninox.com?Name=Max%20Mustermann` zurück.

Tipps:

* Ninox prüft nicht, ob der übergebene Wert eine gültige URL ist.
* Nutze das JSON-Argument, wenn du Query-Werte sicher anhängen willst.
* Nutze `url()`, wenn du den Link als Wert brauchst.
* Nutze `openURL()`, wenn du den Link sofort öffnen willst.

## URL-Teile kodieren und dekodieren

Nutze diese Funktionen, wenn Text sicher innerhalb einer URL übertragen werden soll.

### Text kodieren

Nutze `urlEncode()`, um Text in eine URL-sichere Form umzuwandeln.

Nutze es, wenn du:

* Nutzereingaben in einen Query-String setzen willst.
* sichere Such- oder API-URLs bauen willst.
* defekte Links durch Leerzeichen oder Sonderzeichen vermeiden willst.
* normalen Text in URL-konformen Text umwandeln willst.

`urlEncode(string)`

* `string`: der Text, den du für die sichere Nutzung in einer URL kodieren willst

`urlEncode()` gibt einen String zurück.

#### Schauen wir uns einige Beispiele an:

```ninox
urlEncode("hello world")
```

Gibt `hello%20world` zurück.

```ninox
"https://ninox.com?Name=" + urlEncode("Jane Doe")
```

Gibt `https://ninox.com?Name=Jane%20Doe` zurück.

Tipps:

* Kodiere dynamische Werte, nicht die komplette URL-Struktur.
* Das ist besonders nützlich für Suchbegriffe und API-Parameter.

### Text dekodieren

Nutze `urlDecode()`, um URL-kodierten Text wieder in normalen Text umzuwandeln.

Nutze es, wenn du:

* kodierte Query-Werte lesen willst.
* gespeicherte URL-Teile als Klartext anzeigen willst.
* eine frühere Kodierung rückgängig machen willst.
* URL-konformen Text in lesbaren Text umwandeln willst.

`urlDecode(string)`

* `string`: der kodierte URL-Text, den du dekodieren willst

`urlDecode()` gibt einen String zurück.

#### Schauen wir uns einige Beispiele an:

```ninox
urlDecode("hello%20world")
```

Gibt `hello world` zurück.

```ninox
urlDecode("https://ninox.com?Name=Jane%20Doe")
```

Gibt `https://ninox.com?Name=Jane Doe` zurück.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ninox.com/ninox-scripting/de/automate-your-workflows/work-with-functions/location-and-devices.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
