文档章节

Scala实战-通过微信聊天窗口实现应答式点餐 0

羊八井
 羊八井
发布于 2015/08/18 09:16
字数 1108
阅读 183
收藏 0

近来学习Play 2和Akka,想着找一个实战性的项目练练手。正好近来公司提供晚餐,每天看着程序媛拿着手机一个一个的找人点餐,耗时多、且容易点漏、又打断了自身的工作……哥觉得小妹儿工作好累啊。作为一个全栈工程师,为公司小妹儿减轻工作负担义不容辞啊。

就在想,就在想……用什么方法可以简化这个点餐流程呢?把玩着手中的微信,看到同事们在公司群里胡吹海吹,Duang!有了,就做一个基于微信公众号的点餐系统。

技术

系统用到的技术有:

系统功能

经过深思熟虑的思考,做一个基于WEB的点餐,通过微信打开内置游戏器访问。这个,感觉B格不够高,就是做一个网站了,Low……。我得做一个与微信深度集成的点餐功能,就像一个聊天机器人一下。用户输入指令,系统返回菜单。甚至用户输入语音,系统也返回菜单,哈哈哈!

在聊天窗口输入指令显示菜单,如:

  • 0:所有指令
  • 1:注册用户
  • 2:今日菜单
  • 3:我的历史(返回连接,直接进入我的历史点餐记录)

选择今日菜单后,系统在聊天窗口返回:

  1. 菜品一
  2. 菜品二
  3. 菜品三
  4. 菜品四 。。。。。

用户选中一个菜品后系统应返回一个确认提示:

  • 1:确认,2(其它):取消

用户注册

这个系统只限于公司内部使用,所以不能让随便一个关注了公司号的人都可以进行点餐操作。所以用户注册功能是必需得有的。注册也采用应答的方式,用户在微信聊天窗口输入相关信息,系统验证成功后注册成功。

有注册了,那登录呢?登录?都已经用微信做入口了,就直接登录了吧。

开发

Play

Play用来做什么?根据微信公众号的开发文档,接入微信公众号需要80端口,并使用HTTP协议。这不是要开发WEB嘛,哥用Scala做开发,那自然就是Play 2了。其实也不当当这个,Scala下可使用的Web框架还是很多的,甚至Spring也可以的嘛。不过我就是想用用Play 2,OK。

Play其实还有一些网页的开发工作,虽然是通过聊天窗口进行点餐。但还是得有个简单的管理后台的,用于餐品管理、统计等。这些还是做个WEB程序比较方便。

Akka

Akka有一个很好的特性,根据actor模型开发,自然而然就是一个树型结构。很适合用来管理每个微信用户的菜单选择状态。

Slick

Slicktypesafe开发的一套用于访问数据库的工具库。最新的3.x系列版本实现了一个非阻塞的数据库访问API,底层使用了JDBC驱动。

Slick是一个现代的访问数据库的Scala库,使用编写访问数据库代码和平常编写代码一样,使用类集合操作的方式来访问数据库。同时也提供了以原生SQL语言的方式来读取数据库,并同时保证类型检查。

注册微信号

https://mp.weixin.qq.com官网注册订阅号或服务号。步骤就不详述了。

© 著作权归作者所有

共有 人打赏支持
羊八井

羊八井

粉丝 93
博文 38
码字总数 47266
作品 0
渝北
技术主管
私信 提问
Scala实战-通过微信聊天窗口实现应答式点餐 1:连接微信API

当前代码tag: v0.0.1,https://github.com/yangbajing/wechat-meal/tree/v0.0.1 微信公众号提供了详尽的API文档说明,提供了明文和加密两种接入方式。这里,我们选择加密的接入方式微信公众号...

羊八井
2015/08/18
0
0
微信点餐外卖系统,让餐厅变得更智慧

微信点餐外卖系统,让餐厅变得更智慧 自从微信点餐系统在众多餐厅中陆续应用,日前,不少商家也表示说利用这个点餐系统可以实现餐厅的高效运转,同时也能为顾客提供更加优质的移动用餐体验服...

prince闪电湖
2015/03/09
9
0
Apache ActiveMQ实战(1)-基本安装配置与消息类型

ActiveMQ简介 ActiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的、可扩展的、稳定的和安全的企业级消息通信。ActiveMQ使用Apache提供的授权,任何人都...

lifetragedy
2016/07/06
0
0
南京小牛智能推出中小学学生刷脸就餐系统及刷脸订餐系统

南京小牛智能于2018年6月20日发布针对中小学的学生刷脸就餐或刷脸订餐系统。这套系统主要通过学生家长通过微信公众号进行预计,学生到食堂通过人脸识别售饭机刷脸取餐。系统还可以通过学生的...

xnzn168
2018/06/20
0
0
从0到1构建基于Springboot+SpringCloud的微信点餐系统

课程介绍 随着互联网不断发展,大家的生活习惯也不断在改变,像美团,饿了么平台的外卖快速的发展起来,这就是我们所说的O2O,即线上和线下结合同时微信也给人们带来了沟通的便利,现在几乎每...

liwei2000
2018/11/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

大数据处理也要安全--关于MaxCompute的安全科普

摘要: 企业从未像今天这样可以轻易地存储和使用大数据。然而,当您在使用大数据产品时,是否考虑过其中的安全问题呢?庆幸的是,阿里云产品专家和安全专家早就想你所想急你所急,先行一步将...

阿里云云栖社区
5分钟前
0
0
vue如何编写组件可以通过Vue.use()使用

一般平时用别人的组件时都是通过import引入然后Vue.use()来使用,那么如何让我们写的组件也可以用这种方式使用呢? 1.首先新建一个文件夹例如:Home,然后在该文件中新建两个文件Home.vue和i...

北辰丨丶
5分钟前
0
0
SpringBoot自动配置原理

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾前面Spring的文章(以学习的顺序排好): Spring入门这一篇就够了 Spring【依赖注...

Java3y
10分钟前
0
0
如何伪装成一个服务端开发(十) -- Spring MVC 源码

前言 在第七篇我们已经聊过了一些Spring MVC的运行原理,当然大多数人应该还是和我一样迷迷糊糊,只知道一个大概的运行过程,这一篇,我想要从源码的角度更加进一步去了解Spring MVC的整个运...

街角的小丑
15分钟前
0
0
应用前台耗电怎么破?功耗避雷指南已“佩奇”

使用应用时被用户吐槽手机掉电快、卡顿、过度发热,导致用户体验差,以上情况的产生,应用的功耗设计不足是直接症结。 当前,人们对性能体验的追求前所未有,应用设计功能越来越强大,界面也...

安卓绿色联盟
15分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部