查看原文
其他

AI开发者大会中的公开课摘要解读——如何在DuerOS技能中实现用户支付购买

谈新运 & 老曹 喔家ArchiSelf 2021-08-09

在百度2019AI开发者大会上有很多相对精彩的公开课,DuerOS相关的公开课有4场,分别是:

  • DuerOS技能开发与CFC编程

  • 如何在DuerOS技能中实现用户支付购买

  • 面向多方式交互模型的DPL应用

  • 故事引擎在DuerOS技能开发中的应用

本文主要解读一下谈老师分享的"如何在DuerOS技能中实现用户支付购买"。

购买、支付、计费、对账是一个生态系统的基础环境,对于对话式AI系统而言,DuerOS 一直致力于打造一个健康的生态环境。


从一个创意到一个DuerOS的技能实现,从赚钱到数钱(谈钱不伤感情),需要几步呢?

整个流程需要三个环节,创建技能,开发实现后,即可获取收入。


目前基于DuerOS的设备主要有两大类:有屏音箱和无屏音箱。无屏音箱没有屏幕,人机交互主要通过语音以及App伴侣完成,主要有小度音箱,pro,1s,大金刚等;有屏音箱带有触摸屏,人机交互除了可以使用语音以及伴侣App之外,还可以直接在屏幕上展现更多内容,同时可以响应用户的点击事件。


与手机App上的计费方式类似, DuerOS 主要支持两种用户付费方式:

付费技能的特点是,DuerOS负责付费相关全部流程,技能本身不直接参与付费相关流程,只需要关注自身的业务逻辑即可,开发成本很低。付费技能相比,技能内付费需要和DuerOS有密切的的交互,来实现完整的付费流程。


谈老师给出了部分付费方式的技能实例:


当了解DuerOS设备和付费类型之后,就可以根据自己的需求,选择合适的设置来创建技能。


技能创建完成后,即可开始开发。

付费技能甚至可以不需要编程,比如创建小技能,无须进行任何编程,只需填入话术,上传照片和视频即可开发各种丰富有趣的语音技能,目前有话术类,音频类,视频类,图片类的模板,付费技能——彩虹情话就是小技能。


付费技能的交互模型如下:

可以看到,付费技能是感知不到付费相关流程的,从而降低了付费接入的成本。


从开发者角度来看,付费技能不参与付费流程;从用户角度看,如何实现付费技能的购买和使用呢?


在各种类型的DuerOS设备上均可完成技能服务的购买——

  • 有屏音箱的query,和launchpad

  • 无屏音箱的query

  • 音箱app上的技能商店

谈老师以知识三国技能为例展示了在各种设备上的购买形态。

然后,展示了演示技能——百度侠客行。


对于技能内付费而言, 商业模式与appstore上的应用内购买类似。


目前的DuerOS平台支持两种技能内付费的指令

Charge指令需要开发者自行管理商品:

  • 购买流程中涉及商品展现的相关提示都为标准化配置,技能不能自行配置;

  • DuerOS仅负责完成指令中指定金额的收款,并通知技能付款完成;

  • 技能负责下单以及维护用户购买状态。


Buy指令是DuerOS新提供的指令

  • 开发者预先在DuerOS中注册商品:

  • 可以自定义购买流程中涉及商品展现的相关提示;

  • DuerOS负责根据商品信息完成下单,收款,并通知技能付款完成;

  • 开发者可以直接调用DuerOS提供的API,获得商品列表以及用户的购买状态,降低了开发的成本。

本次的公开课上主要讲解了Buy指令的应用,技能内付费的交互模型与付费技能有着较大的差异。

技能内付费的开发流程增加了商品管理的过程——

商品的属性主要包括商品品类和购买的类型。

以百度侠客行为例,看一下“屠龙刀”商品对于的数据结构——


对用户需要付费的商品需要上传到DuerOS 平台,在具体使用的时候再通过DuerOS平台查询商品的状态。目前仅提供API方式,后续会在网站控制台里集成商品管理系统。

技能在运行时,可以调用本API完成各种类型商品的列表查询,同时获得当前用户的购买状态,也可以用来实现列表输出展现/判断用户是否购买过某个商品。



完成了商品管理之后,就可以进行技能开发了,开发流程主要分为4步:

  1. 定义技能所需要的各种意图,尤其是付费相关的意图;

  2. 在触发付费逻辑时,技能返回购买指令;

  3. 处理用户付款完成的通知事件,为用户发放相关权益;

  4. 在用户使用付费物品/资源时,对用户进行鉴权。

以百度侠客行为例,定义了三种意图:单选择,购买物品和使用物品。

基于PHP的示例代码如下:

定义好意图之后,用户主动/被动触发购买逻辑时,技能返回Buy指令;DuerOS收到Buy指令后,为用户展示付款界面。Buy指令非常精简,只需要传DuerOS的商品id和技能自定义的token。

在用户扫码付款后,屏幕上自动切换到新的结果页了,这是如何实现的呢?

这里其实分为了两个部分:二维码页面的自动轮询,成功后自动关闭;技能返回结果,DuerOS推送到设备上。

需要注意,事件可能为成功,也可能为失败,如何做容错处理呢?

由于该商品需要付费后才能使用,因此要对用户的使用权限进行验证。


至此,示例代码完成,建议使用有屏音箱或者无屏音箱和App伴侣,在真机进行测试。

如果验证没有问题,就可以申请上线了。 在上线完成后, 如果有用户使用了该技能,并进行了技能内付费,开发者就可以获取收入了。

DuerOS网站提供了专门的财务中心管理页。在收入详情里,我们可以看到如下数据:

  • 每天的购买次数和付款总金额;

  • 每个付费技能/技能内付费的购买次数和金额;

  • 所有订单的详情记录;

在满足了提现规则后,可以申请提现,目前的到账是月结


至此,可以回顾一下在DuerOS技能中实现用户支付购买的三个步骤。


以上是DuerOS技能开发和CFC编程公开课的内容概要,详细信息和完整PPT 可以关注 dueros.baidu.com/dbp 官网和DuerOS 开发者公众号以及各种开发者社群。


关联阅读:


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存