# 婚礼互动,让你们的婚礼飞起来
## 缘起
这个项目就是在我婚礼前一个月左右,心血来潮,想在婚礼上搞点事情,给大家留个深刻的印象。最终婚礼上的反响还不错,近期想着与其让这个项目尘封,倒不如开源出来,祝愿所有的 forker 有情人终成眷属。
## 介绍
项目分为微信端和大屏端。微信端可以作为电子请柬提前分享给大家,部署的服务器域名最好有备案,不然容易被屏蔽。大屏端是放在婚礼现场的大屏幕上,现场的宾客可以刷弹幕上墙,并且有照片播放页,迎宾页,抽奖页面。另外微信端也作为现场互动的入口,扫码签到可参与抽奖,发弹幕送祝福上大屏幕。
微信端 `/`:
![微信端](https://cdn.iammapping.com/2017/10/22/150866684532177784.png)
大屏端 `/wall` (上下方向键切换不同屏):
![大屏端欢迎页](https://cdn.iammapping.com/2017/10/22/150867322395988694.png)
## 安装
下载本项目
```
> git clone https://github.com/iammapping/wedding
```
到项目根目录初始化:`npm install`
安装 sails
```
> npm install sails -g
```
启动:`sails lift`,生产环境加上 `--prod` 参数。
## 配置
**配置微信公众号**
```javascript
> vi config/weixin.js
module.exports.weixin = {
// 微信公众号相关设置
appid: 'xxx',
secret: 'xxx',
// 微信公众号设置的回调地址
redirectUri: 'http://xxx/home/resolve'
};
```
**配置数据库**
导入表结构
```
mysql> create database wedding;
mysql> source wedding.sql;
```
修改连接参数(使用 Sequelize 替代了 Sails 框架中默认的 Waterline)
```javascript
> vi config/connections.js
sequelizeServer: {
user: 'xxx',
password: 'xxx',
database: 'wedding',
options: {
dialect: 'mysql',
dialectOptions: {
charset: 'utf8mb4'
},
host: '127.0.0.1',
port: 3306,
logging: true,
timezone: "+08:00",
}
}
```
**修改图片素材**
微信端在 `views/homepage.ejs` 中修改,公告也在此文件修改
```html
<img class="disable-tilt" src="/images/1-740.jpg" data-width="1500" data-height="1000" data-center-offset="740" />
...
```
* data-width:图片宽度
* data-height:图片高度
* data-center-offset:图片主体中线 x 轴位置
大屏端在 `assets/styles/wall.css` 中修改
```css
#slide1 {
background-image: url(/images/1-740.jpg);
}
...
```
**修改背景音乐**
在 `assets/js/home.js` 中修改
```javascript
PM.bgm = new PM.BGM($('#bgm-audio'), {
src: '/audios/pm_bgm2.mp3',
autoplay: false
});
```
**修改地图位置**
在 `assets/js/pm.js` 中修改
```javascript
var map = new AMap.Map('pnl-map',{
zoom: 17,
center: [115.977634, 29.709759]
});
var marker = new AMap.Marker({
position: map.getCenter()
});
marker.setMap(map);
// 设置label标签
marker.setLabel({
offset: new AMap.Pixel(-75, -30),
content: "PM Infinity婚礼于10月5日晚"
});
```
`center` 修改中心坐标,`content` 修改坐标说明的文字。
**修改婚礼日期**
在 `assets/js/home.js` 中修改
```javascript
var remainDays = Math.floor((new Date(2016, 9, 5) - new Date())/(24*3600*1000));
```
**彩蛋**
在链接中加上 `?state=present` 可以直接签到在现场,可用于婚礼现场扫码签到。
## 微信调试
**1. 申请开发测试号**
不管公众号账号主体是个人还是企业,都可以通过[接口测试号申请](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421137522),申请好后可以拿到测试的 `appID` 和 `appsecret`。
扫码关注测试公众号,只有加入了测试用户列表才有相关的接口权限。
**2. 设置网页服务授权的回调域名**
在*体验接口权限表 > 网页服务 > 网页帐号 >网页授权获取用户基本信息*,修改授权页面回调域名,如:`127.0.0.1:1337`
**3. 修改项目中的配置文件**
```javascript
module.exports.weixin = {
// 微信公众号相关设置
appid: '第 1 步拿到的 appID',
secret: '第 1 步拿到的 appsecret',
// 微信公众号设置的回调地址
redirectUri: 'http://第 2 步设置的回调域名/home/resolve'
};
```
**4. 使用微信 web 开发者工具测试**
下载[微信web开发者工具](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1455784140),微信(账号需已关注测试公众号)扫码登录该工具,然后在地址栏打开 `http://127.0.0.1:1337`,如果能正常授权并打开微信端首页,那就大功告成啦。👏
微信手机端实测(前提是手机电脑在同一局域网),将第 2 - 4 步中的本地 ip 修改为你电脑的局域网 ip,然后在微信手机端访问这个 ip,如:`http://192.168.13.14:1337`。
## 致谢
感谢媳妇的支持,感谢大家的祝福。
感谢项目中使用的所有开源项目和服务:
* Mysql、Nodejs、Sails、Sequelize、Bluebird、wechat-oauth
* WeUI、jQuery、jquery.fullPage、slick、CommentCoreLibrary(CCL弹幕)、高德地图、iconfont
## License
Copyright 2017 iammapping
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
[http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
没有合适的资源?快使用搜索试试~ 我知道了~
婚礼大屏互动,微信请柬一站式解决方案.zip
共125个文件
js:67个
png:10个
ejs:8个
需积分: 5 0 下载量 118 浏览量
2024-01-15
08:58:40
上传
评论
收藏 5.85MB ZIP 举报
温馨提示
方案是为解决特定问题或达成特定目标而制定的一系列计划或步骤。它的作用是提供一种系统性的方法,以有效地应对挑战、优化流程或实现目标。以下是方案的主要作用: 问题解决: 方案的核心目标是解决问题。通过系统性的规划和执行,方案能够分析问题的根本原因,提供可行的解决方案,并引导实施过程,确保问题得到合理解决。 目标达成: 方案通常与明确的目标相关联,它提供了一种达成这些目标的计划。无论是企业战略、项目管理还是个人发展,方案的制定都有助于明确目标并提供达成目标的路径。 资源优化: 方案在设计时考虑了可用资源,以最大化其效用。通过明智的资源分配,方案可以在有限的资源条件下实现最大的效益,提高效率并减少浪费。 风险管理: 方案通常会对潜在的风险进行评估,并制定相应的风险管理策略。这有助于减轻潜在问题的影响,提高方案的可行性和可持续性。 决策支持: 方案提供了决策者所需的信息和数据,以便做出明智的决策。这种数据驱动的方法有助于减少不确定性,提高决策的准确性。 团队协作: 复杂的问题通常需要多个人的协同努力。方案提供了一个共同的框架,帮助团队成员理解各自的职责和任务,促进协作并确保整个团队朝着共同的目标努力。 监控与评估: 方案通常包括监控和评估的机制,以确保实施的有效性。通过定期的评估,可以及时调整方案,以适应变化的环境或新的挑战。 总体而言,方案的作用在于提供一种有序、有计划的方法,以解决问题、实现目标,并在实施过程中最大化资源利用和风险管理。
资源推荐
资源详情
资源评论
收起资源包目录
婚礼大屏互动,微信请柬一站式解决方案.zip (125个子文件)
weui.min.css 35KB
home.css 8KB
wall.css 4KB
jquery.fullpage.min.css 4KB
slick.css 2KB
.editorconfig 166B
500.ejs 66KB
homepage.ejs 6KB
404.ejs 4KB
403.ejs 4KB
wall.ejs 2KB
layout.ejs 1KB
layout.alert.ejs 775B
reauth.ejs 436B
iconfont.eot 8KB
.gitignore 3KB
.gitkeep 0B
.gitkeep 0B
.gitkeep 0B
.gitkeep 0B
.gitkeep 0B
favicon.ico 920B
6-809.jpg 631KB
11-786.jpg 511KB
8-908.jpg 377KB
2-839.jpg 234KB
1-740.jpg 217KB
5-1043.jpg 216KB
3-935.jpg 189KB
4-498.jpg 142KB
sails.io.js 117KB
jquery.min.js 90KB
comment.js 52KB
slick.min.js 41KB
jquery.fullpage.min.js 29KB
pm.js 17KB
blueprints.js 9KB
sockets.js 7KB
sails-linker.js 6KB
home.js 6KB
views.js 6KB
connections.js 5KB
wall.js 4KB
session.js 4KB
hash.js 4KB
HomeController.js 4KB
http.js 4KB
cors.js 4KB
globals.js 3KB
csrf.js 3KB
i18n.js 3KB
notFound.js 2KB
pipeline.js 2KB
routes.js 2KB
serverError.js 2KB
forbidden.js 2KB
policies.js 2KB
Gruntfile.js 2KB
WxAccount.js 2KB
app.js 2KB
badRequest.js 2KB
AccountService.js 2KB
FeedService.js 2KB
models.js 1KB
production.js 1KB
jst.js 1KB
log.js 1KB
ok.js 1KB
Feeds.js 1KB
OAuthService.js 947B
CheckinStatus.js 919B
development.js 830B
copy.js 812B
coffee.js 781B
watch.js 765B
concat.js 701B
sessionAuth.js 685B
CheckinService.js 662B
less.js 661B
bootstrap.js 627B
sync.js 626B
weixinAuth.js 580B
cssmin.js 480B
uglify.js 464B
clean.js 453B
rename.js 450B
prod.js 312B
linkAssetsBuildProd.js 290B
linkAssetsBuild.js 282B
linkAssets.js 245B
autoreload.js 239B
buildProd.js 191B
compileAssets.js 154B
build.js 147B
syncAssets.js 136B
weixin.js 123B
default.js 114B
package-lock.json 227KB
package.json 1KB
es.json 90B
共 125 条
- 1
- 2
资源评论
JJJ69
- 粉丝: 6168
- 资源: 5789
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功