3

我正在开发一个 Web 应用程序,并且我正在使用 twilio 网关发送 SMS。我需要在我的页面上显示 SMS 的状态。如果发送了 SMS,那么它将显示已发送,否则它将显示待处理。所以请告诉我如何知道消息是否已送达。

以下是示例代码

public class Example {

  public static final String ACCOUNT_SID = "AC5b8866a232v3b63bfgh0f9a872b2dfddd";
  public static final String AUTH_TOKEN = "7a0068ca7d07036cbbddeba03370aujdhnm";

  public static void main(String[] args) throws TwilioRestException {
    TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);

    Map<String, String> params = new HashMap<String, String>();

    params.put("To", "+number");
    params.put("From", "+number");
 System.out.println(System.getProperty("java.class.path"));
    SmsFactory messageFactory = client.getAccount().getSmsFactory();
    Sms message = messageFactory.create(params);

  }
}
4

2 回答 2

3

Twilio 布道者在这里。

首先请注意,SmsMessages资源已被弃用,您现在应该使用新的Messages端点。您可以查看发送 SMS 消息快速入门以获取更新的 Java 代码,该代码展示了如何将新资源与 Java 帮助程序库一起使用。

其次,为了在消息状态更改时接收通知,您应该在发送消息时包含StatusCallback参数。包含此参数会告诉 Twilio 在消息状态更改时向参数 URL 发出请求。

另请注意,由于您的帖子标题不清楚,“已发送”状态简单意味着 Twilio 已成功将消息发送给运营商。这并不一定意味着承运人能够将消息传递给预期的收件人。

希望有帮助。

于 2013-11-08T23:44:14.240 回答
1

Message.getStatus()是你需要的。我认为响应是queued, sending,sent或之一failed

于 2013-11-08T11:42:00.187 回答