A nyelvgenerálási kódtárból injektált függvények
A KÖVETKEZŐKRE VONATKOZIK: SDK v4
Az alábbi cikk bemutatja, hogyan szúrhat be függvényeket a Language Generation (LG) kódtárból.
ActivityAttachment
activityAttachment
Objektumból és típusból létrehozott értéket ad vissza.
ActivityAttachment(<collection-of-objects>)
Parameter | Szükséges | Type | Description |
---|---|---|---|
<Tartalom> | Igen | object | A melléklet adatait tartalmazó objektum |
<type> | Igen | sztring | A melléklet típusát képviselő sztring |
Visszaadott érték | Type | Description |
---|---|---|
<activityAttachment> | object | A activityAttachment bemenetekből formázott |
Példa
Ez a példa objektumgyűjteményt konvertál egy activityAttachment
.
Tegyük fel, hogy a következő sablonnal rendelkezik:
# externalHeroCardActivity(type, title, value)
[Activity
attachments = ${ActivityAttachment(json(fromFile('.\\herocard.json')), 'herocard')}
]
és a következők herocard.json
:
{
"title": "titleContent",
"text": "textContent",
"Buttons": [
{
"type": "imBack",
"Title": "titleContent",
"Value": "textContent",
"Text": "textContent"
}
],
"tap": {
"type": "${type}",
"title": "${title}",
"text": "${title}",
"value": "${value}"
}
}
Függvényként való hívással externalHeroCardActivity()
:
externalHeroCardActivity('signin', 'Signin Button', 'http://login.microsoft.com')
A következőt herocard
adja vissza:
{
"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
Értékelje ki az objektum egyszerű szövegét, és adja vissza a kibontott szöveges adatokat.
expandText(<object>)
Parameter | Szükséges | Type | Description |
---|---|---|---|
<Objektum> | Igen | object | A kibontandó szöveggel rendelkező objektum. |
Visszaadott érték | Type | Description |
---|---|---|
<kiértékelt eredmény> | object | A kibontott szöveges adatok. |
Example
Ez a példa kiértékeli az egyszerű szöveget egy JSON-objektumban, és visszaadja a kibontott szöveg eredményét.
Tegyük fel, hogy a következő objektummal rendelkezik:
{
"@answer": "hello ${user.name}",
"user": {
"name": "vivian"
}
}
A hívás expandText(@answer)
a hello vivian objektumot eredményezi.
sablon
Adja vissza a megadott sablonnév és -hatókör kiértékelt eredményét.
template(<templateName>, '<param1>', '<param2>', ...)
Parameter | Szükséges | Type | Description |
---|---|---|---|
<templateName> | Igen | sztring | A sablon nevét jelképező sztring |
<param1,param2><>, ... | Igen | Object | A sablonnak átadott paraméterek |
Visszaadott érték | Type | Description |
---|---|---|
<kiértékelt eredmény> | object | A sablonból függvényként kiértékelt eredmény |
Example
Ez a példa kiértékeli a sablon függvényként való meghívásának eredményét.
Tegyük fel, hogy a következő sablonnal rendelkezik:
# welcome(userName)
- Hi ${userName}
- Hello ${userName}
- Hey ${userName}
A hívás template("welcome", "DL")
az alábbiak egyikét eredményezi:
- Hi DL
- Hello DL
- Hey DL
fromFile
A kifejezés kiértékelt eredményét adja vissza az adott fájlban.
fromFile(<filePath>)
Parameter | Szükséges | Type | Description |
---|---|---|---|
<filePath> | Igen | sztring | egy fájl relatív vagy abszolút elérési útja kifejezéseket tartalmaz |
Visszaadott érték | Type | Description |
---|---|---|
<Eredmény> | sztring | A kiértékelt eredmény sztringreprezentációja |
Example
Ez a példa kiértékeli az adott fájl eredményét.
Tegyük fel, hogy van egy nevű /home/user/test.txt
fájlja. A fájlon belül a következők találhatók:
`you have ${add(1,2)} alarms`
fromFile('/home/user/test.txt')
A fromFile()
függvény kiértékeli a kifejezést, és az eredmény lecseréli az eredeti kifejezést.
A hívás fromFile('/home/user/test.txt')
eredménye a 3 riasztással rendelkező sztring.
isTemplate
Adja meg, hogy egy adott sablonnév szerepel-e a kiértékelőben.
isTemplate(<templateName>)
Parameter | Szükséges | Type | Description |
---|---|---|---|
<templateName> | Igen | Sztring | Ellenőrizni kívánt sablonnév |
Visszaadott érték | Type | Description |
---|---|---|
<Eredmény> | Boolean | Azt jelzi, hogy a megadott sablonnév szerepel-e az értékelőben |
Example
Ez a példa a isTemplate()
függvény használatával ellenőrzi, hogy egy adott sablonnév szerepel-e az értékelőben. Íme például három sablon:
# welcome
- hi
# show-alarms
- 7:am and 8:pm
# add-to-do
- you add a task at 7:pm
A hívás isTemplate("welcome")
kiértékelése a következő lesz true
: . A hívás isTemplate("delete-to-do")
kiértékelése a következő lesz false
: .