问题标签 [pdu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
393 浏览

sms - 向 SMSC 发送 SMS-COMMAND PDU 以删除提交的消息

我正在尝试发送 SMS-COMMAND PDU,它应该删除之前在 SMSC 中提交的消息。调制解调器响应 +CMS 500 错误,这意味着无效的 PDU 模式。

我正在使用的设置 - 华为调制解调器

  • AT+CMGF=0
  • AT+CMGS=14

PDU 以字节为单位

00220000029E0C9124917091558500

消息号是为先前提交的消息的参考号设置的。

调制解调器以 +CMS 500 响应。我无法完成这项工作,因此不胜感激。谢谢

0 投票
0 回答
213 浏览

android - 确定 SMS 是二进制还是文本

我有一个默认的 SMS Messenger Android 应用程序,它将接收二进制和纯文本消息。我需要确定收到的 SMS 是二进制还是文本,才能知道如何将消息发送回原始发件人。

在 5.1 上,我可以检查 MessageBody 是否为空。Null 表示它是二进制的。在 5.1.1 上,我没有看到相同的结果。MessageBody 有来自错误编码的垃圾。messageBody is other binary data format encodingType=2我在控制台中收到错误。

是否有另一种方法来确定 SmsMessage 是否是二进制的?

谢谢

0 投票
1 回答
196 浏览

smpp - PDU 响应参数

我正在使用 Node.js 创建一个 SMPP 服务器。

没关系,但是现在,我必须在 pdu.response() 中向客户端发送一个自定义参数,例如“message_id”。

如果我做:

它有效,但如果我这样做

我总是收到

所以,我有一个问题。我可以这样做吗?或者使用 SMPP 是不可能的?

0 投票
1 回答
1148 浏览

timezone - 如何使用 Twilio 获取 SMS 的时区信息?

我想查看用户向我的 Twiml 应用程序发送短信时所处的时区,以便应用程序能够做出适当的响应。

我对 SMS 结构的研究使我相信所有 SMS 消息都包含有关发送方时区的信息(维基百科)。

我似乎应该能够通过 Twilio API 访问时区信息。然而,我所能找到的只是以 UTC 格式到达的时间。

有没有办法访问通过 Twilio API 传入的原始 SMS(即 PDU),或者直接查看时区信息?

0 投票
2 回答
1601 浏览

node.js - 如何使用节点 smpp 发送长消息?

如果消息低于 160 个字符,则正常。消息将被发送,但如果消息高于 160 个字符,则如果短信消息太长,它将抛出新的 TypeError 值参数超出 buffer.js 的范围。请帮助。真的感谢任何帮助

0 投票
0 回答
285 浏览

c - Gsm PDU到文本解码算法在stm32中不起作用

我已经用 C 语言编写了一个 PDU 到文本解码算法,它可以与开发 C 或代码块完美地编译和运行多个消息(我手动提供 PDU 消息)。现在我已将相同的算法应用于与 sim800c gsm 模块连接的 stm32f103rc,stm32f103rc sysclk 在 72MHz 上运行,stm 和 sim800c 之间的通信波特率为 115200。

当我发送简单消息(80 个字符以内)时,短信会被解码并完美显示,但是当我发送超过 80 个字符时,显示屏最多显示 80 个字符然后停止。我检查了终端中的解码消息,它在 80 个字符后给出了相同的结果,有垃圾。

我已经考虑了一些事情,比如终止一个字符串(因为我没有像在 dev c 中那样手动获取数据)然后删除回车和换行。但无法理解我的算法哪里出错了

编码

我在 stm32f103rc 上运行代码

唯一的改变

这是在 dev c 中完美运行的函数。我只为stm32更改了这个功能。

我不知道我哪里出错了。任何建议都会非常有帮助。

提前致谢。

0 投票
2 回答
460 浏览

sms - 使用 EasySMPP API 发送连接的 SMS 消息(如何添加 UDH 信息)

我正在使用名为EasySMPP的c# API,它在发送单条短信时非常棒,在发送大短信时也很好,但是收件人分开接收消息,这没有意义,我正在寻找的是如何修改PDU所以我可以附加 UDH 信息。

如何实现添加超高清信息,这是 API 中的 SubmitSM 方法,

非常感谢!!!!

0 投票
1 回答
72 浏览

c# - 为什么我在C#中使用“at命令”会出错,但是在超级终端中该命令是否正常工作?

这是我在 c# 中的代码:

结果是:

好的

AT+CMGF=0

好的

AT+CMGS=15

> 0691891901500011000**********************000A70178->

错误

但是当在超级终端中使用这个命令时,一切都很好:

好的

在+cmgf=0

好的

在+cmgs=15

> 069189190150001100**********************000A70178->

+CMGS:139

好的

错误在哪里?

谢谢大家

0 投票
0 回答
402 浏览

c++ - Qt 和 GSM 编码

嗨,我正在开发一个开源短信应用程序,我正在使用 Qt。但现在我对编码有各种问题。我正在使用这个库进行各种 pdu 编码和解码https://sourceforge.net/projects/pdulib/ 在 gsm 中有 3 种主要编码默认 7 位字母、UCS2 和 8 位数据。所以当对于 7bit 编码库期望 std::string 参数所以我像这样传递它

短信是正确发送的,但是当有重音字符时,短信会带有像“C?”这样的坏字符。字符集/编码错误的标志。请注意,显示它的是手机。所以解码误差非常低。

但是当我使用 UCS2 编码时

因为该库需要 UCS2 的 std::wstring ,所以带有重音的字符打印得很好。但问题是当我解码收到的短信时。我已经修改了这个库的功能以满足我的需要,但是带有重音的字符又出现了问题。这是功能

我已经为 C++ 测试了各种 pdu lib,这对我来说似乎是最好的。我的想法是我对 std::string 和 std::wstring 做了一些坏事,但我不知道是什么。我也知道 UCS2 是 UTF-16,但我读到有一些小的差异。我的语言环境是 FR(法语) 我正在使用 Qt 5.9 对不起我的英语。

0 投票
1 回答
1854 浏览

c - 将 ASCII 字符串转换为 7 位 GSM 编码方案

ASCII我为将字符串转换为相应的7-bit GSM编码方案而编写的一个简单例程:

ASCII对于像or这样的字符串,TEST它工作正常,输出分别是C1E9309904D4E2940A

但是对于字符串,ASCIIASCII一些输出字节是错误的: C1E930990C4E87498024

结果应该是:C1E930990C4E87C924

不知道是什么部分,我错了。

关于 GSM 编码的概念可以在这里找到。

我使用这个在线编码器来比较结果