如何在smslib中使用队列消息传递系列方法?

时间:2012-06-05 18:19:39

标签: java message-queue smslib

我不知道如何在smslib中实现队列消息传递,我收到一个新的短信并且我存储在数据库表中,我制作了一些逻辑然后我生成了一个新的短信,我已经知道这个了 - 同步方式,但我不知道如何以异步方式做到这一点?有人可以指导我或者提示,我看到文档,但我不知道如何排队,因为我收到并发送短信???,我需要运行这个应用程序,我希望每个用户得到一个答案,因为例 我使用方法Service.getInstance()。queueMessage(msg);但它与Service.getInstance.sendMessage()的作用相同,所以我的问题是如何在smslib中使用队列?

有人可以指导我吗?

1 个答案:

答案 0 :(得分:3)

sendMessage()queueMessage()方法都通过您的调制解调器发送消息,但存在根本区别; sendMessage() 同步queueMessage() 异步(就像你自己说的那样)。

这意味着sendMessage()基本上会将消息转发给调制解调器,阻止它直到消息发送,然后返回。 但是,如果您使用的是queueMessage()方法,它会将消息存储在队列中并“在可能的情况下”发送,而不会阻塞调制解调器。

要从此消息中获取发送状态(如果已发送或未发送,任何错误等),您需要创建一个实现IOutboundMessageNotification接口的类。在那里,在process方法中,您将获得状态消息,您可以根据自己的实现来处理它。

您可以使用Service.getInstance().setOutboundMessageNotification(outboundMessageNotification);将服务设置为“收听”这些通知。 如果您想使用IInboundMessageNotification收听传入消息,则同样适用。

希望有所帮助

-Rob