如何使用变量修饰语

使用Sen开云体育手机网页版登录入口官网dPulse,您可以为聊天机器人使用修饰符变量根据您设置的规则转换它们的值。例如,您可以格式化文本、日期、电话号码和url。

让我们来谈谈变量修饰符以及如何在聊天机器人中使用它们。

修饰符的语法

可以使用{{var_name | .使用实例函数(参数=“价值”)}},地点:

  • var_name是变量名;
  • 函数()是修饰函数;
  • 参数是函数参数;
  • 价值是参数值。

可以在日期、字母大小写、字符串长度、电话号码和url中使用修饰符语法。

字符串修饰符

str_to_lower () 将所有字符转换为小写字母。

例如:变量title = " title ."

{{title | str_to_lower()}}

结果:标题。

str_to_upper () 将所有字符转换为大写。

例如,title变量= "标题."

{{title | str_to_upper()}}

结果:标题。

str_capitalize () 将所有字符转换为字符串,并将其第一个字符大写。

例如,title变量= "标题."

{{title | str_capitalize()}}

结果:标题。

str_length () 返回字符串的长度。

例如:title = "标题".

{{title | str_length()}}

结果:5。

str_limit(限制= " 100 ",结束=“…”) 将字符串截断为指定的长度。
  • 限制是一个可选参数,用于定义字符串的最大长度(默认长度为100个字符)。
  • 结束是一个可选参数,用于传递带分隔符的字符串结尾的字符(默认值是"…")。

    您可以将邮件中的字符数限制为1000个,以确保准确地发送邮件。要做到这一点,请输入{{info | str_limit(limit="1000")}}

内爆(分隔符= " ") 使用字符串组合数组的元素分隔符
  • 分隔符可选参数,默认为空字符串。
例如,{{$["list"] | implode(separator=", ")}}显示由外部数据请求获得的数组中以逗号分隔的数据。
array_get(关键= " * .keyname”) 使用点表示法从嵌套数组或对象中检索值,这是一种访问对象属性和数组值的方法。一个点()和星号()显示为数组切片和元素号。它可以是这样的:数组。* .object.id

例如,如果需要从数组中获取名称,可以使用{{$(“用户”)| array_get(关键= " * . name ") |内爆(“\ n”)}}要逐行输出对象数组中的名称字段。

编号及日期

number_round(精度= " 0 ",模式=“ROUND_HALF_UP”) 将数字舍入为指定的值精度(小数点后的位数)。

精度可以为负或零(默认为0)。

如果精度是正的,数字四舍五入到指定的精度小数点后的数字。

如果精度为负数,则该数字四舍五入到小数点前的指定精度(四舍五入到最接近的10的幂)。例如,如果你精度等于-1,数字四舍五入到十,如果你的精度等于-2,这个数字四舍五入到几百。

有关舍入模式的可能值的更多信息,请参见PHP文档

Number_format (decimals="0", decimal_separator=".", thousands_separator=",") 用分组的千位和十进制数字格式化数字。
  • 小数设置小数位数。如果为0,返回值中将省略decimal_separator。
  • decimal_separator设置十进制分隔符。
  • thousands_separator设置千位分隔符。

    例如,为了使较大的数字更容易阅读,您可以用逗号分隔千位。要做到这一点,请输入number_format (thousands_separator = "、")

日期(from_format = " d.m.。Y”格式= " d.m.。Y”,修改= " ") 根据给定格式格式化日期字符串。
  • from_format可选参数,指定要从中转换日期数据的格式。(默认值:d.m.Y”)。
  • 格式是一个可选参数,指定要转换日期数据的格式(默认为'd.m.Y”)。
  • 修改是修改日期本身的可选参数,例如,"+1 day"将在原始日期的基础上增加一天。

只支持以下修饰符:+/ day(s)、+/-month(s)、+/ year(s)。

阅读更多关于日期修饰符的内容PHP文档

例如,如果您想以“月份和日期的名称”格式获取日期,您可以使用{{signup_date | date(format="F jS")}}

结果:1月5日。

date_time (from_format = " d.m.。Y H:i", format="d.m. "Y H:i", modify="")

属性返回一个值date_time类型。

  • from_format是一个可选参数,用于指定要转换日期数据的格式(默认为'd.m.Y H:i')。
  • 格式是一个可选参数,指定日期和时间数据以何种格式显示(默认:'d.m.Y H:i')。
  • 修改是可选参数,用于更改日期本身,例如,+ 1小时将在开始日期和时间后增加一小时。

支持修饰符:+ /分钟(s)+ /小时(s)(s) + /天+ /月(s)(s) + /年

其他修饰符

电话(formig-fix-handle_api_exceptionat =“国际”) 根据给定格式格式化带有电话号码的字符串。
  • 格式是一个可选参数,用于指定要将电话号码转换为的格式(默认格式为国际).

可能的格式选项有:

  • 国际(+380 61 33 3333)
  • 全国(061 333 3333)
  • E164 (+ 380613333333)
  • RFC3966(电话:+ 380-61-333-333)
urlencode () 返回一个字符串,其中除连字符外的所有非字母数字字符(-),下划线(_)和点()必须用百分号()后面跟着两个十六进制数和加号编码的空格(+).字符串的编码与web表单POST数据相同,即应用程序/ x-www-form-urlencoded内容类型。

修饰符可用于将从订阅者接收到的值传递到API请求,例如,作为get参数。

使用特点

让我们讨论一下在使用变量修饰符和组合修饰符的方法时可能出现的错误。

您可以将修饰符应用到流或活动中的“Message”元素以及您可以插入和使用变量的所有其他元素。您可以使用“User Variable Input”函数或对“API Request”元素的响应来获取变量。

当调用修饰符函数,且它不接受参数时,“()”方括号可以省略。

类型的变量名}}而且|符号,那他们就得逃跑\} \}而且\|在名字上。

参数值包含}}|而且符号,他们必须逃脱\} \}\|而且\”.参数值总是以字符串的形式在""中给出。

可能的错误

如果修饰符不能处理变量,那么它将以与应用修饰符之前相同的形式返回变量。例如,如果我们应用{{name|phone(format="INTERNATIONAL")}}如果修改了name变量= "John",我们将得到"John"作为答案,因为变量不是电话号码。

如果修饰符不能应用于变量,那么用户将不会看到错误。

只有在修饰符语法有问题时才会显示错误,而不会显示从用户接收到的数据有问题。

结合修饰符

你可以组合几个修饰语,例如:

{{variable_name | modifier_name1 (parameter_name1 =“价值”,parameter_name2 =“价值”,parameter_name3 =“价值”)| modifier_name2 () | modifier_name_N ()}}

如果你想将你的可变字符串长度截断到10个字符,然后将所有的字符串字符转换为大写字母,这个表达式看起来像这样:

{{String | str_limit(limit="10") | str_to_upper}}

在聊天机器人生成器中使用修饰符

我们将向您展示如何在SendPulse的聊天机器人构建器中使用修饰符的几个示例。开云体育手机网页版登录入口官网

用户名格式示例

想想你的流的场景.在我们的例子中,我们将收集访客的反馈,所以我们想先知道客人的名字,然后给他们一个分享印象的机会。

进入你的流程或者创建它,添加"消息元素,然后输入您要求订阅者分享其个人数据的文本。启用“等待用户响应”选项。在“Validate as”字段中,选择“String”并选择一个变量。

点击应用并添加下一个Message元素。

订阅者可能会错误地用小写字母输入他们的名称,但我们希望正确地称呼他们,因此我们使用str_title ()变量修饰符。

这是订阅者的样子。

日期格式示例

设想一个场景,访问者想要为特定的日期预订一张桌子。同时,客户在选择日期后应该收到预约确认。

添加“Message”元素,并在要求订阅者共享其个人数据的文本中输入。启用“等待订阅者的响应”选项。在“验证为”字段中,选择“日期”并选择一个变量。

点击应用并添加下一个Message元素。

我们希望预订日期始终以相同的格式显示,因此添加{{order_date | date(format="d.m.Y")}}变量修饰符。

这是用户在选择日期时将收到的响应。

创建到谷歌日历的链接

如果你想为用户提供日程安排日历上的一个事件,您可以使用按钮或快速回复添加可用的时间段,或者您可以在“Message”元素中提示自己的日期和时间。

将结果值存储在“Date and time”类型的变量中。

现在来看看谷歌日历中创建会议的链接,将字符串添加到您的消息:

https://www.google.com/calendar/render?action=TEMPLATE&text={{title|urlencode()}}&dates={{booked_datetime|date_time(format="YmdTHi00", modify="-2 hours")}}Z%2F{{booked_datetime|date_time(format="YmdTHi00", modify="-1 hours")}}Z&ctz=欧洲%2FKyiv

在哪里标题是来自聊天机器人受众的变量,用于表示会议名称。

booked_datetime是用于选定的会议开始日期和时间的变量。

Ymd是没有空格的年、月、日。

T是静态日期和时间分隔符。

是没有空格的小时和分钟。

00是静态设置的秒。

第一个日期和时间是根据时区调整的会议开始时间(基辅时间为-2小时)。第二个日期是它的结束时间,一个小时后。

Z是UTC时区的日期指示器。

欧洲% 2 fkyiv ctz =是日历生成事件时间所在时区的指针。

假设用户指定日期和时间:“28.02.2023 11:00”。

聊天机器人会生成一个这样的链接:

https://www.google.com/calendar/render?action=TEMPLATE&text=%D0%9F%D1%80%D0%B5%D0%B7%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F+%C2%ABUnidragon%C2%BB&dates=20230228T090000WITH%2F20230228T100000Z&ctz=Europe%2FKyiv

该链接作为消息的一部分出现在对话框中。

点击链接后,用户会在日历中收到一个现成的会议模板。

    为这篇文章“如何使用变量修饰语”打分

    试着为Facebook Messenger免费创建一个聊天机器人

    -->
    Baidu
    map