Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt de indeling van de JSON-bestandsindeling van de actiedefinitie voor app-acties in Windows beschreven. Dit bestand moet worden opgenomen in uw project met de buildactie ingesteld op 'Inhoud' en Kopiëren naar uitvoermap ingesteld op 'Kopiëren als nieuwer'. Geef het pakket-relatieve pad op naar het JSON-bestand in het XML-bestand van het pakketmanifest. Zie de XML-indeling voor het pakketmanifest van de Action Provider voor meer informatie.
JSON-voorbeeldactiedefinitiebestand
"version": 3,
"actions": [
{
"id": "Contoso.SampleGreeting",
"description": "Send greeting with Contoso",
"icon": "ms-resource//...",
"displaysUI": false,
"usesGenerativeAI": false,
"isAvailable": false,
"allowedAppInvokers": ["*"],
"inputs": [
{
"name": "UserFriendlyName",
"kind": "Text"
},
{
"name": "PetName",
"kind": "Text",
"required": false
}
],
"inputCombinations": [
{
"inputs": ["UserFriendlyName"],
"description": "Greet ${UserFriendlyName.Text}"
},
{
"inputs": ["UserFriendlyName", "PetName"],
"description": "Greet ${UserFriendlyName.Text} and their pet ${PetName.Text}"
}
],
"contentAgeRating": "child",
"invocation":
{
{
"type": "Uri",
"uri": "contoso://greetUser?userName=${UserFriendlyName.Text}&petName=${PetName.Text}",
},
"where": [
"${UserFriendlyName.Length > 3}"
]
}
},
{
"id": "Contoso.SampleGetText",
"description": "Summarize file with Contoso",
"icon": "ms-resource://...",
"inputs": [
{
"name": "FileToSummarize",
"kind": "File"
}
],
"inputCombinations": [
{
"inputs": ["FileToSummarize"],
"description": "Summarize ${FileToSummarize.Path}"
},
],
"outputs": [
{
"name": "Summary",
"kind": "Text"
}
],
"contentAgeRating": "child",
"invocation": {
"type": "COM",
"clsid": "{...}"
}
}
]
}
JSON-eigenschappen van de actiedefinitie
In de onderstaande tabellen worden de eigenschappen van het JSON-bestand met de actiedefinitie beschreven.
Het veld Versie geeft de schemaversie aan waarin de eigenschap is geïntroduceerd.
Het veld PWA geeft ondersteuning aan voor actieproviders die zijn geïmplementeerd als een Progressive Web App (PWA). Zie App-acties inschakelen op Windows voor een PWA voor meer informatie over app-acties met PWA's.
Hoofdmap van document
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie |
|---|---|---|---|---|
| Versie | touw | Schemaversie. Wanneer er nieuwe functionaliteit is toegevoegd, wordt de versie met één verhoogd. | Ja. | 2 |
| Acties | Actie[] | Hiermee definieert u de acties die door de app worden geleverd. | Ja. | 2 |
Handeling
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| identiteitskaart | touw | Actie-id. Moet uniek zijn per app-pakket. Deze waarde kan niet worden gelokaliseerd. | Ja | 2 | Ja |
| beschrijving | touw | Beschrijving bedoeld voor de gebruiker voor deze actie. Deze waarde kan worden gelokaliseerd. | Ja | 2 | Ja |
| ikoontje | touw | Lokaliseerbaar pictogram voor de actie. Deze waarde is een ms-resource-tekenreeks voor een pictogram dat is geïmplementeerd met de app. | Nee. | 2 | Ja |
| allowedAppInvokers | Snaar[] | Hiermee geeft u een lijst met toepassingsgebruikersmodel-id's (AppUserModelIDs) op waarmee de actie kan worden gedetecteerd via een aanroep naar GetActionsForInputs of GetAllActions. Jokertekens worden ondersteund. *komt overeen met alle AppUserModelIDs. Dit wordt aanbevolen voor de meeste acties, tenzij er een specifieke reden is om de bellers te beperken die een actie kunnen aanroepen. Als allowedAppInvokers wordt weggelaten of een lege lijst is, kunnen er geen apps de actie detecteren. Zie Model-id's van toepassingsgebruikers voor meer informatie over AppUserModelIDs. | Nee. | 3 | Ja |
| displaysUI | Booleaan | Hiermee geeft u op of de actie de gebruikersinterface kan weergeven. De standaardwaarde is waar. | Nee. | 2 | Ja |
| gebruiktGeneratieveAI | Booleaan | Hiermee geeft u op of de actie gebruikmaakt van generatieve AI. De standaardwaarde is onwaar. | Nee. | 2 | Ja |
| isBeschikbaar | Booleaan | Hiermee geeft u op of de actie beschikbaar is voor gebruik bij de installatie. De standaardwaarde is waar. | Ja | 2 | Ja |
| Ingangen | Invoer[] | Lijst met entiteiten die als invoer door deze actie worden geaccepteerd. | Ja | 2 | Ja |
| invoercombinaties | InputCombinatie[] | Bevat beschrijvingen voor verschillende combinaties van invoer. | Ja | 2 | Ja |
| Uitgangen | Uitvoer[] | Indien opgegeven, moet het in de huidige release een lege tekenreeks zijn. | Nee. | 2 | Ja |
| aanroep | Aanroep | Bevat informatie over hoe de actie wordt aangeroepen. | Ja | 2 | Ja |
| leeftijdsclassificatie van de inhoud | touw | Een veldnaam van de UserAgeConsentGroup waarmee de juiste leeftijdsclassificatie voor de actie wordt opgegeven. De toegestane waarden zijn 'Child', 'Minor', 'Adult'. Als er geen waarde is opgegeven, heeft het standaardgedrag toegang tot alle leeftijden. | Nee. | 2 | Ja |
Uitvoer
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| naam | touw | De naam van de variabele van de entiteit. Deze waarde kan niet worden gelokaliseerd. | Ja | 2 | Ja |
| vriendelijk | touw | Een veldnaam uit de opsomming ActionEntityKind waarmee het entiteitstype wordt opgegeven. Deze waarde kan niet worden gelokaliseerd. De toegestane waarden zijn 'None', 'Document', 'File', 'Photo', 'Text', 'StreamingText', 'RemoteFile', 'Table', 'Contact'. | Ja | 2 | Ja |
De schemaversie en PWA-ondersteuning variëren voor de verschillende waarden van de soort eigenschap. Zie de vermelding voor elk entiteitstype voor meer informatie.
Invoervariant
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| Ingangen | Snaar[] | Een lijst met invoernamen voor een actieaanroep. De lijst is mogelijk leeg. | Ja | 2 | Ja |
| beschrijving | touw | Beschrijving voor de aanroep van de actie. Deze waarde kan worden gelokaliseerd. | Nee. | 2 | Ja |
| waar | Snaar[] | Een of meer voorwaardelijke instructies die bepalen onder welke voorwaarden de actie van toepassing is. | Nee. | 2 | Ja |
Aanroep
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| soort | touw | Het instantietype voor de actie. De toegestane waarden zijn 'URI' en 'com'. | Ja | 2 | Alleen 'URI'. |
| URI | touw | De absolute URI voor het starten van de actie. Het gebruik van entiteiten kan in de tekenreeks worden opgenomen. Een speciale gereserveerde queryreeksparameter token=${$.Token} kan worden toegevoegd aan de URI om acties toe te staan om te valideren dat deze zijn aangeroepen door de Action Runtime. Zie voor meer informatie Gebruik de $.Token URI-querystringparameter. |
Ja, voor geïnstantieerde URI-acties. | 2 | Ja |
| clsid | touw | De klasse-id voor de COM-klasse die IActionProvider implementeert. | Ja, voor COM-acties. | 2 | Nee. |
| invoergegevens | JSON-naam-/waardeparen | Een lijst met naam-/waardeparen die aanvullende gegevens voor URI-acties opgeven. | Nee. Alleen geldig voor URI-acties. | 2 | Ja |
Opsomming van ActionEntityKind
De opsomming ActionEntityKind geeft de typen entiteiten op die worden ondersteund door App Actions in Windows. In de context van een JSON-actiedefinitie zijn de entiteitstypen letterlijke tekenreeksen die hoofdlettergevoelig zijn.
| Tekenreeks voor entiteitstype | Beschrijving | Versie | PWA |
|---|---|---|---|
| "Bestand" | Bevat alle bestandstypen die niet worden ondersteund door entiteitstypen voor foto's of documenten. | 2 | Alleen invoer. |
| Foto | Afbeeldingsbestandstypen. Ondersteunde bestandsextensies voor afbeeldingsbestanden zijn '.jpg', '.jpeg' en '.png' | 2 | Alleen invoer. |
| Het document | Documentbestandstypen. Ondersteunde documentbestandsextensies zijn '.doc', '.docx', '.pdf', '.txt' | 2 | Alleen invoer. |
| "Tekst" | Ondersteunt tekenreeksen van tekst. | 2 | Alleen invoer. |
| StreamingText | Ondersteunt incrementeel gestreamde tekenreeksen van tekst. | 2 | Onwaar |
| RemoteFile | Ondersteunt metagegevens om acties in te schakelen voor het valideren en ophalen van back-upbestanden van een cloudservice. | 2 | Alleen invoer. |
| Tabel | Een 2D-tabel met tekenreekswaarden die wordt geserialiseerd naar een 1 dimensionale matrix met tekenreeksen. | 3 | Nee. |
| "Contactpersoon" | Een set gegevens die een contactpersoon vertegenwoordigen. | 3 | Alleen invoer. |
Entiteitseigenschappen
Elk entiteitstype ondersteunt een of meer eigenschappen die instantiegegevens voor de entiteit bieden. De namen van entiteitseigenschappen zijn hoofdlettergevoelig.
In het volgende voorbeeld ziet u hoe naar entiteiten wordt verwezen in de querytekenreeks voor acties die worden gestart via URI-activering:
...?param1=${entityName.property1}¶m2=${entityName.property2}
Zie Where-componenten voor informatie over het gebruik van entiteitseigenschappen voor het maken van voorwaardelijke secties in de JSON-actiedefinitie.
Eigenschappen van bestandsentiteit
| Vastgoed | Typologie | Beschrijving | Versie | PWA |
|---|---|---|---|---|
| "FileName" | touw | De naam van het bestand. | 2 | Alleen invoer. |
| "Pad" | touw | Het pad van het bestand. | 2 | Alleen invoer. |
| "Extensie" | touw | De extensie van het bestand. | 2 | Alleen invoer. |
Eigenschappen van documententiteiten
De entiteit Document ondersteunt dezelfde eigenschappen als Bestand.
Eigenschappen van foto-entiteit
De entiteit Photo ondersteunt naast de volgende eigenschappen alle eigenschappen van Bestand .
| Vastgoed | Typologie | Beschrijving | Versie | PWA |
|---|---|---|---|---|
| IsTijdelijkPad | Booleaan | Een waarde die aangeeft of de foto is opgeslagen in een tijdelijk pad. Deze eigenschap is bijvoorbeeld waar voor foto's die zijn opgeslagen in het geheugen van een bitmap, niet permanent opgeslagen in een bestand. | 2 | Alleen invoer. |
Eigenschappen van tekstentiteit
| Vastgoed | Typologie | Beschrijving | Versie | PWA |
|---|---|---|---|---|
| "Tekst" | touw | De volledige tekst. | 2 | Alleen invoer. |
| KorteTekst | touw | Een verkorte versie van de tekst, geschikt voor weergave van de gebruikersinterface. | 2 | Alleen invoer. |
| "Titel" | touw | De titel van de tekst. | 2 | Alleen invoer. |
| "Beschrijving" | touw | Een beschrijving van de tekst. | 2 | Alleen invoer. |
| "Lengte" | dubbel | De lengte van de tekst in tekens. | 2 | Alleen invoer. |
| Woordental | dubbel | Het aantal woorden in de tekst. | 2 | Alleen invoer. |
Eigenschappen van StreamingText-entiteit
| Vastgoed | Typologie | Beschrijving | Versie | PWA |
|---|---|---|---|---|
| "TextFormat" | touw | De indeling van de streamingtekst. Ondersteunde waarden zijn "Platte tekst", "Markdown". | 2 | Nee. |
Eigenschappen van remoteFile-entiteit
| Vastgoed | Typologie | Beschrijving | Versie | PWA |
|---|---|---|---|---|
| "AccountId" | touw | De id van het cloudserviceaccount dat is gekoppeld aan het externe bestand. | 2 | Alleen invoer. |
| Inhoudstype | touw | Het MIME-type van het externe bestand. | 2 | Alleen invoer. |
| "DriveId" | touw | De identificator voor het externe station dat gekoppeld is aan het externe bestand. | 2 | Alleen invoer. |
| "Extensie" | touw | De extensie van het externe bestand. | 2 | Alleen invoer. |
| "FileId" | touw | De identificator van het externe bestand. | 2 | Alleen invoer. |
| "FileKind" | RemoteFileKind | Het externe bestandstype. | 2 | Alleen invoer. |
| "SourceId" | touw | De id van de cloudservice die als host fungeert voor het externe bestand. | 2 | Alleen invoer. |
| "SourceUri" | touw | De URI van het externe bestand. | 2 | Alleen invoer. |
Enumeratie RemoteFileKind
Met de opsomming RemoteFileKind worden de typen bestanden opgegeven die worden ondersteund voor de entiteit RemoteFile .
| Tekenreeks voor entiteitstype | Beschrijving | Versie |
|---|---|---|
| "Bestand" | Bevat alle bestandstypen die niet worden ondersteund door entiteitstypen voor foto's of documenten. | 2 |
| Foto | Afbeeldingsbestandstypen. Ondersteunde bestandsextensies voor afbeeldingsbestanden zijn '.jpg', '.jpeg' en '.png' | 2 |
| Het document | Documentbestandstypen. Ondersteunde documentbestandsextensies zijn '.doc', '.docx', '.pdf', '.txt' | 2 |
Eigenschappen van tabelentiteit
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| "RowCount" | integer | Het aantal rijen in de tabel. | Ja | 3 | Nee. |
| KolomAantal | integer | Het aantal kolommen in de tabel. | Ja | 3 | Nee. |
| "Titel" | touw | De titel van de tabel. | Nee. | 3 | Nee. |
| "Beschrijving" | touw | De beschrijving van de tabel. | Nee. | 3 | Nee. |
Eigenschappen van contactpersoonentiteit
| Vastgoed | Typologie | Beschrijving | Verplicht | Versie | PWA |
|---|---|---|---|---|---|
| "E-mail" | touw | Het e-mailadres van de contactpersoon. | Nee. | 3 | Alleen invoer. |
| "FullName" | integer | De volledige naam van de contactpersoon. | Nee. | 3 | Alleen invoer. |
| "Titel" | touw | De titel van de contactpersoon. | Nee. | 3 | Alleen invoer. |
| "Beschrijving" | touw | De beschrijving van de contactpersoon. | Nee. | 3 | Alleen invoer. |
Where-clausules
De JSON-indeling van de actiedefinitie ondersteunt waar componenten kunnen worden gebruikt voor het implementeren van voorwaardelijke logica, zoals het opgeven dat een actie alleen moet worden aangeroepen wanneer een entiteitseigenschap een opgegeven waarde heeft.
De volgende operators kunnen worden gebruikt met where-componenten .
| Operateur | Beschrijving |
|---|---|
| == | Gelijkheid |
| ~= | Hoofdletterongevoelige gelijkheid |
| != | Ongelijkheid |
| < | Kleiner dan |
| <= | Kleiner dan of gelijk aan |
| > | Groter dan |
| >= | Groter dan of gelijk aan |
| || | Logische OR |
| && | Logische AND |
Waar clausules gebruiken de volgende indeling:
"where": [
"${<property_accessor>} <operator> <value>"
]
In het volgende voorbeeld ziet u een where-clausule die waar evalueert als een bestand de bestandsextensie ".txt" heeft.
"where": [
"${File.Extension} ~= \".txt\""
]
Meerdere where-componenten kunnen worden gecombineerd met behulp van de logische EN- en logische OR-operators.
"where": [
"${File.Extension} ~= \".txt\" || ${File.Extension} ~= \".md\""
]