This repository has been archived by the owner on Dec 29, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 310
Home
顾玮华 edited this page Apr 19, 2019
·
9 revisions
-
安装完毕后,不要急于打开,比较稳妥的是将其加入到白名单,或者从自动黑名单去除,在权限管理软件中,允许自启。(本软件不会占用太多内存资源,请放心)
-
第一次打开会跳转到通知权限页面,请赋予本软件通知监听权限。
级别 | 使用方法 |
---|---|
最简使用 | 只设置推送的url地址就行(请带上https://,或者http://,如http://mydomin.com/receipt) |
使用加密 | 需要在设置中勾选加密,然后选择加密方法(现在只支持des),设置秘钥 |
使用echo | 使用echo 是为了让服务器确认该device手机是否现在在线 |
- 现在只支持des加密。
- des的秘钥必须是8位
- 设置完加密方法和秘钥后,可以点解设置的解密说明来看解密的参数(默认的是解密初始化向量与秘钥一致)
- 使用需勾选设置并设置echo 服务器地址
- echo服务器的地址和推送的地址有关联吗? 可以有也可以没有,这个客户端会利用socket.io来向server发送一个事件名为echo的事件,同时附带设备的deviceid和现在的时间。这要这个server 是socket.io server
- 该怎样写echo服务器,来知道设备现在在不在线?可以参考getreceipt-server项目的nodejs分支下的app.js,具体来说是这段代码
var express = require('express');
var app = express();
var server = require('http').Server(app);
const io=require('socket.io')(server);
global.deviceisonline=false;
io.on('connection',(socket)=>{
socket.on('echo',(devicestr)=>{
device=JSON.parse(devicestr);
global.deviceid=device['deviceid'];
global.deviceisonline=true;
global.deviceconnectedtime=device['connectedtime'];
console.log("new device_echo from "+device['deviceid']+" with time "+device['connectedtime']+" and socketid is: "+socket.id);
});
socket.on('disconnect',()=>{
global.deviceisonline=false;
global.devicedisconnectedtime=new Date();
console.log("device disconnect");
});
});
- 我不用node作为服务器语言怎么办?例如我用php。你可以使用phpsocket.io项目。