Hoppa till innehåll

Variabler och funktioner i MFD-uttryck

Senast uppdaterad: 2026-09-25

Det här avsnittet beskriver de variabler och funktioner som stöds i Drömlik Message Flow Designer. Variabler och funktioner kan refereras i uttrycksstödda komponenter (till exempel Condition) för att dynamiskt hämta data och styra meddelandeflödets logik.

Variabler

Det finns två typer av variabler i Message Flow Designer:

  • Sessionsvariabler — lagrar information om den aktuella meddelandesessionen. Dessa är globalt tillgängliga genom hela flödet och beror inte på någon specifik komponent.
  • Komponentvariabler — innehåller värden som returneras av specifika komponenter. De blir tillgängliga när motsvarande komponent har lagts till i flödet.

Sessionsvariabler

VariabelTypBeskrivningExempel
$Session.contactNumberStringKundens nummer."15812340987"
$Session.channelNumberStringMeddelandekanalens nummer."LC00113"
$Session.contactNameStringKontaktens fullständiga namn som matchar kundens nummer."Leo Bell"
$Session.contactFirstNameStringKontaktens förnamn."Leo"
$Session.contactLastNameStringKontaktens efternamn."Bell"

Komponentvariabler

Menu-komponent

VariabelTypBeskrivningExempel
$Menu{index}.receivedMessageStringDet meddelande kunden skickar som svar på menyn."1"

Wait for Reply-komponent

VariabelTypBeskrivningExempel
$WaitForReply{index}.receivedMessageStringDet meddelande kunden svarar med."Överför till agent."

Get Extension Presence Status-komponent

VariabelTypBeskrivningExempel
$GetExtensionStatus{index}.currentProfileNameStringNamn på anknytningens aktuella närvarostatus."Available"
$GetExtensionStatus{index}.currentProfileStringNamn och tilläggsinformation om närvarostatus."Available,work"
$GetExtensionStatus{index}.isUnavailableBooleanOav anknytningen är oregistrerad.False

Get Extension Info-komponent

VariabelTypBeskrivningExempel
$GetExtensionInfo{index}.numberStringAnknytningsnummer."1001"
$GetExtensionInfo{index}.nameStringAnknytningsnamn."Phillip Huff"
$GetExtensionInfo{index}.emailStringAnknytningens e-postadress."phillip@sample.com"
$GetExtensionInfo{index}.mobileNumberStringAnknytningens mobilnummer."15880123456"

Get Company Contact Info-komponent

VariabelTypBeskrivningExempel
$GetCompanyContactInfo{index}.contactNameStringKontaktnamn."Leo Poll"
$GetCompanyContactInfo{index}.companyStringFöretagsnamn."YS"
$GetCompanyContactInfo{index}.emailStringE-postadress."leo@ys.com"
$GetCompanyContactInfo{index}.phonebookListStringTelefonbok/böcker som kontakten tillhör."All"
$GetCompanyContactInfo{index}.remarkStringAnteckning om kontakten."remark"
$GetCompanyContactInfo{index}.businessStringArbetsnummer."01082345678"
$GetCompanyContactInfo{index}.mobileStringMobilnummer."13800001234"
$GetCompanyContactInfo{index}.homeStringHemnummer."01087654321"

Database Access-komponent

VariabelTypBeskrivningExempel
$DatabaseAccess{index}.queryResultObjectTabellen som returneras av en SQL-fråga. Använd GET_TABLE_ROW_COUNT och GET_TABLE_CELL_VALUE för att hämta data."demo@example.com"
$DatabaseAccess{index}.nonQueryResultIntegerAntal rader som påverkas av en SQL-sats som inte är en fråga.99
$DatabaseAccess{index}.scalarResultStringDet enskilda värde som returneras av en skalär SQL-fråga."10"

HTTP Request-komponent

VariabelTypBeskrivningExempel
$HttpRequest{index}.responseContentStringBrödtexten som returneras i HTTP-svaret.{"authenticated": true}
$HttpRequest{index}.responseStatusCodeStringHTTP-statuskoden som returneras från anropet."200"

Funktioner

Funktioner används för villkorsutvärdering och databearbetning, vilket ger flexibel kontroll av meddelandeflödet.

Booleska funktioner

FunktionSyntaxBeskrivning
FX_ANDFX_AND(villkor1, villkor2, ...)Returnerar True endast om alla villkor är uppfyllda.
FX_ORFX_OR(villkor1, villkor2, ...)Returnerar True om något villkor är uppfyllt.
FX_NOTFX_NOT(villkor)Returnerar motsatsen till det booleska resultatet.
FX_EQUALFX_EQUAL(värde1, värde2)Returnerar True om två värden är lika (värde och typ).
FX_NOT_EQUALFX_NOT_EQUAL(värde1, värde2)Returnerar True om två värden inte är lika.
FX_CONTAINSFX_CONTAINS(värde1, värde2)Returnerar True om första strängen innehåller den andra.
FX_GREATER_THANFX_GREATER_THAN(värde1, värde2)Returnerar True om första värdet är större än det andra.
FX_GREATER_THAN_OR_EQUALFX_GREATER_THAN_OR_EQUAL(värde1, värde2)Returnerar True om första värdet är större än eller lika med det andra.
FX_LESS_THANFX_LESS_THAN(värde1, värde2)Returnerar True om första värdet är mindre än det andra.
FX_LESS_THAN_OR_EQUALFX_LESS_THAN_OR_EQUAL(värde1, värde2)Returnerar True om första värdet är mindre än eller lika med det andra.
FX_TO_BOOLEANFX_TO_BOOLEAN(värde)Konverterar ett värde till Boolean. Returnerar False för "0", "False" eller null.

Strängfunktioner

FunktionSyntaxBeskrivning
FX_CONCATENATEFX_CONCATENATE(sträng1, sträng2, ...)Slår ihop alla strängparametrar och returnerar resultatet.
FX_TRIMFX_TRIM(värde)Tar bort inledande och avslutande blanksteg.
FX_LEFTFX_LEFT(text, antal)Extraherar ett angivet antal tecken från början.
FX_MIDFX_MID(text, startposition, längd)Extraherar en delsträng från en angiven position med angiven längd.
FX_RIGHTFX_RIGHT(text, antal)Extraherar ett angivet antal tecken från slutet.
FX_UPPERFX_UPPER(text)Konverterar alla tecken till versaler.
FX_LOWERFX_LOWER(text)Konverterar alla tecken till gemener.
FX_REPLACEFX_REPLACE(text, mål, ersättning)Ersätter en angiven delsträng med en annan.
FX_REPLACE_REG_EXPFX_REPLACE_REG_EXP(text, uttryck, ersättning)Ersätter delsträngar som matchar ett reguljärt uttryck.

Heltals- och konverteringsfunktioner

FunktionSyntaxBeskrivning
FX_TO_INTEGERFX_TO_INTEGER(värde)Konverterar ett värde till ett 32-bitars heltal.
FX_TO_LONGFX_TO_LONG(värde)Konverterar ett värde till ett 64-bitars heltal.
FX_GET_TABLE_ROW_COUNTFX_GET_TABLE_ROW_COUNT(tabell)Returnerar antalet rader i ett tabellresultat.
FX_GET_LIST_ITEM_COUNTFX_GET_LIST_ITEM_COUNT(lista)Returnerar antalet objekt i en lista.
FX_JSON_GET_INTEGERFX_JSON_GET_INTEGER(JSON-objekt, nyckel)Hämtar ett heltalsvärde från ett JSON-objekt utifrån nyckel.

Objektfunktioner

FunktionSyntaxBeskrivning
FX_GET_TABLE_CELL_VALUEFX_GET_TABLE_CELL_VALUE(tabell, rad, kolumn)Hämtar värdet från en tabellcell på angiven rad och kolumn.
FX_GET_LIST_ITEMFX_GET_LIST_ITEM(lista, index)Hämtar värdet från en lista på angivet index.
FX_GET_JSON_ARRAY_ITEMFX_GET_JSON_ARRAY_ITEM(jsonData, arrayKey, index, fieldName)Hämtar ett värde från ett objekt på angivet index i en JSON-array.
FX_JSON_GET_OBJECTFX_JSON_GET_OBJECT(JSON-objekt, nyckel)Hämtar ett nästlat JSON-objekt från ett överordnat JSON-objekt utifrån nyckel.

Exempel

FX_AND — kontrollera flera villkor

FX_AND(FX_EQUAL($Menu1.receivedMessage, "1"), FX_EQUAL($Session.contactNumber, "15812340987"))

Returnerar True endast när kunden svarade "1" på menyn och deras nummer är "15812340987".

FX_CONTAINS — kontrollera företagsnamn

FX_CONTAINS($GetCompanyContactInfo1.company, "Drömlik")

Returnerar True om företagsnamnet innehåller "Drömlik".

FX_REPLACE — ta bort landskod

FX_REPLACE("+8613800138000", "+86", "")

Tar bort landskoden +86 och returnerar "13800138000".

Nästa steg