通过http请求发送彩信

时间:2014-10-07 15:02:56

标签: android mms

我找到了一种通过我自己的应用程序发送彩信的简单方法。

据我所知,MMS是简单的http post请求,因此移动数据可以将数据发送到MMS URL发件人吗?

有什么问题?你有MMS请求或例程(java)的pcap来做这个吗?

谢谢,对不起我的英语我是法国人。

1 个答案:

答案 0 :(得分:0)

你是对的,发送MMS是根据OMA(开放移动联盟)MMS编码编码的HTTP POST-ing消息,也称为MM1接口。它有点复杂但可管理,您可以在OMA网站上找到规范。

这是我为一个项目开发的带有消息转储的java示例:

    MM1PDU sendReq = new MM1PDU();
    sendReq.setMmsVersion(MM1PDU.MMS_V10);
    sendReq.setMessageType(MessageType.SEND_REQ);
    sendReq.setFrom(new OMAAddress("foo@bar.com"));
    sendReq.setSubject("Test send");
    sendReq.addTo(new OMAAddress("joe@test.com"));
    sendReq.setMessageClass(MessageClass.PERSONAL);
    sendReq.setDeliveryReport(DeliveryReport.NO);
    sendReq.setPriority(Priority.HIGH);
    sendReq.setTransactionId("01");
    sendReq.setExpiry(new RelativeDate(2 * 24 * 60 * 60));
    sendReq.setContentType(new MimeType("text/plain; charset=utf-8"));
    sendReq.setContent("Hello world!".getBytes("utf-8"));

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    sendReq.save(baos);
    baos.close();

    System.out.println(Hex.encode(baos.toByteArray()));

十六进制输出: