我使用以下命令通过 SMS 适配器发送 SMS 消息:
telnet localhost 0000 <<-EOF
helo x
MAIL FROM: Test
RCPT TO: 447999999999
DATA
Test £1234
.
logout
quit
EOF
然而,当我收到消息时,它将采用以下格式:
Test ?£1234
附加 ?对于 £ 符号的前面,我尝试过研究包括 MIME 在内的几种方法,但不太确定它们是如何实现的。
关于如何阻止并允许 £ 成功传递的任何想法
您是否尝试过先对消息进行编码?您可以使用 UTF-8 字符集中的 base64 来执行此操作:-
例如
转变:
味精=“1234英镑”
到:
味精=“wqMxMjM0”
注意:尝试使用在线转换器测试编码/解码 -https://www.base64encode.org/ https://www.base64encode.org/
对文本进行编码后,您可以通过 telnet 发送消息,方法是在 telnet 中的 DATA 命令后添加 MIME 详细信息,并指定 MIME 类型,示例脚本如下:-
telnet localhost 0000 <<-EOF
helo x
MAIL FROM: Test
RCPT TO: 447999999999
DATA
Subject: Test
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64
${msg}
.
logout
quit
EOF
希望有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)