岁月联盟 · 中国技术网 本站主页 | 安全认证 | 用户服务 | 技术论坛
新闻快报 | 新手学堂 | 黑客特区 | 程序语言 | 数 据 库 | 防 火 墙 | 路由交换 | 系统集成 | 服 务 器 | 存储备份 | 考试认证
Windows | Linux | Java | 协议分析 | 问题解答 | 进程大全 | 网页设计 | 多 媒 体 | 图库资料 | 软件下载 | 站内下载
  您现在的位置: 岁月联盟 >> Java >> J2ME >> 无线开发 >> Java正文
在Java Web框架中创建VoiceXML页面
作者:未知 文章来源:本站整理 点击数: 更新时间:2007-7-22 22:55:22

2006 年 11 月 23 日

    对于绝大多数 Web 开发人员来说,输出 HTML、XHTML 乃至 XML 是一项微不足道的任务,它只不过是创建和部署 Web 应用程序的常规流程。从显示 Internet 页面到应答电话呼叫看似一个巨大的飞跃,但实际并非如此。在这篇文章中,您将看到相同的技术如何帮助您动态创建 Web 页面以便接听(虚拟的)电话并应答呼叫。

    在过去五年中,Web 得到了比以往任何时候都长足的发展。一度主要以文本为基础的软件程序媒介 “Web 浏览器” 现已发展成为一种可供任何具有连通性的设备使用的信息源。最早列入可访问 Web 页面的设备列表的是移动电话,随后是寻呼机、手持设备、个人电子助理和其他任何可通过无线连接连入 Web 的设备。在最近几年,电话也加入了这一阵营,通过普通电话线路使用 Web 程序的呼声也越来越高。

    这种最新型的应用程序(用户通过电话访问在线服务)的更恰当的名称是电话应用程序(telephone application)。显而易见,由于电话无法用来 “单击一个链接”,应用程序交互几乎全部是通过语音处理的。用户不是采用单击链接的方式,而是说出 “账户信息” 或使用键盘按预先录制好的指令进行操作。

    通过现有(或略加修改的)Web 应用程序为电话提供服务的能力是一种强大的想法,也是许多 Web 开发人员都渴望探索的领域之一。关于 Web 应用程序与电话应用程序,要了解的最重要的一件事就是您实际上可以使用相同的技术组合来创建这两种应用程序。HTML、XHTML 和 XML 是 Web 界面之下最常用的三种底层技术,VoiceXML(或简称为 VXML)则是一种密切相关的技术,它使得电话客户机可以利用 Web 交互。JavaServer Pages 与 servlet、PHP 脚本以及 Ruby 应用程序均可响应电话请求,就像响应那些进入手持设备或 Web 浏览器的请求一样轻松。在这篇文章中,我们主要关注使用 Java 平台为简单的 VoiceXML 应用程序提供服务,但您可将本文介绍的方法同样地应用到 PHP、Perl 或您选择的任何编程语言。

VoiceXML、CCXML 还是 CallXML?

从 Voxeo 开始!

您需要首先建立一个免费的 Voxeo 开发者账户,这样才能在学习本文过程中配合练习。尽管 Voxeo 并不是任何 VoiceXML 的服务所必需的,但它确实提供了一套出色的工具,更有数千份 VoiceXML、CallXML 和 CCXML 文档页面。本文同时介绍 Voxeo 与 VioiceXML 编程,后续 developerWorks 还将为您提供更多有关 Voxeo 的内容。

    构建语音应用程序最常用的标准就是 VoiceXML。绝大多数 VXML 浏览器都支持 VoiceXML 2.0,本文通篇将使用这个版本的 VXML。VXML 符合 W3C 规范且发展迅速,目前的版本依然是 v2.1。VXML 3.0 即将推出。

    CCXML 是 Call Control XML 的缩写,也是电话标记方面符合 W3C 规范的最新一员。CCXML 比大多数 VoiceXML 实现更为高级,提供了对回叫、事件侦听器和多路及多方会话的支持。但除非您特别需要这些属性,否则最好的选择或许是继续使用 VoiceXML,VoiceXML 更加稳定,应用也更广泛。

    CallXML 是特定于 Voxeo 的一种平台。CallXML 学习起来非常轻松,并提供了对按键电话(touchtone)输入的支持(请注意,它并不支持语音识别)。CallXML 的最大缺陷就是特定于厂商。Voxeo 是一个非常出色的站点,具有无数资源,但被一家厂商锁定绝对不是个好主意。此时,大多数开发人员会再次发现,VoiceXML 更适合他们的需求。

VoiceXML 101

    在接触 VoiceXML 世界的 Java 方面之前,您应大致理解 VoiceXML 应用程序的工作原理。之后,我将为您介绍一个非常简单的 VoiceXML 应用程序。示例应用程序将使您能够查看 VXML 文件,同时确保您有权访问(且可使用)Voxeo 的 call-assignment 服务,这个服务对本文后面的内容非常关键。

一个简单的 VXML 页面

    VoiceXML 最少要以一个 VXML 文件开始,使用 VoiceXML 风格的 XML 版本告诉电话应用程序它们应该以及能够作些什么。清单 1 给出了一个非常简单的 VXML 文件。将这个文件保存到您的本机上。


清单 1. 一个非常简单的 VXML 文件

				



<?xml version="1.0" encoding="UTF-8"?>



<vxml version="2.1">

  <form>

    <block>

      <prompt>

        Things are working correctly! Congratulations.

      </prompt>

    </block>

  </form>

</vxml>




    对于 VoiceXML 来说,这非常基础,如果您对语法的了解还不够清楚,请查看 参考资料 中列出的其他 VoiceXML 文章。清单 1 中的 VXML 文件只包含一条提示信息,未提供任何交互功能,在处理 Java 代码的一节中,您将看到更高级的用法。但目前,使用这个简单的测试用例来确保您的环境工作正常。

上传应用程序

    接下来,将您的 VXML 文件放在某个可以访问的位置。如果您有 ISP,只需将 VXML 文件上传到您的 Web 站点,您可能也会希望在 Web 根目录下为您的 VoiceXML 文件创建一个目录,例如 /voicexml 或 /voice。确保这些目录和文件可通过 Web 访问(如果您不清楚如何进行这些操作,请咨询您的系统管理员或 ISP)。

    如果您没有 ISP,那么可以在 Voxeo 注册,以便使用该站点的

[1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页


  • 上一个Java:
  • 下一个Java:
  •  
    热门文章
    推荐文章
    关于我们 | 发展历程 | 网站地图 | 广告服务 | 招贤纳士 | 战略合作 | 友情链接 | 著作声明 | 联系我们
    Copyright © 2002-2007 SYUE All rights reserved.
    E_mail:WebSyue@163.Com 皖ICP备05004589号
    未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
    传奇服务端 魔域私服 魔域私服 传奇世界私服 345天龙发布网 传奇世界私服 传奇世界私服 新开传世私服 完美世界私服 征途私服 bet365 征途私服 劲舞团私服 征途私服发布网 传世私服 传奇世界私服