【问题标题】:Getting started with Twilio SMS and raspberry piTwilio SMS 和树莓派入门
【发布时间】:2015-12-02 05:04:24
【问题描述】:

这更像是一个系统级问题,但我在开始使用 Twilio java 库和树莓派 2 上的 Apache Tomcat 7 时遇到了一些问题。我的最终目标是让 Twilio 将短信传递给树莓pi 用于控制一些简单的开关。 (现在有点矫枉过正,但使用 pi 提供的连接选项,我希望最终在系统中实现一些丰富的控制/交互性)

我正在尝试实现来自 twilio 的简单示例代码:

package com.twilio;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

import com.twilio.sdk.verbs.TwiMLResponse;
import com.twilio.sdk.verbs.TwiMLException;
import com.twilio.sdk.verbs.Message;

public class TwilioServlet extends HttpServlet {

// service() responds to both GET and POST requests.
// You can also use doGet() or doPost()
    public void service(HttpServletRequest request, HttpServletResponse response) throws IOException {
        TwiMLResponse twiml = new TwiMLResponse();
        Message message = new Message("Hello, Mobile Monkey");
        try {
            twiml.append(message);
        } catch (TwiMLException e) {
            e.printStackTrace();
        }

        response.setContentType("application/xml");
        response.getWriter().print(twiml.toXML());
    }
}

我已经使用 twilio 库编译了这个并将以下 web.xml 放在 WEB-INF 目录中:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

    <display-name>Twilio SMS App</display-name>

    <servlet>
        <servlet-name>TwilioServlet</servlet-name>
        <servlet-class>com.twilio.TwilioServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>TwilioServlet</servlet-name>
        <url-pattern>/sms</url-pattern>
    </servlet-mapping>

</web-app>

但是,当我在浏览器中加载此页面时,Tomcat 给了我一个错误:

Apache Tomcat/7.0.28 - 错误报告

HTTP 状态 404 -

类型状态报告

消息

说明请求的资源()不可用。

Apache Tomcat/7.0.28

偶尔运气好的话,服务器居然会给我:

The requested resource (twilio/sms)

我编写了一个不同的 servlet,它打印 hello world,并且使用 url 扩展名 twilio/hello 可以正常显示。我认为这与 Tomcat 在哪里寻找 Twilio api 的东西有关,但我对 Web 开发或 Java 不太熟悉,所以我有点不知所措。想法?

【问题讨论】:

    标签: java tomcat servlets raspberry-pi twilio


    【解决方案1】:

    这里是 Twilio 的梅根。

    当您说您尝试了使用 URL 扩展名 twilio/hello 的“Hello World”示例时,我假设您遵循了 local dev environment setup here

    在以下示例中,代码看起来与您在上面发布的代码几乎相同,但您是否完成了名为Let Twilio find your server 的下一步?

    除了快速入门之外,我还发现theseposts 使用 Java 和 Apache Tomcat 在第一次使用 Java 和 Twilio 时特别有用。

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-09
      • 2013-11-05
      • 2015-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多