|

分享源码
界面截图: |
- |
是否带模块: |
调用了模块 |
备注说明: |
- |
.版本 2
.支持库 dp1
.支持库 spec
.子程序 语音发送群
.参数 群号, 文本型
.参数 took, 整数型
.参数 ukeyd, 文本型
.参数 语音, 字节集
.局部变量 加工, _Pack
.局部变量 Bin, 字节集
.局部变量 语音长度, 整数型
.局部变量 语音MD5, 文本型
.局部变量 部分, 字节集
.局部变量 three部分, 字节集
.局部变量 TEA, TEA类
.局部变量 i, 整数型
' *** 缩略程序块 ***
' 语音长度 = 取字节集长度 (语音)
' 语音MD5 = 到大写 (取数据摘要 (语音))
' 部分 = ProtobufOfInt (“08”, 到长整数 (群号))
' 部分 = ProtobufOfLenDe (“12”, 部分)
' Bin = ProtobufOfLenDe (“0A”, 部分)
' 部分 = ProtobufOfInt (“08”, 1) + ProtobufOfInt (“10”, 0) + ProtobufOfInt (“18”, 0)
' Bin = Bin + ProtobufOfLenDe (“12”, 部分)
' 部分 = ProtobufOfInt (“28”, 0)
' 部分 = ProtobufOfLenDe (“4A”, 部分)
' three部分 = ProtobufOfLenDe (“12”, 部分)
' 部分 = ProtobufOfInt (“78”, 0) + ProtobufOfInt (“F8 01”, 0)
' 部分 = ProtobufOfInt (“88 01”, 0) + ProtobufOfLenDe (“9A 01”, 部分)
' 部分 = ProtobufOfLenDe (“AA 02”, 部分)
' three部分 = three部分 + ProtobufOfLenDe (“12”, 部分)
' 部分 = ProtobufOfInt (“08”, 0) + ProtobufOfInt (“28”, 0)
' 部分 = ProtobufOfLenDe (“F2 01”, 部分)
' 部分 = ProtobufOfInt (“08”, 4) + ProtobufOfInt (“10”, qq.QQ) + ProtobufOfLenDe (“22”, Xbin.Hex2Bin (语音MD5 + “.amr”)) + ProtobufOfLenDe (“2A”, 到字节集 (语音MD5 + “.amr”)) + ProtobufOfInt (“30”, 语音长度) + ProtobufOfInt (“40”, 到长整数 (took)) + ProtobufOfInt (“48”, 2033389350) + ProtobufOfInt (“50”, 80) + ProtobufOfInt (“58”, 1) + ProtobufOfLenDe (“92 01”, 到字节集 (ukeyd)) + ProtobufOfInt (“98 01”, 2) + ProtobufOfInt (“E8 01”, 1) + 部分
' three部分 = three部分 + ProtobufOfLenDe (“22”, 部分)
' three部分 = ProtobufOfLenDe (“0A”, three部分)
' Bin = Bin + ProtobufOfLenDe (“1A”, three部分) + ProtobufOfInt (“20”, 到长整数 (功能_取随机数 (1810, 9523))) + ProtobufOfInt (“28”, 1 + 到长整数 (功能_取随机数 (147545469, 947545469))) + ProtobufOfInt (“40”, 1)
' 加工.Empty ()
' 加工.SetHex (“00 00 00 28 00 00 00 18 4D 65 73 73 61 67 65 53 76 63 2E 50 62 53 65 6E 64 4D 73 67 00 00 00 08 19 A2 5D 3D 00 00 00 04”)
' 加工.SetInt (取字节集长度 (Bin) + 4)
' 加工.SetBin (Bin)
' Bin = 加工.GetAll ()
' 加工.Empty ()
' Bin = TEA.Encrypt (Bin, qq.key)
' Bin = Pack (Bin, 5)
' Fun_send (Bin)
语音长度 = 取字节集长度 (语音)
语音MD5 = 到大写 (取数据摘要 (语音))
部分 = ProtobufOfInt (“08”, 到长整数 (群号))
部分 = ProtobufOfLenDe (“12”, 部分)
Bin = ProtobufOfLenDe (“0A”, 部分)
部分 = ProtobufOfInt (“08”, 1) + ProtobufOfInt (“10”, 0) + ProtobufOfInt (“18”, 0)
Bin = Bin + ProtobufOfLenDe (“12”, 部分)
部分 = ProtobufOfInt (“28”, 0)
部分 = ProtobufOfLenDe (“4A”, 部分)
three部分 = ProtobufOfLenDe (“12”, 部分)
部分 = ProtobufOfInt (“78”, 0) + ProtobufOfInt (“F8 01”, 0) + ProtobufOfInt (“C8 02”, 0)
部分 = ProtobufOfInt (“88 01”, 0) + ProtobufOfLenDe (“9A 01”, 部分)
部分 = ProtobufOfLenDe (“AA 02”, 部分)
three部分 = three部分 + ProtobufOfLenDe (“12”, 部分)
i = 功能_取随机数 (1, 3)
.判断开始 (i = 1)
部分 = ProtobufOfInt (“08”, 0) + ProtobufOfInt (“28”, 1) + ProtobufOfLenDe (“32”, 到字节集 (“s”))
.判断 (i = 3)
部分 = ProtobufOfInt (“08”, 0) + ProtobufOfInt (“28”, 1) + ProtobufOfLenDe (“32”, 到字节集 (“sss”))
.默认
部分 = ProtobufOfInt (“08”, 0) + ProtobufOfInt (“28”, 1) + ProtobufOfLenDe (“32”, 到字节集 (“ss”))
.判断结束
部分 = ProtobufOfLenDe (“F2 01”, 部分)
部分 = ProtobufOfInt (“08”, 4) + ProtobufOfInt (“10”, qq.QQ) + ProtobufOfLenDe (“22”, Xbin.Hex2Bin (语音MD5)) + ProtobufOfLenDe (“2A”, 到字节集 (语音MD5 + “.amr”)) + ProtobufOfInt (“30”, 语音长度) + ProtobufOfInt (“40”, 到长整数 (took)) + ProtobufOfInt (“48”, 3030586898) + ProtobufOfInt (“50”, 80) + ProtobufOfInt (“58”, 1) + ProtobufOfLenDe (“92 01”, 到字节集 (ukeyd)) + ProtobufOfInt (“98 01”, 3) + ProtobufOfInt (“E8 01”, 1) + 部分
three部分 = three部分 + ProtobufOfLenDe (“22”, 部分)
three部分 = ProtobufOfLenDe (“0A”, three部分)
Bin = Bin + ProtobufOfLenDe (“1A”, three部分) + ProtobufOfInt (“20”, 到长整数 (功能_取随机数 (1810, 9523))) + ProtobufOfInt (“28”, 1 + 到长整数 (功能_取随机数 (147545469, 947545469))) + ProtobufOfInt (“40”, 0)
调试输出 (Xbin.Bin2Hex (Bin))
加工.Empty ()
加工.SetHex (“00 00 00 28 00 00 00 18 4D 65 73 73 61 67 65 53 76 63 2E 50 62 53 65 6E 64 4D 73 67 00 00 00 08 19 A2 5D 3D 00 00 00 04”)
加工.SetInt (取字节集长度 (Bin) + 4)
加工.SetBin (Bin)
Bin = 加工.GetAll ()
加工.Empty ()
Bin = TEA.Encrypt (Bin, qq.key)
Bin = Pack (Bin, 5)
Fun_send (Bin)
|
|