Funktioner som matas in från språkgenereringsbiblioteket
GÄLLER FÖR: SDK v4
I följande artikel beskrivs hur du matar in funktioner från biblioteket Språkgenerering (LG).
Aktivitetsbilaga
Returnera en activityAttachment
konstruktion från ett objekt och en typ.
ActivityAttachment(<collection-of-objects>)
Parameter | Obligatoriskt | Type | Beskrivning |
---|---|---|---|
<Innehåll> | Ja | objekt | Objekt som innehåller information om den bifogade filen |
<typ> | Ja | sträng | En sträng som representerar typen av bifogad fil |
Returvärde | Typ | Description |
---|---|---|
<activityAttachment> | objekt | En activityAttachment som bildas från indata |
Exempel:
I det här exemplet konverteras en samling objekt till en activityAttachment
.
Anta att du har följande mall:
# externalHeroCardActivity(type, title, value)
[Activity
attachments = ${ActivityAttachment(json(fromFile('.\\herocard.json')), 'herocard')}
]
och följande herocard.json
:
{
"title": "titleContent",
"text": "textContent",
"Buttons": [
{
"type": "imBack",
"Title": "titleContent",
"Value": "textContent",
"Text": "textContent"
}
],
"tap": {
"type": "${type}",
"title": "${title}",
"text": "${title}",
"value": "${value}"
}
}
Genom att anropa externalHeroCardActivity()
som en funktion:
externalHeroCardActivity('signin', 'Signin Button', 'http://login.microsoft.com')
Den returnerar en herocard
:
{
"lgType" = "attachment",
"contenttype" = "herocard",
"content" = {
"title": "titleContent",
"text": "textContent",
"Buttons": [
{
"type": "imBack",
"Title": "titleContent",
"Value": "textContent",
"Text": "textContent"
}
],
"tap": {
"type": "signin",
"title": "Signin Button",
"text": "Signin Button",
"value": "http://login.microsoft.com"
}
}
}
expandText
Utvärdera oformaterad text i ett objekt och returnera expanderade textdata.
expandText(<object>)
Parameter | Obligatoriskt | Type | Description |
---|---|---|---|
<Objekt> | Ja | objekt | Objektet med text som ska expanderas. |
Returvärde | Typ | Description |
---|---|---|
<evaluated-result> | objekt | De expanderade textdata. |
Exempel
Det här exemplet utvärderar oformaterad text i ett JSON-objekt och returnerar det expanderade textresultatet.
Anta att du har följande objekt:
{
"@answer": "hello ${user.name}",
"user": {
"name": "vivian"
}
}
Anrop expandText(@answer)
resulterar i objektet hello vivian.
mall
Returnera det utvärderade resultatet av det angivna mallnamnet och omfånget.
template(<templateName>, '<param1>', '<param2>', ...)
Parameter | Obligatoriskt | Type | Description |
---|---|---|---|
<templateName> | Ja | sträng | En sträng som representerar mallnamnet |
<param1,param2><>, ... | Ja | Objekt | Parametrarna som skickas till mallen |
Returvärde | Typ | Description |
---|---|---|
<evaluated-result> | objekt | Resultatet utvärderas från mallen som en funktion |
Exempel
I det här exemplet utvärderas resultatet av att anropa mallen som en funktion.
Anta att du har följande mall:
# welcome(userName)
- Hi ${userName}
- Hello ${userName}
- Hey ${userName}
Anrop template("welcome", "DL")
resulterar i något av följande:
- Hej DL
- Hej DL
- Hej DL
fromFile
Returnera det utvärderade resultatet av uttrycket i den angivna filen.
fromFile(<filePath>)
Parameter | Obligatoriskt | Type | Description |
---|---|---|---|
<Filepath> | Ja | sträng | relativ eller absolut sökväg för en fil innehåller uttryck |
Returvärde | Typ | Description |
---|---|---|
<Resultatet> | sträng | Strängrepresentationen av det utvärderade resultatet |
Exempel
Det här exemplet utvärderar resultatet från den angivna filen.
Anta att du har en fil med namnet /home/user/test.txt
. I filen finns följande:
`you have ${add(1,2)} alarms`
fromFile('/home/user/test.txt')
Funktionen fromFile()
utvärderar uttrycket och resultatet ersätter det ursprungliga uttrycket.
Att anropa fromFile('/home/user/test.txt')
resulterar i strängen du har 3 larm.
isTemplate
Returnera om ett angivet mallnamn ingår i utvärderaren.
isTemplate(<templateName>)
Parameter | Obligatoriskt | Type | Description |
---|---|---|---|
<templateName> | Ja | String | Ett mallnamn att kontrollera |
Returvärde | Typ | Description |
---|---|---|
<Resultatet> | Booleskt | Om det angivna mallnamnet ingår i utvärderaren |
Exempel
I det isTemplate()
här exemplet används funktionen för att kontrollera om ett angivet mallnamn finns i utvärderaren. Här är till exempel tre mallar:
# welcome
- hi
# show-alarms
- 7:am and 8:pm
# add-to-do
- you add a task at 7:pm
Anropet isTemplate("welcome")
utvärderas till true
. Anropet isTemplate("delete-to-do")
utvärderas till false
.