Giter VIP home page Giter VIP logo

transpondsms's People

Contributors

timsengit avatar xiaoyuanhost avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

transpondsms's Issues

Could not connect to smtp host

stmp服务器:smtp.163.com
端口:465
开启ssl

点击测试后提示: Could not connect to smtp host: smtp.163.com, port: 25

把端口改成25,关闭ssl,仍然提示上述错误

短信内容错误

正常的短信内容,
2019-12-09_091853
使用邮件接收的内容,出现了内容错乱,(内容一多就错乱)
2019-12-09 -1
钉钉收到的内容
2019-12-09_092135

原理是啥

原理是程序挂后台一直监听通知栏?还是直接监听短信呢,没有看你的代码,单纯想了解一下,希望赐教

功能建议

能否支持多个规则同时匹配

比如:
手机号=xxx && 内容包含xxx && 内容包含xxx && 内容不包含xxx

vivo iqoo 企业微信转发失败

权限都开了 短信设置也关闭了禁止第三方获取验证码短信的开关,且接收到普通短信 也无法转发 原因未知

软件很好,在魅族手机有个问题

个人短信可以转发,通知类的不行,但通知类的才是需要转发的。魅族手机把验证码短信都放在了通知分类中。

经过一番折腾,把系统降级到android5.1,自己重新打包app,现在可以收验证码了。

软件不错!希望研究一下flyme` 新版本如何收验证码。

原生安卓无法获取信息

lineage-17.1 安卓10.0
MK90 安卓9.0
在所有权限都给予的情况下,无法监听短信,webhook测试正常。
猜测原生安卓拥有更强的隐私保护功能。

测试能转发收到,但是短信转发不了

邮箱和钉钉配置了,发送测试也可以接到信息。但是收到的短信验证码没有被转发,不知道是没有监听成功还是因为验证码这类信息的特殊性。
手机是one plus 7 pro,android 10

关于WEB推送中签名算法的问题

在尝试编写服务端验证sign的逻辑时遇到了一个问题,我在阅读了您所撰写的sign校验规则后发现,您将"毫秒时间戳+换行符+密钥"通过HmacSHA256进行计算。

但HmacSHA256本身是不可逆的计算,意味着服务端无法解密客户端所提供的签名来获取时间戳进行校验。

我想您的设计本意应该是服务端使用相同的密钥和时间戳重新计算签名并与客户端的计算结果对比,但问题出在服务端无从得知客户端计算签名时所用的时间戳。

另外,此种方式也无法规避重放攻击,您在文档中所写的"与请求调用时间误差不能超过1小时"实际上允许一小时内的任意签名都可被无限次使用。

在此,我向您推荐一种可行的签名方式,以此确保请求来自于可信的客户端。

// Node.js
const crypto = require("crypto");

let secret = "This is secret"; // 密钥
let hmac = crypto.createHmac("sha256", secret);

let from = "+8618001234567"; // 来源手机号
let content = "Hello world."; // 推送的消息主体
let random = Math.random().toString(); // 随机数 用于规避重放攻击
let timestamp = (new Date).getTime(); // 毫秒时间戳

// 用于签名的字符串使用 时间戳 + 来源手机号 + 消息主体 + 随机数 的格式
// 这样可以在确保请求中的任何内容在到达服务端之前没有被篡改的同时避免重放攻击
let stringToSign = timestamp + from + content + random;
// 示例: "1614366886029+8618001234567Hello world.0.11362871958842535"

let signature = hmac.update(stringToSign) // 签名字符串
    .digest() // 获取签名结果
    .toString('base64'); // 转为base64

// 最后,将random、timestamp连同消息主体一起发送给服务端。
// 服务端使用相同的算法验证签名后,使random在一段时间内不能被再次使用
// 如规定timestamp误差不能超过15分钟,则相同的random在以服务器时间为基准的前、后15分钟均无效
// 实际实践中,只需缓存random并在15分钟后删除即可

let dataToPost = {
    from: from,
    content: content,
    timestamp: timestamp, 
    random: random,
    sign: signature
}

console.log(dataToPost); // 输出

很好的软件,有个新想法分享

目前我是配置了邮箱,主卡放在备用机,主力机用流量卡,主力机接收到信息需要打开QQ在进入邮箱,有点麻烦。不知道能不能添加一个手机收到短信后POST给配置网址这样的功能,这样我只要浏览器打开页面就可以看到信息了。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.