zef-dev/convoworks-pckg-forms

包含Convoworks框架中管理表单的会话工作流程元素。

1.0.1 2022-12-27 20:00 UTC

This package is auto-updated.

Last update: 2024-09-27 23:41:12 UTC


README

本包包含Convoworks框架中管理表单条目场景的会话工作流程元素。它包含您可以在会话工作流程中使用的元素,但表单数据源仅通过IFormsContext接口进行描述。

当我们谈论工作流程组件(元素)时,我们主要需要考虑语音和会话设计需求。它们的属性、子流程和一般行为都经过定制,以便使会话工作流程尽可能容易。它们与任何特定的表单插件或类似的第三方服务提供商无关。

表单上下文另一方面是工作流程元素(Convoworks)与您在系统中使用的实际、具体的表单插件之间的桥梁。

表单包优先使用字段键而不是数字ID。当您创建或更新条目时,请使用字段键来定义数据。当您加载数据时,它们将包含一个meta_values字段,它是一个包含字段键/字段值对的关联数组。

表单上下文接口

IFormsContext描述了目标表单系统应实现的方法。如果您例如有WordPress Formidable Forms插件,您可以通过实现此接口轻松启用它与Convoworks一起使用。

为了正确地在Convoworks GUI中使用,它还必须实现IBasicServiceComponentIServiceContext。您可以考虑从以下方式开始您的实现

class MyCustomFormsContext extends AbstractBasicComponent implements IFormsContext, IServiceContext

{


}

您可以在Convoworks文档中了解更多关于开发自定义包的信息,您还可以检查我们的Convoworks WP插件包模板

DummyFormContext

一个虚拟实现,可以用来测试语音应用程序或作为创建自己的IFormsContext实现时的示例。

以下是它具有的一些预定义功能

  • 它将在Convoworks用户范围内存储条目
  • 必填字段(用于错误处理)

工作流程元素

所有表单包工作流程元素都具有context_id属性,它们将其连接到实现IFormsContext接口的上下文。这样,元素集中在会话工作流程需求上,而实际的业务逻辑则委托给具体的实现。

以下是所有常见参数

  • context_id - 引用的表单上下文(实现IFormsContext的上下文组件)的ID
  • result_var - 包含结果的变量。对于每个元素都不同,所以将在下面描述。

某些元素根据我们得到的结果具有多个子流程。这种方法的这种类型允许您在您的流程中使用更少的IF语句。但为了不强迫您拆分流程,其中一些流程是可选的,当留空时,将执行默认流程。

CreateEntryElement

此元素将创建一个条目并返回新创建的entry_id。

参数

  • entry - 要写入的条目数据(一个键值对)
  • result_var - 默认status,包含附加信息的变量的名称。如果条目已创建(entry_id:新创建的条目ID),如果失败(message:字符串消息,errors:详细错误的数组)

流程

  • ok - 当条目可以创建时执行
  • validation_error - 当条目有验证错误时执行

UpdateEntryElement

用于更新现有条目数据的元素。

参数

  • entry_id - 现有条目的ID
  • entry - 将覆盖之前数据的条目数据(键值对)
  • result_var - 默认 status,包含额外信息的变量名称。如果条目更新(previous:更新前的条目数据,updated:更新后的条目),如果失败(message:字符串消息,errors:详细错误数组)

流程

  • ok - 当条目更新时执行
  • validation_error - 当条目有验证错误时执行

DeleteEntryElement

此元素将删除现有条目。

参数

  • entry_id - 现有条目的ID
  • result_var - 默认 status,包含额外信息的变量名称(previous:与加载条目元素获得的先前表单条目相同)

流程

  • ok - 当条目被删除时执行

LoadEntryElement

此元素将根据ID加载现有条目。

参数

  • entry_id - 现有条目的ID
  • result_var - 默认 status,包含额外信息的变量名称(entry

流程

  • ok - 当条目加载时执行

单个条目以JSON表示。

{
        "entry_id" : "123",
        "user_id" : "123",
        "meta_values" : {
            "key_1" : "value 1",
            "key_2" : "value 2"
        }
    }

SearchEntryElement

此元素通过给定的搜索参数搜索条目。

参数

  • search - 搜索过滤器。由引用的表单上下文定义。
  • offset - 偏移量
  • limit - 限制
  • order_by - 字段名(由表单上下文实现定义)和排序顺序(ASC|DESC)的键/值对
  • result_var - 默认 status,包含额外信息的变量名称(result:条目值数组)

流程

  • ok - 当表单加载时执行
  • not found - 如果没有找到条目将执行

有关更多信息,请访问 convoworks.com