SiriShortCut模型建立及数据交互逻辑
1、模型数据需求
意图:
- 手机号
- 密码
- 网关ID
- 打开该情景的命令
- 情景号
- 情景名
- 情景背景图
- 添加该意图时的 token值
主程序登陆共享数据
- 手机号
- token值
2、操作逻辑
1、意图被唤起
- 获取当前意图中的手机 与 主机登陆的手机号 是否一致
- 一致:
- 当前主机登陆中的token值是否有效
- 有效:
- 获取主机登陆中的token值
- 在意图中 获取打开该情景的命令
- 发送命令
- 根据意图手机号获取一个意图持久化数据模型,判断该模型是否存在
- 存在:
- 更新该token 值到该模型
- 不存在:
- 保存该token 值到该模型
- 存在:
- 无效:
- 获取意图中的手机号
- 登陆密码
- 登陆获取到token值
- 将token 值返回到主程序登陆共享数据
- 准备好该token值
- 在意图中 获取打开该情景的命令
- 发送命令
- 根据意图手机号获取一个意图持久化数据模型,判断该模型是否存在
- 存在:
- 更新该token 值到该模型
- 不存在:
- 保存该token 值到该模型
- 存在:
- 有效:
- 当前主机登陆中的token值是否有效
- 不一致:
- 根据意图手机号获取一个意图持久化数据模型,判断该模型是否存在
- 存在:
- 获取该模型中的 token值
- 在意图中 获取打开该情景的命令
- 发送命令
- 不存在
- 获取意图中的手机号
- 登陆密码
- 登陆获取到token值
- 准备好该token值
- 在意图中 获取打开该情景的命令
- 发送命令
- 根据意图手机号获取一个意图持久化数据模型,判断该模型是否存在
- 存在:
- 更新该token 值到该模型
- 不存在:
- 保存该token 值到该模型
- 存在:
- 存在:
- 根据意图手机号获取一个意图持久化数据模型,判断该模型是否存在
- 一致:
- 获取当前意图中的手机 与 主机登陆的手机号 是否一致
2.2 主程序登陆
- 登陆后获取到token值
- 新建一个共享数据模型,模型中的属性有:
- 当前登陆手机号
- token值
SiriShortCut模型建立及数据交互逻辑的更多相关文章
- laravel模型建立和数据迁移和数据填充(数据填充没有成功)未完
开始创建我们的第一个 Article 模型及其对应迁移文件了,我们在项目根目录运行如下 Artisan 命令一步到位: php artisan make:model Article -m -m 是 - ...
- easy-table-vue+VueJs、SpringBoot+Mybatis实现MVVM模型前后台数据交互
该项目分为前端展示部分和后台服务部分. 前端部分 使用的技术是:NodeJs.Webpack.VueJs 使用的组件库是:IVIEW.easy-table-vue 使用的开发工具是:WebStorm ...
- spring-boot json数据交互
SpringBoot学习之Json数据交互 最近在弄监控主机项目,对javaweb又再努力学习.实际的项目场景中,前后分离几乎是所以项目的标配,全栈的时代的逐渐远去,后端负责业务逻辑处理,前端负责数据 ...
- html5-websocket实现基于远程方法调用的数据交互
html5-websocket实现基于远程方法调用的数据交互 一般在传统网页中注册用户信息都是通过post或ajax提交到页面处理,到了HTML5后我们有另一种方法就是通过websocket进行数 ...
- 基于Xen实现一种domain0和domainU的应用层数据交互高效机制
项目里有一个需求,domain0的应用层需要定时给domainU(hvm windows)的应用层传递一块数据,原来的方案是在domainU的应用层架设一个http服务器,监听在某个端口,然后需要塞数 ...
- ajax数据交互
目录 一.ORM查询优化 1-1. only与defer 1-2. select_related与prefatch_related 二.MTV与MVC模型 三.choices参数 四.AJAX 4-1 ...
- SpringMVC框架笔记02_参数绑定返回值文件上传异常处理器JSON数据交互_拦截器
目录 第1章 高级参数的绑定 1.1 参数的分类 1.2 数组类型的参数的绑定 1.3 集合类型的参数的绑定 第2章 @RequestMapping的用法 2.1 URL路径映射 2.2 请求方法限定 ...
- 对GraphQL-BFF:微服务背景下的前后端数据交互方案的研究-------引用
随着多终端.多平台.多业务形态.多技术选型等各方面的发展,前后端的数据交互,日益复杂. 同一份数据,可能以多种不同的形态和结构,在多种场景下被消费. 在理想情况下,这些复杂性可以全部由后端承担.前端只 ...
- springmvc-高级参数绑定-映射-异常-json数据交互-拦截器
1.1. 高级参数绑定 1.1.1. 复制工程 把昨天的springmvc-web工程复制一份,作为今天开发的工程 复制工程,如下图: 粘贴并修改工程名为web2,如下图: 工程右键点击,如下图: 修 ...
随机推荐
- 简单 JS 弹出层 背景变暗
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 【原创】ubuntu14.04 LTS系统VMware虚拟机内Windows server 2008 r2系统的网络配置
主系统:ubuntu14.04 LTS 虚拟机:VMware 内系统:Windows server 2008 r2 主系统IP:任何IP 内系统IP:192.168.202.128(自动获取,如果不是 ...
- itemize,enumerate,description 用法【LaTeX 使用】
itemize和enumerate还有description 是LaTeX里列举的三种样式,分别讲一些使用技巧.itemize(意为分条目):\begin{itemize}\item[*] a\ite ...
- angular与avalon对复杂对象的修改
angular的实现 <!doctype html> <html ng-app> <head> <script src="http://files. ...
- SQL语句 表字段的操作 添加,删除,修改表的字段
alter table 表名 drop constraint 约束名字 //删除字段的原有约束 alter table 表名 add constraint 约束名字 DEFAULT 默认值 for ...
- java定时任务实现的几种方式(Timer、Spring Task、Quartz)
Timer JDK自带的Timer类,允许调度一个TimerTask任务. Demo: /** * Timer测试类 */ public class TimerDemo { public static ...
- SpringMVC Controller 介绍(详细深刻)
一.简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Mo ...
- 10-编译PHP并与nginx整合
nginx的URL重写.nginx+PHP的配置也是不可不学的部分.PHP自己手动编译,mysql就自己yum了. yum install 安装mysql 同时进行php的编译,手动编译php 这么多 ...
- libevent源码深度剖析二
libevent源码深度剖析二 ——Reactor模式 张亮 前面讲到,整个libevent本身就是一个Reactor,因此本节将专门对Reactor模式进行必要的介绍,并列出libevnet中的几个 ...
- SSH隧道技术简介
本文的受众如果你遇到了以下问题,那么你应该阅读这篇文章 我听说过这种技术,我对它很感兴趣 我想在家里访问我在公司的机器(写程序,查数据,下电影). 公司为了防止我们用XX软件封锁了它的端口或者服务器地 ...