rss 推荐阅读 wap

生活资讯网_中国新闻网

热门关键词:  as  xxx  鈹氬〒  自驾游  请输入关键词
首页 动态 地方 经济 理财 行业 人文 娱乐 科技 营销 微商

【开源分享】微信营销系统(第三方微信平台)github 开源

发布时间:2020-10-17 15:58:15 已有: 人阅读

  我的定位是专门服务于线下商家,例如电影院、商业中心、各类线下门店等,线下商家的一些业务场景和业务流程是比较特殊的,和纯现上的公众号运营不尽相同。 这是我最初想找到的切入点,在系统初步上线后,自己也试着做了推广,包括百度关键词、线下陌拜都尝试过,这些细节有机会我会再详细说一说。

  微信第三方平台的部署方法是需要先注册微信开放平台,然后申请第三方应用,经过审核和接口联调确认,就可以使用了。

  ◇ 为微信服务号提供运营及管理所需的各种功能,包括微官网、微会员、活动中心、营销辅助、微信支付。

  微主页提供若干预置的模版,可以通过上传自定义的主题图片形成自己的微主页,对于有一定开发能力的使用者,提供模版引擎功能,使用一个类似于轻量级CMS的功能,定制自己的微主页。

  卡券功能需要支持后台派发和前端在线下通过二维码核销,这一块与微信原生卡券有一个重要区别,在于领取的方式,微信原生卡券主要是自主领取,比如扫码、分享等,但是对于部分线下商户,卡券的派发是要严格管控的,比如电影院的兑换券、景点的门票等,这种场景目前微信自带卡券不能实现。

  必须将所有的活动全部模版化,使用户能够简单配置就发起活动,并在活动进行的过程中提供运营数据报表。

  除了打通微信支付以外,需要提供线下的充值和消费能力,比如会员直接在线下向现金充值,或线下购物时刷二维码消费自己预存的现金,这里实际上意味着需要实现一套比较完整的消费系统。

  稳定可靠主要取决于设计及编码水平,这个无需多解释。低耦合高内聚应该也是大家都了解的原则,为了实现这个目标,项目会按功能模块进行拆分和抽象,具体拆分方式请见下文的详细设计。

  将高频请求的部分和低频请求的部分分解,将内网请求与外网请求分解,可分布式部署,将内网请求部分完全隔离在防火墙之后或内网环境中,并使对外的高频请求的部分可通过增加服务器来增加承载能力。在设计之初就需要考虑负载均衡及CDN分发所带来的问题,在负载均衡方面,我们以负载均衡不开启会话保持为设计指标,此外,我们需要将所有用户上传的文件,或发送的文件,在独立的文件服务器存储,以便于CDN分发和控制流量及带宽,要知道服务器的流量及带宽费用是相当可观的,同时也避免文件传输对服务器带宽的占用而影响业务数据的处理能力。

  在具体的技术选型上,选择成熟稳定的技术方案,而不是“牛”的方案,这一点非常重要,因为我们不是在做研究,我们是在做项目。或者从另一个角度来说,你对技术“牛”和“不牛”是怎样理解的。在此项目中我们考量以下几个因素:

  a.是否成熟稳定,后续支持怎样。成熟稳定通常代表着问题较少,团队学习成本低,接纳度高,后续支持指的是是否有商业公司或开源社区积极的维护更新。

  b.生产性怎样,是否可以提供足够高的生产性。生产性指的是开发维护的效率,软件开发过程中最大的成本是人力成本,如何用更少的人做到更多的事,甚至说在市场竞争中你的速度快不快,都相当重要,对于商业项目,我不需要你知道回香豆的“回”有几种写法,我只要你又快又好的给我写一百遍“回”字即可。

  基于承载能力扩展性和业务方面的考量,必须要能够将不同的公众号数据存储到不同的数据库服务器上。

  架构设计我想分为两个部分说明,一是开发架构,二是部署架构。这两个不同角度的设计互相影响或者互相制约,必须在设计期间就把握好大方向,做好这件事情需要设计者除了懂开发,还要懂运维,否则很容易造成前人挖坑后人填坑。

  注意图上的一个矩形模块并不一定就代表着一个程序集,一个逻辑上的“模块”可能由多个程序集共同构成。

  从上向下简单分析,首先是管理端的UI层和手机端的UI层,我习惯将之称为Shell。从图上可以看到管理端Shell和手机端Shell是分开的两个模块,在我们的解决方案中它们是两个不同的工程,我也看到过一些微信项目将管理端和手机端放在一个工程中,无论是从安全性、可维护性上说我都强烈不建议你这么做。完全分开的好处有很多,首先是部署成本,管理端一般情况下是不需要应对大量请求的,而手机端有这个需求,在部署时管理端甚至只需一台服务器即可,而手机端则需要更多的服务器和带宽支撑,另外在工程的前期运维阶段,管理端的版本发布频率可能高于手机端,完全隔离的开发和部署可以避免在发布管理端时影响到手机端的业务,第二是安全性的问题,手机端从工程上就是完全不包含任何管理功能的,可以在一定程序上提高安全性。

  接下来是若干辅助服务,报表服务、文件服务,这两个服务是独立的Web工程。和管理端或手机端并不是一一对应的关系,一个报表服务器或文件服务器可以为多台管理端或手机端Shell提供服务。

  文件服务器提供文件上传下载功能,这个服务有几个技术细节需要注意,聪明的你或许已经想到第一个问题:跨域上传的问题。管理端和手机端都是独立部署的,所使用的域名自然是不同的,那么在浏览器中上传就存在跨域的问题,不过这个问题并不难解决,我将的后续篇章中介绍,另一个就是对于(嵌入在微信中的)手机端来说,是不能直接上传文件的,必须先把文件发送到微信后台,获取媒体ID,再下载下来,这个过程需要文件服务器完成,最后是关注服务号的会员,发文件到服务号上,实际是发到了微信服务器,我们的文件服务器要能异步的把这些文件从微信后台下载下来。

  业务核心模块这里的介绍比较笼统,在项目中实际对应着实现不同功能的诸多程序集,限于篇幅和本章节的主旨,还是留到后文中详细说明业务核心的设计和实现。

  中控服务器主要的功能是维护调用微信API所需的AccessToken,与微信对接时,根据公众号的AppId和AppSecert,你可以获取到一个有效期为2个小时的AccessToken,调用几乎所有的微信接口都需要这个 AccessToken,当然你不能在每次请求API时都获取一个新的AccessToken,这是完全没有必要的,所以需要一个独立的服务来处理这件事,模块需要使用AccessToken时,从中控服务器获取。

  微信SDK并不是微信官方提供的,是项目里需要自己实现的部分,微信官方并没有提供完善的开发包,只有若干示例。网上有一些开源的微信SDK,但是或多或少存在一些问题,此处使用的是我们自己实现的SDK包。

  基础架构部分涉及到数据实体的定义、数据协议的定义等等,数据协议指的是各Web工程之间以前单个Web工程中前后端通信所使用的协议。此外还包括许多共通的功能实现也在这里。

  最后是数据层,数据层没有使用Entity Framework,使用的是我的另一个开源项目S-ORM,下文的技术选型部分有简略的说明和介绍。

  与微信官方后台的会员数据联动,并在此基础之上,实现积分管理,现金余额管理,会员卡管理,等等一系列 CRM 相关功能。

  与微信官方的信息群发打通,在此基础之上,可以与平台中的会员管理进行联动,可以根据平台会员进行有针对性的筛选和定向的发送。

  一个完整的积分商城功能,支持积分购买、现金购买、积分加现金购买多种方式。 所购商品可以在线下实时核销。

  电子卡券功能,可在后台根据需要制作不同功能、类型的电子卡券,派发给会员。会员在线下通过展示卡券的二维码进行核销。可制作现金券,代金券,礼品券等等。

  在后台发起粉丝海报活动后,上传一张背景图片,会员访问活动页面后,可自动生成一张带有会员头像和二维码的海报图片,粉丝转发此图片后,人扫描此二维码可落地到指定的营销页面,并给会员奖励积分。

  定期抽奖可根据周期(如一天、一周等),滚动的让会员来营销页面报名,并在指定的周期结束时,自动开奖。会员转发活动页面也可奖励积分。

  击访问之后,会奖励他一个新的抽奖码,引流的人数越多,抽奖码越多,管理人员可在一定时间后,手工开奖。

  通过手机的摇一摇功能,进行抽奖。在后台配置好活动周期,奖品,中奖概率后,引导会员访问营销页面,摇动手机进行抽奖。

  可以自定义不同的会员卡级别,金卡、银卡等,并为会员分配不同的会员卡。所有的会员都会有一个唯一且固定的会员卡号。

  场景二维码与公众号自带二维码功能一致,都是扫码关注,但是场景二维码可以实现对粉丝来源的统计,知道粉丝是扫哪个二维码关注的公众号,对于地推或不同渠道的推广来说,可以知道各渠道的引流效果。

  可以自定义图片广告,并显示在微信平台相关页面上,可以统计各广告的展示,点击次数,分析营销效果。

  1、增加“我的分销”页面:实现分销相关的信息显示和入口(我的返佣、我的下级、推广海报、我的推广码、)

最火资讯

首页 | 动态 | 地方 | 经济 | 理财 | 行业 | 人文 | 娱乐 | 科技 | 营销 |免责声明

Copyright2008-2022 生活资讯网 www.xwqxyls.com 版权所有 业务QQ:17468920 Power by DedeCms 京ICP备13004639号

电脑版 | wap