CN1223157C - 接收设备和方法、发送设备和方法及通信系统 - Google Patents

接收设备和方法、发送设备和方法及通信系统 Download PDF

Info

Publication number
CN1223157C
CN1223157C CNB011410833A CN01141083A CN1223157C CN 1223157 C CN1223157 C CN 1223157C CN B011410833 A CNB011410833 A CN B011410833A CN 01141083 A CN01141083 A CN 01141083A CN 1223157 C CN1223157 C CN 1223157C
Authority
CN
China
Prior art keywords
mail
script
data
program
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB011410833A
Other languages
English (en)
Other versions
CN1342013A (zh
Inventor
松田晃一
上野比吕至
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN1342013A publication Critical patent/CN1342013A/zh
Application granted granted Critical
Publication of CN1223157C publication Critical patent/CN1223157C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/60Business processes related to postal services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/08Annexed information, e.g. attachments
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/537Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for exchanging game data using a messaging service, e.g. e-mail, SMS, MMS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

公开了用于发送或接收电子邮件的一种接收设备和方法,一种发送设备和方法,记录媒体,以及一种通信系统。可操作地与用于打开电子邮件消息的命令相关联,语法分析模块提取附加到电子邮件消息中作为附加文件的脚本,并分析提取的脚本的语法。执行模块执行相应于伴随脚本的数据或一个输入事件的处理。输出模块控制该处理结果的输出。使用这种配置,一个电子邮件的发送者可以使它的接收方快速和安全地采取发送者所期望的行动。

Description

接收设备和方法、发送设备和方法 及通信系统
                           技术领域
本发明一般涉及一种接收设备和方法,一种发送设备和方法,以及一种通信系统,尤其是涉及用于发送或接收电子邮件的一种接收设备和方法,一种发送设备和方法,以及一种通信系统。
                           背景技术
现今,用于经过网络发送/接收基于数据的文本的系统被广泛应用,例如,或者通常所说的电子邮件系统。
一个接收电子邮件(以下简称为邮件)的接收设备以文本的形式显示所接收的邮件。
有一种情况是,邮件的发送者期望邮件的接收者由于接收邮件而采取一些行动。
然而,有一个问题是,邮件发送者所期望的电子邮件的接收者采取的行动不会总是得以实现。
例如,邮件发送者所期望的行动没有被执行,除非接收者阅读了邮件,正确地理解了它的内容,从而可以按照内容采取行动。
同样,如果把数据附属到电子邮件上,所需的行动也不会被执行,除非在接收方一端与该数据相对应的应用程序没有被执行。
例如,如果在电子邮件中发送一个确定参加一个聚会的信息,发送者期望接收者阅读该邮件并返回答复是否参加聚会。
然而,在常规技术领域中,对于发送者从接收者接收答复来说,接收者必须正确理解所接收电子邮件的内容,核对聚会的进程安排,把是否参加该聚会写到回复邮件上,并把邮件返回到发送方。
然而,不能够保证发送者总能接收到来自接收方的参加/不参加的回复邮件。
通过将一个使接收者回复邮件的应用程序附贴到邮件上,可以解决这个问题。在此情况下,接收者必须启动这个应用程序。
如果比如像Othello这样的一个游戏经电子邮件被执行,例如,Othello棋盘(board)可以用符号“+”和“-”来描述,而且Othello棋子(piece)用黑和白点符号来描述,以便以文本的形式交棋盘和棋子,从而使游戏移动。
然而,每次插入一个新的移动,这些符号的排列被打乱,以致于每个玩家必须在每次的移动中校正该排列。
此外,例如还可以在Power Point(商标)(微软公司的一个应用程序)中描述一个游戏屏幕的内容,并且连同电子邮件一起发送生成的文件。但是,在此情况下,接收方每次接收电子邮件时必须启动相应的应用程序。因此,除非接收者具有相应的应用程序,否则他不能观看游戏屏幕。
此外,例如在Othello的情况下,根据游戏的规则每个玩家必须确定是否已经作出了一个新的移动,并基于新的移动翻阅棋子,有时会引起差错。
                               发明内容
因此,本发明的一个目的是使电子邮件的接收者快速而准确地采取发送者所期望的行动。
为实现本发明和按照本发明的第一个方面,提供一种用于接收从发送设备发送的邮件的接收设备,包括:提取装置,用于可操作地与用于打开邮件的命令相关联,提取作为附加文件附加到邮件的脚本和数据;执行装置,用于对提取的脚本执行语法分析;和输出控制装置,用于执行相应于伴随脚本的所述数据或相应于一个输入事件的处理,以及对处理结果的输出进行控制,其中,所述输出控制装置按照所述脚本的执行,发送相应于所述邮件的回复邮件,所述数据是所述发送设备已执行的处理的特定点的状态信息,所述输出控制装置从处理的所述特定点开始执行处理。
为实现本发明和按照本发明的第二个方面,为用于接收从发送设备发送的邮件的接收设备提供一种进行接收的方法,包括步骤:可操作地与用于打开邮件的命令相关联,提取作为附加文件附加到邮件的脚本和数据;对提取的脚本执行语法分析;和执行相应于伴随脚本的所述数据或相应于一个输入事件的处理,以及对处理结果的输出进行控制,其中,按照所述脚本的执行,发送相应于所述邮件的回复邮件,所述数据是所述发送设备已执行的处理的特定点的状态信息,所述执行处理的步骤从处理的所述特定点开始执行处理。
使用这些配置,可操作地与用于打开邮件的命令相关联,提取作为附加文件附加到电子邮件的脚本,提取的脚本的语法被分析,伴随脚本的数据或一个输入事件被处理,以及处理结果的输出被控制。从而,电子邮件的发送者能够使邮件的接收者快速和安全地采取发送者所期望的行动。
为实现本发明和按照本发明的第三个方面,提供一种用于发送邮件的发送设备,包括:生成装置,用于通过执行从接收的邮件中提取的第一脚本生成将被存储到邮件中的第二脚本;存储装置,用于把第二脚本和数据存储在邮件中;和发送控制装置,用于按照所述第一脚本的执行,对存储了第二脚本的邮件的发送进行控制,其中,所述数据是所述发送设备已执行的处理的特定点的状态信息。
为实现本发明和按照本发明的第四个方面,为用于发送邮件的发送设备提供一种进行发送的方法,包括步骤:通过执行从接收的邮件中提取的第一脚本生成将被存储到邮件中的第二脚本;把第二脚本和数据存储在邮件中;和按照所述第一脚本的执行,对存储了第二脚本的邮件的发送进行控制,其中,所述数据是所述发送设备已执行的处理的特定点的状态信息。
使用这些配置,通过执行第一脚本,第二脚本被生成,第二脚本被存储在电子邮件中,和具有第二脚本的电子邮件的发送被控制。从而,电子邮件的发送者能够使邮件的接收者快速和安全地采取发送者所期望的行动。
为实现本发明和按照本发明的第五个方面,提供一种具有用于发送和接收邮件的发送设备和接收设备的通信系统,其中发送设备包括:生成装置,用于通过执行第一脚本生成将被存储到邮件中的第二脚本;存储装置,用于把第二脚本和数据存储在邮件中;和发送控制装置,用于对存储了第二脚本的邮件的发送进行控制;接收设备包括:提取装置,用于可操作地与用于打开邮件的命令相关联,提取第二脚本和数据;执行装置,用于对提取的第二脚本执行语法分析;和输出控制装置,用于执行相应于伴随第二脚本的数据或相应于一个输入事件的处理,以及对处理的一个结果的输出进行控制,其中,所述输出控制装置按照所述第二脚本的执行,发送相应于所述邮件的回复邮件,所述数据是所述发送设备已执行的处理的特定点的状态信息,所述输出控制装置从处理的所述特定点开始执行处理。
使用这些配置,通过执行第一脚本,将被存储到电子邮件的第二脚本被生成,第二脚本被存储在电子邮件中,具有第二脚本的电子邮件的发送被控制;可操作地与用于打开邮件的命令相关联,提取第二脚本,提取的第二脚本的语法被分析,对相应于伴随第二脚本的数据或一个输入事件进行的处理被执行,和处理结果的输出被控制。从而,电子邮件的发送者能够使邮件的接收者快速和安全地采取发送者所期望的行动。
                            附图说明
下面,通过结合附图的描述和所附的权利要求,本发明上述的和其他的目的,特点和优点将变得更加清楚,其中附图中相同的部分或元件由相同的参考符号表示。其中:
图1图示了本发明实际的一个邮件发送/接收系统实施例的方框图;
图2图示了一个PDA外观的透视图;
图3图示了装在托架中的PDA的透视图;
图4图示了PDA外观的正面图;
图5图示了PDA结构的方框图;
图6示例了一个由PDA发送的邮件被其它的PDA接收的过程的示意图;
图7示例了由邮件发送PDA执行的程序图;
图8示例了由邮件发送或接收PDA执行的程序图;
图9示例了PDA的一个示范显示的正面图;
图10示例了一个解释程序的具体构造图;
图11示例了解释程序的一个操作图;
图12示例了邮件消息结构的一个示范图;
图13示例了解释程序的一个操作图;
图14示例了解释程序的一个操作图;
图15是邮件消息的一个例子的示意图;
图16是一个脚本执行的示意图;
图17是一个示范脚本的示意图;
图18示例了PDA的一个示范显示的正面图;
图19示例了PDA的另一个示范显示的正面图;
图20示例了PDA的另一个示范显示的正面图;
图21示例了PDA的另一个示范显示的正面图;
图22是描述邮件发送处理的流程图;
图23是描述邮件接收处理的流程图;
图24是描述脚本处理的流程图;
图25是描述Othello处理的一个流程图;
图26示例了实际的本发明的邮件发送/接收系统第二实施例的示意图;
图27是移动数字摄像电话的外观透视图;
图28是移动数字摄像电话显示部分的外观的部分透视图;
图29是移动数字摄像电话结构的方框示意图;
图30是解释程序的详细结构的一个方框示意图;
图31是包括存储鉴别数据的一个脚本的邮件消息的一个例子的示意图;
图32示例了在显示部分上显示的示范图标的正面图;
图33是通过平台的变化所引起的解释程序部件的变化的一个示意图;
图34是通过脚本传送媒体的变化所引起的解释程序部件的变化的一个示意图;
图35是描述通过图30中所示结构的解释程序来执行附加到电子邮件上的脚本的流程图;
图36是描述通过图30中所示结构的解释程序来执行附加到电子邮件上的脚本的流程图;
图37是描述通过图30中所示结构的解释程序来执行附加到电子邮件上的脚本的一个流程图;
图38是描述通过图30中所示结构的解释程序来执行存储在脚本数据库中的脚本的流程图;
图39是描述通过图30中所示结构的解释程序来执行存储在脚本数据库中的脚本的流程图;以及
图40是描述通过图30中所示结构的解释程序来执行存储在脚本数据库中的脚本的流程图。
                         具体实施方式
现在,参考图1,显示了本发明实际的邮件发送/接收系统的一个实施例的方框示意图。被装在托架2-1中的PDA(个人数字助理)1-1经托架2-1被连接到个人计算机3-1上。
PDA 1-1经托架2-1、个人计算机3-1、因特网4、邮件服务器5-1和5-2、以及DNS(域名系统)服务器6-1和6-2发送电子邮件到PDA 1-2。如果有的话,PDA 1-2从接收的邮件提取脚本(例如是用Java写的)并执行提取的脚本。
装在托架2-2中的PDA 1-2经托架2-2被连接到个人计算机3-2上。
PDA 1-2经托架2-2、个人计算机3-2、因特网4、邮件服务器5-1和5-2、以及DNS服务器6-1和6-2发送电子邮件到PDA 1-1。如果有的话,PDA 1-1从接收的邮件提取一个脚本并执行提取的脚本。
托架2-1被连接到PDA 1-1,并通过基于USB(通用串行总线)或RS232C的串行通信被连接到个人计算机3-1。托架2-1具有与PDA 1-1进行连接的一端和一条用于与个人计算机3-1进行连接的电缆,并且执行装入的PDA 1-1和个人计算机3-1之间的邮件发送/接收。此外,托架2-1给装入的PDA 1-1供电。
个人计算机3-1经托架2-1被连接到PDA 1-1,并经公共交换电话线路和因特网连接服务提供者(未示出)被连接到因特网4。个人计算机3-1经因特网4把从PDA 1-1接收的电子邮件发送到邮件服务器5-1,以及把从邮件服务器5-1接收的电子邮件发送到PDA 1-1。
托架2-2被连接到PDA 1-2,并通过基于USB或RS232C的串行通信被连接到个人计算机3-2。托架2-2具有与PDA 1-1进行连接的一端和一条用于与个人计算机3-2进行连接的电缆,并且执行装入的PDA 1-2和个人计算机3-2之间的邮件发送/接收。此外,托架2-2给装入的PDA 1-2供电。
个人计算机3-2经托架2-2被连接到PDA 1-2,并经公共交换电话线路和因特网连接服务提供者(未示出)被连接到因特网4。个人计算机3-2经因特网4把从PDA 1-2接收的电子邮件发送到邮件服务器5-2,以及把从邮件服务器5-2接收的电子邮件发送到PDA 1-2。
邮件服务器5-1经因特网4从PDA 1-1或者PDA 1-2接收电子邮件,并且如果接收邮件的地址的域与邮件服务器5-1不符,则把邮件传送到另一个邮件服务器,例如,邮件服务器5-2。邮件服务器5-1经因特网4从邮件服务器5-2接收被传送的电子邮件,并且如果接收的邮件的地址的域与邮件服务器5-2不符,则把邮件传送到另一个邮件服务器(未示出)。
如果经因特网4从PDA 1-1或PDA 1-2或者邮件服务器5-2接收的电子邮件的地址域与邮件服务器5-1的相应,邮件服务器5-1把接收的邮件存储到它的称为假脱机(spool)的邮箱中。
邮件服务器5-2经因特网4从PDA 1-1或者PDA 1-2接收电子邮件,并且如果接收邮件的地址的域与邮件服务器5-2不符,则把邮件传送到另一个邮件服务器,例如,邮件服务器5-1。邮件服务器5-2经因特网4从邮件服务器5-1接收被传送的电子邮件,并且如果接收的邮件的地址的域与邮件服务器5-2的不符,则把邮件传送到另一个邮件服务器(未示出)。
如果经因特网4从PDA 1-1或PDA 1-2或者邮件服务器5-1接收的电子邮件的地址域与邮件服务器5-2的相应,邮件服务器5-2把接收的邮件存储到它的称为假脱机的邮箱中。
当DNS服务器6-1从PDA 1-1或PDA 1-2或者邮件服务器5-1或5-2接收一个主机名时,DNS服务器6-1把相应于接收的主机名的IP(网际协议)地址发送到它的发送者。
当DNS服务器6-1从邮件服务器5-1或5-2接收一个域名时,DNS服务器6-1把相应于接收的域名的邮件服务器的主机名(例如,邮件服务器5-1或5-2)发送到它的发送者。
当DNS服务器6-2从PDA 1-1或PDA 1-2或者邮件服务器5-1或5-2接收一个主机名时,DNS服务器6-2把相应于接收的主机名的IP地址发送到它的发送者。
当DNS服务器6-2从邮件服务器5-1或5-2接收一个域名时,DNS服务器6-2把相应于接收的域名的邮件服务器的主机名(例如,邮件服务器5-1或5-2)发送到它的发送者。
在下文中,PDA 1-1和PDA 1-2都统称为PDA 1,除非另外说明。同样,托架2-1和托架2-2统称为托架2,以及个人计算机3-1和3-2统称为个人计算机3。
下面,描述经因特网4所执行的邮件发送/接收处理。
电子邮件经因特网4的发送和接收与邮政邮件的形式很相像。在邮政邮件中,一封信以四个步骤到达它的接收方:(I)写一封信,(II)把它放进一个邮件投递处,(II)在邮局之间发送/接收它,和(IV)把它送到接收方。
基于因特网的电子邮件,邮件以四个步骤到达它的接收方:(I)利用一个邮件发送/接收程序写邮件,(II)在写邮件完成时按下这个程序的发送按钮,(III)在邮件服务器之间传递邮件,和(IV)接收方按下他的邮件发送/接收程序的接收按钮。
邮件发送/接收程序发送和接收电子邮件。还可以把邮件发送/接收程序称作邮递员,并且它的能力相当于在马路上的邮箱和在家的信箱。
多数邮件发送/接收程序具有在一个显示屏上显示邮件的能力,或者具有对写的邮件进行编辑的能力。用户运行邮件发送/接收程序来发送和接收电子邮件。
典型的邮件发送/接收程序是微软公司的Outlook Express(商标),QUALCOMM公司的Eudora pro(商标),以及一些免费软件,例如像Becky!InterMail,和AL-Mail32。
可以说,每个邮件服务器具有邮局的作用。邮件服务器接收从邮件发送/接收程序发送来的邮件,并且把接收的邮件发送到邮件发送/接收程序。例如,一个典型的邮件服务器程序是Sendmail公司的Sendmail(商标)。
邮件服务器具有三个主要作用。第一,邮件服务器适当地把从一个邮件发送/接收程序接收的邮件发送到另一个邮件服务器。第二,邮件服务器把从另一个邮件服务器接收来的邮件安排成按目的地(或接收方)分类,并管理这样安排的邮件。第三,在收到请求时,邮件服务器把管理的邮件发送到邮件发送/接收程序。
在处理过程和通信过程中,对于把邮件发送到一个邮件服务器的邮件发送/接收程序的处理过程与对于把邮件发送到邮件发送/接收程序的邮件服务器的处理过程是不同的。
处理过程被称作一个协议。在许多情况中,对于把邮件发送到邮件服务器的邮件发送/接收程序的处理过程和对于把邮件发送到另一个邮件服务器的邮件服务器的处理过程是基于SMTP(简单邮件传送协议)的协议执行的。
在多数情况下,对于从邮件服务器接收邮件的邮件发送/接收程序的处理是基于POP3(邮局协议版本3)的协议执行的。
邮件服务器对SMTP和POP3具有不同的端口。当发送邮件时,邮件发送/接收程序经与SMTP对应的端口与邮件服务器通信,并且当接收邮件时,经与POP3对应的端口与邮件服务器通信。
在邮政邮件的情况下,一封从国外发送的信件每次经过一个国家时会被加盖邮戳。同样,电子邮件也会被作标记。
当电子邮件被发送时,每经过一个邮件服务器,邮件主题的首部会被盖邮戳。该邮戳被称作一个首标,因为它被附加到邮件的首部。
首标大体上分成三块:邮件的(最靠近主体的)最下部分是由邮件发送/接收程序附加的一块,上面两部分是由邮件服务器附加的两块。
随这些部分的递进首标存储越来越新的信息。
由邮件发送/接收程序附加的首标信息与邮政邮件的地址类似。“来自”存储了发送者的邮件地址,“送到”存储了接收者的地址,并且“主题”存储了邮件消息的标题。
由邮件服务器附加的信息块中的“接收”存储了一个时间标记。“来自”存储了该邮件已经通过的服务器的名称。
每个邮件服务器用信息块“接收”来附加每个经过的邮件。因此,从底部到顶部顺序地核查“接收”信息块可以表明这个邮件已经经过的邮件服务器。
下面描述邮件发送/接收程序的设置。必须为发送的邮件设置适当的信息,该信息包括相应于邮件发送/接收程序的电子邮件地址和相应于SMTP的邮件服务器的主机名。
相应于邮件发送/接收程序的电子邮件地址是相应于发送者姓名的发送者的地址。如果相应于邮件发送/接收程序的电子邮件地址没有设置,接收方不能知道邮件的发送者。如果不知道目的地址,就不能回复邮件。
邮件发送/接收程序把电子邮件地址相应地插入到首标中的“来自”行。相应于邮件发送/接收程序的电子邮件地址还可以作为接收方回复的目的地址。一些邮件发送/接收程序能够通过设置返回地址的项目来改变回复邮件的接收方。
对于相应于SMTP的邮件的主机名,设置邮件发送/接收程序发送邮件到达的邮件服务器的主机名。当进行发送邮件时,邮件发送/接收程序基于相应于SMTP的邮件服务器的主机名把邮件发送到邮件服务器。例如,主机名写成“mailserver.so-net.ne.jp”。
基于一个域名来写电子邮件地址和主机名。域名被写成一个国家名、机构组织类型、和公司名称,彼此用一个逗点“.”分开。在每个域名中,较大的机构位于域名字符串的后面。
每个电子邮件地址由用户名跟随分界符“@”跟随域名组成。
主机名由服务器名称跟随分界符“·”跟随域名组成。
当这样书写时,每个电子邮件地址或主机名提供一个唯一的电子邮件地址或主机名。
电子邮件地址和主机名的域名可能有较高(upper)和较低(lower)的情况,在它们之间没有区别。
下面描述通过一个邮件发送/接收程序把电子邮件发送到一个邮件服务器。在发送邮件时,邮件发送/接收程序必须获得相应于主机名的IP地址。IP地址被写成数字和逗点的组合,例如“192.168.0.1”。
DNS是一个用于把主机名转换成IP地址的系统。因特网4具有许多DNS服务器。当一个主机名被发送到任意的DNS服务器时,那个DNS返回相应于那个主机名的IP地址。
例如,图1中所示的DNS服务器6-1存储对应于主机名A的IP地址a.a.a.a。
在访问一个邮件服务器之前,邮件发送/接收程序立即从DNS服务器得到那个邮件服务器的IP地址。
下面描述从一个邮件发送/接收程序把电子邮件发送到一个邮件服务器的过程。通过下面SMTP的过程,邮件发送/接收程序把电子邮件发送到邮件服务器。
STMP过程包括TCP(传输控制协议)建立、邮件服务器调用、准备发送、地址通知、发送主体、结束确认、和TCP结束处理。每个邮件服务器调用、准备发送、地址通知、发送主体、和结束确认包括来自邮件发送/接收程序的一个请求和来自邮件服务器的一个应答。
在SMTP处理过程中,通过命令语句和返回邮件码,邮件发送/接收程序与邮件服务器彼此通信。例如在命令语句“RCPT from:y@so-net.ne.jp”中,“RCPT”是用于告诉邮件目的地址“y@so-net.ne.jp”的一个命令。
在返回邮件码中,例如“是(Yes)”是“250”。一些返回邮件码是:251表示“没有此用户存在”;450表示“邮箱在使用”;451表示“由于错误异常结束”;452表示“没有足够的所需资源”;501表示“命令语法错误”;502表示“命令无效”;和550表示“没有发现邮箱”。
电子邮件具有广播能力。该能力可以把一个相同的邮件消息发送给许多接收者。
例如,当把多个邮件地址写到首标的行“送到”时,邮件发送/接收程序对这些邮件地址的每个地址重复进行发送RCPT命令的处理过程。
此外,通过使用专用首标也可以支持广播,比如“CC”(抄送)或“BCC”(隐蔽副本)。
使用CC行或BCC行发送邮件时,每个邮件的接收者知道所接收的邮件是原件的一个拷贝,因为首标的“送到”行没有接收方地址。
使用CC行发送邮件时,首标存储接收者的邮件地址。当使用BCC行发送邮件时,邮件发送/接收程序在处理RCPT命令传输时,从首标中删除BCC行,并发送邮件的主体。当发送者不想把接收方地址告诉一个特殊的邮件消息所广播的接收者时,使用BCC行传输邮件是有用的。
下面描述一个邮件服务器把邮件传送到一个靠近邮件的目的地址的邮件服务器的处理过程。按照SMTP过程在邮件服务器之间进行邮件的传输。
在邮件服务器之间的邮件传输过程中,发送邮件服务器从邮件的目的地址中提取域名,并把提取的域名发送到DNS服务器。
因为DNS服务器把域名和邮件服务器主机名之间的联系存储成一个MX记录,所以DNS服务器把相应于域名的邮件服务器的主机名发送到已经发送域名的邮件服务器。
例如,图1中所示的DNS服务器6-2存储主机名B作为与之相关的域名B.B.B。
已经收到主机名的邮件服务器把它发送到DNS服务器。
因为DNS服务器把主机名和IP地址之间的联系存储成A记录,所以DNS服务器把相应于主机名的IP地址发送到已经发送主机名的邮件服务器。
例如,图1中所示的DNS服务器6-2存储IP地址b.b.b.b作为与之相关的主机名B。
按照上述的SMTP过程,已经发送了IP地址的邮件服务器把邮件发送到相应于邮件目的地址的域名的邮件服务器。
通过使用邮件发送清单,每个邮件服务器可以广播邮件。在使用一个邮件发送清单来广播邮件的过程中,使用一种别名功能。
使用别名功能的每个邮件服务器为预定的邮件地址(典型地址)存储多个地址组。当每个邮件服务器接收到一个地址是典型地址的邮件消息时,邮件服务器把接收的邮件的一个拷贝再发送给记录在典型地址中的所有地址。邮件服务器顺序地把邮件发送到登记的邮件地址而不用再写邮件的首标。
相应于域名的邮件服务器把接收的邮件存储到它的称作假脱机的邮箱中。每个邮件服务器为每个用户管理邮件,并当相应于目的地址的用户的邮件发送/接收程序的接收按钮被用户按下时传递邮件。
根据SMTP邮件服务器不能把邮件发送到邮件发送/接收程序的原因是因为,执行邮件发送/接收程序的设备可能没有运行或者没有连接到因特网4。
基于POP3邮件服务器把邮件发送到邮件发送/接收程序。POP3处理过程包括TCP建立、邮件服务器调用、用户鉴别、确认邮箱内容、检查接收邮件消息的数量、接收主体、请求删除、确认结束、和结束TCP。·每个邮件服务器调用的处理、用户鉴别、确认邮箱内容、检查接收邮件消息的数量、接收主体、请求删除、和确认结束的处理都包括一个请求以及来自邮件发送/接收程序的一个邮件服务器应答。
在POP3中的命令语句和返回邮件码与SMTP中的不同。
在POP3中,除非通过用户的ID和向邮件服务器预先登记的密码用户被验证,否则邮件接收处理不被执行。
图2至4图示了PDA 1的外观。图2图示了被拿在用户手中的PDA 1的透视图。图3图示了装在托架2中的PDA 1的透视图。图4图示了PDA 1的正面图。
PDA 1的外壳被设计成可以一只手拿着并处于易于操作的状况。在PDA1的顶端安排一个插槽以便可以装入结合一种半导体存储器的存储条(Memory Stick)(商标)11。
PDA 1被装在托架2中以致于PDA 1的底部与托架2的上表面相接触。在PDA 1的底部,安排一个用于把PDA 1连接到托架2的USB(通用串行总线)端口(未示出)。
PDA 1具有一个显示部分21,一个按键部分22,和一个慢进转盘23。
显示部分21例如由一种比如液晶显示设备的超薄显示设备构成,并显示图标、缩略图和文本。在显示部分21的上部安排一个触摸板。通过用手指或一只笔压触摸板,用户可以把预定的数据或命令输入进PDA 1。
按键部分22由输入键构成,例如通过它用户可以输入选择在显示部分21上显示的图标或缩略图。
慢进转盘23可以被旋转或被按在PDA 1的主体中,以便例如可以选择显示在显示部分21上的图标或缩略图。
图5显示了PDA 1的结构。一个CPU(中央处理单元)31与振荡器32提供的时钟信号相同步执行各种程序,比如执行存储在快闪ROM(只读存储器)33或EDO DRAM(扩展数据输出动态随机存储器)34中的操作系统和开发的应用程序。
快闪ROM 33由快闪存储器构成,是一种EEPROM(电可擦除只读存储器)类型,通常存储程序和运算参数中基本上固定的数据,以便由CPU 31使用。EDO DRAM 34存储由CPU 31所使用的那些在程序中或在执行中随时变化的参数。
一个存储条接口35从装载在PDA 1中的存储条11上读取数据,并把从CPU 31提供的数据写到存储条11上。
一个USB(通用串行总线)接口36,与来自振荡器37提供的时钟信号同步地从一个是USB设备的驱动器51输入数据或程序,并且把来自CPU 31的数据提供给驱动器51。USB接口36与来自振荡器37提供的时钟信号同步,从是USB设备的托架2输入数据或程序,并且把来自CPU 31的数据提供给托架2。
驱动器51从装在驱动器51中的一个磁盘61、一个光盘62、一个磁光盘63、或一个半导体存储器64读取数据,并且经USB接口36把这些数据或程序提供给CPU 31或EDO DRAM 34。与此同时,驱动器51把数据或程序存储到磁盘61、光盘62、磁光盘63、或半导体存储器64中。
快闪ROM 33、EDO DRAM 34、存储条接口35、和USB接口36经地址总线和数据总线被连接到CPU 31。
显示部分21经LCD总线从CPU 31接收数据,并基于接收的数据来显示一个图像或文本。当安置在显示部分21上部的触摸板被操作时,一个触摸板控制器38接收数据(例如,通过触模所表示的坐标)并经串行总线把相应于接收数据的信号提供给CPU 31。
一个EL(电致发光)驱动器39操作一个安置在显示部分21的液晶设备后侧上的电致发光元件,以便控制显示部分21的亮度。
通过利用红外光线作为媒介,一个红外线通信器40把接收的数据经一个UART(通用异步收发器)从CPU 31发送到其他的设备(未示出),并通过利用红外光线作为媒介,把接收的数据从其他的设备发送到CPU 31。PDA 1能够经UART与其他的设备进行通信。
一个音频再现部分42,例如包括一个扬声器和一个音频数据编解码电路,解码例如经因特网4收到的音频数据,再现接收的数据并使再现的数据发出声音。例如,音频再现部分42再现经缓冲器41从CPU 31提供的音频数据以便使再现的音频数据发出声音。
按键部分22,例如包括输入键,当把各种命令输入进CPU 31时可由用户进行操作。
用户可以旋转或按压慢进转盘23以便给CPU31提供相应的数据。
供电电路43转换电池52或AV(交流电)适配器53所提供的电源电压,并把转换的电压提供给上述电路,CPU31至音频再现部分42。
下面参考图6描述由PDA 1-1发送邮件由PDA 1-2进行接收的过程。PDA1-1经托架2-1、个人计算机3-1和因特网4发送邮件服务器5-1的主机名到DNS服务器6-1。DNS服务器6-1经因特网4把存储在A记录中与接收的主机名相关联的邮件服务器5-1的IP地址发送到PDA 1-1。
基于从DNS服务器6-1接收的邮件服务器5-1的IP地址,PDA 1-1根据SMTP(简单邮件传送协议)过程经个人计算机3-1和因特网4把邮件发送到邮件服务器5-1。
邮件服务器5-1核对接收邮件的目的地址,并且如果目的地址的域名与邮件服务器5-1的域不符,则经因特网4把域名发送到DNS服务器6-2。DNS服务器6-2经因特网4把存储在MX记录中与接收的域名相关联的邮件服务器5-2的主机名发送到邮件服务器5-1。
邮件服务器5-1把邮件服务器5-2的主机名发送到邮件服务器6-2,该主机名相应于经因特网4从DNS服务器6-2接收的目的地址。经过因特网4,DNS服务器6-2把存储在A记录中与接收的主机名相关联的邮件服务器5-2的IP地址发送到邮件服务器5-1。
经过因特网4,邮件服务器5-1按照接收的IP地址并根据SMTP过程把邮件传送到邮件服务器5-2。邮件服务器5-2检查接收的邮件的目的地址,并且如果目的地址的域名符合邮件服务器5-2的域,把接收的邮件存储到它的称作假脱机的邮箱中。
PDA 1-2经托架2-2、个人计算机3-2和因特网4把邮件服务器5-2的主机名发送到DNS服务器6-2。DNS服务器6-2经因特网4把相应于接收的主机名的邮件服务器5-2的IP地址发送到PDA 1-2。
基于接收的邮件服务器5-2的IP地址,PDA 1-2根据POP3(邮局协议版本3)过程经托架2-2、个人计算机3-2和因特网4从邮件服务器5-2请求邮件。PDA 1-2根据POP3过程经托架2-2、个人计算机3-2和因特网4从邮件服务器5-2接收邮件。
图7显示通过PDA 1发送邮件所执行的程序。一个操作系统(以下称为一个OS)101控制PDA 1的基本操作。
一个驱动程序102-1是用于控制显示部分11进行显示的程序。一个驱动程序102-2是用于控制触摸板控制器38进行操作的程序。一个驱动程序102-3是用于控制音频再现部分42中音频数据的再现的程序。一个驱动程序102-4是用于执行相应于慢速转盘23中输入操作的程序。
一个程序库103存储了多个例行程序,以便由应用程序使用,比如一个邮件发送/接收程序104。
一个邮件发送/接收程序104经托架2-1或2-2、个人计算机3-1或3-2、以及因特网4发送和接收电子邮件。
值得注意的是,图7中所示的程序的结构实质上与一个现有技术的邮件发送/接收设备的程序相同。
图8示例了当PDA 1发送或接收邮件时它所执行的程序。当从邮件服务器5-2接收邮件时,邮件发送/接收程序104在显示部分11上显示一个例如图9所示的图像。当对接收的邮件进行显示时,邮件发送/接收程序104把接收的邮件送到一个解释程序106。
程序库105存储的例行程序在解释程序106执行脚本时被使用。
解释程序106是一个程序,该程序被插入邮件发送/接收程序104,并从接收的邮件中提取一个脚本以便执行所提取的脚本。例如,解释程序106根据脚本的执行在显示部分11上使驱动程序102-1显示一个预定的图像,并且使驱动程序102-3再现来自音频再现部分42的预定音频数据。
解释程序106使相应于显示部分11和音频再现部分42的驱动程序102-1至102-4执行图像显示和音频再现。因此,即使由于PDA 1的类型不同而导致显示部分11或音频再现部分42的类型不同,解释程序106也可以可靠地执行图像显示和音频再现。
此外,解释程序106使相应于比如显示部分11和音频再现部分42之类的驱动程序102-1至102-4执行比如图像显示和音频再现的处理。因此,即使在PDA 1中合并了根据脚本的执行被操作的各种类型的设备,解释程序106也能够可靠地控制这些设备。
应该注意的是,如果被显示的邮件消息包含一个脚本,则邮件发送/接收程序104可以启动解释程序106并装入程序库105。
图10图示了解释程序106的详细结构。解释程序106包括一个语法分析模块121,一个执行模块122,和一个输出模块123。
例如,当邮件发送/接收程序104显示一个如图11所示的邮件消息151时,语法分析模块121从邮件发送/接收程序104接收该邮件消息151,从接收的邮件消息151中提取一个脚本,并把提取的脚本送到执行模块122。
图12显示了由PDAl发送或接收的消息151的一个示范结构。如果邮件消息151包含脚本,则在邮件主体之后存储它。如果存储的脚本需要数据,则邮件消息151在脚本之后存储所需的数据以便由解释程序106执行脚本。
如果数据连同脚本一起被存储在邮件消息151中,语法分析模块121提取脚本和数据并把提取的脚本和数据送到执行模块122。
图13示例了当邮件消息存储脚本时解释程序106所执行的处理流程。语法分析模块121把提取的脚本送到执行模块122。
执行模块122执行接收的脚本。例如,依据脚本执行的结果,输出模块123显示一个图像、输出音频、或者把输出数据171存储到EDO DRAM34中。
另一方面,如果语法分析模块121没有从邮件消息151中提取脚本(也就是说,在邮件消息151中不包含脚本),则语法分析模块12使邮件发送/接收程序104执行后面的处理,如图14中所示的执行正常的邮件处理。此时,邮件发送/接收程序104把相应于邮件消息151主体的文本数据191送到驱动程序102-1。基于文本数据191,驱动程序102-1在显示部分11上显示邮件消息151的主体。
图15显示了用于执行游戏Othello的邮件消息151的一个例子。在图15所示的例子中,邮件消息包括一个主体和一个脚本。图15中所示的包含在邮件消息中的脚本是在MIME(多用途的网际邮件扩充协议)中描述的应用/x-emma。
在图15所示的邮件消息151中,
“To:“Someone”someone@sony.co.jp”至“the second move of Othello”对应于主体,以及“------=_NextPart_000_0011_01BFA9E7.2EE28580”至“----Next_Part(Wed_Apr_19_11:42:48_2000_705)----”对应于脚本。
图16示意地显示了脚本的执行。脚本执行分成输入块和执行块。
在输入块中,通过语法分析模块121从邮件消息151中提取脚本。
执行块进一步分成一个数据输入块、一个处理执行块、和一个输出块。在数据输入块中,例如执行模块122为输入数据使驱动程序102-1显示一个图像,并使驱动程序102-2控制来自触摸板控制器38的输入。
例如,通过对相应于一个输入板、按键部分22、慢进转盘23、传感器、存储条接口35、外部附加键盘、调制解调器、USB接口36、红外线通信器40、和驱动器52的驱动程序进行控制,由执行模块122执行数据输入块中的数据输入。
在处理执行块中,执行模块122执行脚本的逻辑处理。
在输出块中,按照在处理执行块中的处理,输出模块123例如使驱动程序102-1在显示部分11上显示一个表示处理结果的图像,并使驱动程序102-3输出一个来自音频再现部分42的处理结果的音频信号。
在输出块中,例如,通过对相应于显示部分11、调制解调器、音频再现部分42、存储条接口35、USB接口36、红外线通信器40、和驱动器52的驱动程序进行控制,由输出模块123执行输出。
图17显示了用于执行游戏Othello的一个脚本的例子。当图17中所示的脚本被读入解释程序106时,执行模块122启动onload()方法,引起show()方法,在显示部分11上显示Othello棋盘和棋子,如图18所示。
当用户输入如图19所示的新的移动时,执行模块122通过ontap()方法在Othello棋盘上捕获到新移动所产生的坐标。执行模块122通过check()方法确定对应于新的移动的坐标是否满足Othello规则的规定要求。如果发现新的移动不满足要求,则执行模块122通过confirm()方法告知一个错误(在显示部分11上显示一个错误消息),重复执行ontap()方法。
如果发现新的移动满足要求,则执行模块122通过update()方法更新棋子表面,如图20所示。输出模块123通过sendmail()方法执行把邮件发送到对手的一个处理,如图21所示,据此,通过exit()方法结束处理。
下面结合图22所示的流程图,描述通过PDA 1执行邮件发送/接收程序104来发送邮件的处理过程。在步骤S11中,邮件发送/接收程序104使USB接口36把相应于邮件服务器1-1的主机名经托架2、个人计算机3、和因特网4发送到DNS服务器6-1,并从DNS服务器6-1得到相应于邮件服务器5-1的IP地址。
步骤S12至S18的处理例如是基于SMTP过程而执行的。
在步骤S12中,邮件发送/接收程序104使USB接口36经托架2、个人计算机3、和因特网4来规定IP地址,从而把PDA 1连接到邮件服务器5-1。在步骤S13中,邮件发送/接收服务器104使USB接口36经托架2、个人计算机3、和因特网4调用邮件服务器5-1(也就是调用一个通过邮件服务器5-1所执行的邮件服务程序,例如,sendmail(商标))。
在步骤S14中,邮件发送/接收程序104使USB接口36请求邮件服务器5-1,以便为邮件发送进行准备(也就是,通知由邮件服务器5-1执行的邮件服务程序执行邮件发送过程)。在步骤S15中,邮件发送/接收程序104使USB接口36通知邮件服务器5-1所发送的邮件消息的目的地址(邮寄地址)。
在步骤S16中,邮件发送/接收程序104使USB接口36把邮件消息发送到邮件服务器5-1。在步骤S17中,邮件发送/接收程序104使USB接口36确认与邮件服务器5-1的处理结束。
在步骤S18中,邮件发送/接收程序104使USB接口36断开与邮件服务器5-1的连接,据此处理结束。
因此,PDA 1能够把邮件发送到邮件服务器5-1。
值得注意的是,在邮件服务器5-1把邮件传送到邮件服务器5-2的处理过程中,除了获取相应于邮件目的地址的处理之外,其余的处理通常与邮件的发送处理过程是相同的,因此描述邮件传送的处理被省略。
下面结合图23所示的流程图,描述通过PDA 1执行邮件发送/接收程序104来接收邮件的处理过程。在步骤S31,邮件发送/接收程序104使USB接口36经托架2、个人计算机3、和因特网4把相应于邮件服务器5-2的主机名发送到DNS服务器6-2,并从DNS服务器6-2得到相应于邮件服务器5-2的IP地址。
步骤S32至S40的处理例如是基于POP3过程而执行的。
在步骤S32中,邮件发送/接收程序104使USB接口36经托架2、个人计算机3、和因特网4来规定IP地址,把PDA 1连接到邮件服务器5-2。在步骤S33中,邮件发送/接收服务器104使USB接口36经托架2、个人计算机3、和因特网4调用邮件服务器5-2。
在步骤S34中,邮件发送/接收程序104使USB接口36经托架2、个人计算机3、和因特网4把PDA 1的用户ID和用户的密码发送到邮件服务器5-2,使邮件服务器5-2执行用户鉴别。
在步骤S35中,邮件发送/接收程序104使USB接口36通过邮件服务器5-2检查邮箱的内容(存储寄给PDA 1的用户的邮件)。
在步骤S36中,邮件发送/接收程序104使USB接口36通过邮件服务器5-2发送地址为PDA 1的用户的邮件消息数并接收邮件数。
在步骤S37中,邮件发送/接收程序104使USB接口36通过邮件服务器5-2发送地址为PDA 1的用户的邮件并接收从邮件服务器5-2发送的邮件。然后,邮件发送/接收程序104使USB接口36请求邮件服务器5-2删除地址为PDA 1的用户的邮件。于是邮件服务器5-2删除地址为PDA 1的用户的邮件。
在步骤S39中,邮件发送/接收程序104使USB接口36确认与邮件服务器5-2的处理结束。
在步骤S40中,邮件发送/接收程序104使USB接口36断开与邮件服务器5-2的连接,据此处理结束。
因此,PDA 1能够从邮件服务器5-2接收地址为PDA 1的用户的邮件。
下面结合图24所示的流程图,描述PDA 1执行邮件发送/接收程序104和解释程序106进行脚本处理的过程,该处理过程是在邮件发送/接收程序104显示一个接收的邮件消息时被执行的。在步骤S51中,邮件发送/接收程序104读取接收的邮件消息151。
在步骤S52中,邮件发送/接收程序104检查读取的邮件消息151中是否包含一个脚本。如果发现一个脚本,邮件发送/接收程序前进到步骤S53以便开始解释程序106。邮件发送/接收程序104把邮件消息送到解释程序106。
值的注意的是,解释程序106可以预先与邮件发送/接收程序104一起开始。
在步骤S54中,解释程序106的语法分析模块121基于邮件消息151的描述从邮件消息151中提取脚本。在步骤S55中,解释程序106的执行模块122执行提取的脚本。
在步骤S56中,解释程序106的输出模块123依据脚本执行的结果执行图像显示或音频输出处理。在步骤S57中,邮件发送/接收程序104结束解释程序106,据此处理结束。
在步骤S52中,如果没有发现脚本,不需要脚本处理,从而可以省略步骤S53至S57的处理,据此处理结束。
因此,当一个脚本被包含在邮件消息151中时,PDA 1启动解释程序106以执行相应于该脚本的处理。
值得注意的是,步骤S52的处理可以由已经启动的解释程序106的语法分析模块121来执行。
下面结合图25所示的流程图,描述Othello的处理过程,这是一个更具体的脚本执行的示例。在步骤S71中,邮件发送/接收程序104读取接收的邮件151。
在步骤S72中,邮件发送/接收程序104启动解释程序106。在步骤S73中,解释程序106的输出模块123在显示部分11上显示Othello的一个棋盘和棋子。
在步骤S74中,执行模块122确定是否产生一个新的移动。如果没有发现新的移动,执行模块122重复步骤S74的确定处理,直到发现新的移动。
如果在步骤S74中发现新的移动,则执行模块122在步骤S75中读取新的移动的坐标(在Othello棋盘上所表示的一个位置)。在步骤S76中,执行模块122确定新的移动是否满足Othello规则中规定的要求。如果发现新的移动满足要求,执行模块122前进到步骤S77,在Othello棋盘上把一个棋子放到相应于新的移动所在的位置。
在步骤S78,执行模块122执行棋子更新操作,诸如翻转特定棋子的面。在步骤S79,输出模块123在显示部分11上显示Othello棋盘和棋子。
在步骤S80,输出模块123使USB接口36向对方发送一个新的移动。在步骤S81,邮件发送/接收程序104结束解释程序106,接着处理结束。
在步骤S76,如果发现新的移动不满足Othello规则的要求,那么,在步骤S82,输出模块123在显示部分11上显示一个错误消息,通知用户该错误,接着该过程返回到步骤S74,重复输入一个新的移动的处理。
因此,PDA 1根据包括在邮件消息151中的脚本执行Othello游戏处理。
正如所描述的,当用户读取该邮件消息151时,PDA 1执行一个邮件消息151的发送者所期望的动作。如果该用户不读取邮件消息151,PDA 1不执行包括在邮件消息151中的脚本,以使脚本处理的负载最小化。
PDA 1可以仅仅通过执行解释程序106执行相应于脚本描述的各种处理,从而,与附属数据到邮件相比较,不需要存储相应于附加数据种类的许多应用程序。
此外,因为解释程序106执行脚本,如果解释程序106安全设置,与通过执行附着在邮件的程序直接执行处理相比较,该处理可被更安全地执行。
下面描述实际上作为本发明的第二实施例的邮件发送/接收系统。
图26示出实际上作为本发明的第二个实施例的邮件发送/接收系统。公共交换网202经由基站201-1至201-4连接到PDA 1-1或1-2或者移动数字摄像机电话301-1和301-2,基站是不动的无线基站,每个安排在每个通过分派通信业务规定区域为期望大小而获得的小区中。
基站201-1至201-4通过码分多址(code division multiple access),例如W-CDMA(宽带码分多址)无线连接移动无线基站PDA 1-1和1-2以及移动数字摄像机电话301-1和301-2,并且可以通过利用2GHz频带以最大数据传送率2Mbps与PDA 1-1和1-2以及移动数字摄像机电话301-1和301-2交换大量数据。
因为PDA 1-1和1-2以及移动数字摄像机电话301-1和301-2可以基于W-CDMA以高数据传送率与基站201-1至201-4交换大量数据,可以执行各种各样的数据通信,不仅包括音频通话,而且包括电子邮件发送/接收、简化的主页浏览、以及图像发送/接收。
基站201-1至201-4通过电线连接到公共交换网202。公共交换网202连接到因特网4、用户接线终端设备、计算机网络以及例如未示出的单位的内部网。
因特网服务供应商的访问服务器203连接到公共交换网202以及连接到由因特网服务供应商拥有的内容服务器204。
响应来自用户接线终端设备、PDA 1-1或1-2或者移动数字摄像机电话301-1至301-4的请求,内容服务器204例如以压缩HTML(超级文本标志语言,Hyper Text Markup Language)的形式提供内容,诸如一个简化的主页。
因特网4连接到很多的WWW(万维网,World Wide Web)服务器205-1至205-N。WWW服务器205-1至205-N是从用户接线终端设备、PDA 1-1和1-2以及移动数字摄像机电话301-1和301-2按照TCP(Transmission ControlProtoco)/IP(Internet Protocol)标准访问的。
使用PDA 1-1和1-2以及移动数字摄像机电话301-1和301-2与基站201-1至201-4的通信通过2Mbps简化的传送协议进行,同时基站201-1至201-4到因特网4以及WWW服务器205-1至205-N的通信通过TCP/IP而进行。
应当注意,管理控制器206经由公共交换网202连接到用户接线终端设备、PDA 1-1和1-2、以及移动数字摄像机电话301-1和301-2,从而对用户接线终端设备、PDA 1-1和1-2、以及移动数字摄像机电话301-1和301-2上执行验证处理以及费用处理。
移动数字摄像机电话301-1和301-2通过与PDA 1同样的处理经由公共交换网202和因特网4发送或者接收邮件。如果脚本包含在接收的邮件中,移动数字摄像机电话301-1和301-2激活解释程序106去执行该脚本。
在下文中,移动数字摄像机电话301-1和301-2通常被称为移动数字摄像机电话301,除非需要在两者之间具体地区别。
下面描述一种本发明适用的移动数字摄像机电话301的外部结构。如图27所示,移动数字摄像机电话301由显示器部分302和主体303以及在中央围绕可折叠的铰链304组成。
该显示部分302在左上侧具有一个可收缩的发送/接收天线305。移动数字摄像机电话301经由天线305对基站201-1至201-4的任何一个发送和接收无线电波,该基站是不动的无线基站。
该显示部分302具有一个摄像机部分306,在中间部分上部可以在大约180度的范围内旋转。移动数字摄像机电话301通过一个安装在摄像机部分306中的CCD摄像机307使期望物体成像。
如果摄像机部分306由用户旋转大约180度,显示部分302安置有一个扬声器308,该扬声器设置在摄像机部分306面对的正面的中央后部,如图28所示。因此,移动数字摄像机电话301得到正常的通话模式。
此外,显示器302在前中央部分具有一个液晶显示器309。液晶显示器309除了显示无线电波接收状态、电池剩余量以及作为电话号簿登记记录的姓名和电话号码以及打的电话之外,显示电子邮件的内容、简化的主页以及由摄像机部分306的CCD摄像机拍摄的图像。
另一方面,主体303在前表面上具有操作键310,诸如数字键″0″至″9″,一个呼叫键,一个重拨键,一个清除/电源键,一个清除键,以及一个电子邮件键。各种各样的命令是从这些操作键310输入到移动数字摄像机电话301中的。
在主体303的操作键310下面,设置有一个备忘录按钮311和一个麦克风312。当该备忘录按钮311被按下时,移动数字摄像机电话301记录打电话的对方的声音。移动数字摄像机电话301在通话模式中通过麦克风312获得用户的声音。
此外,一个可旋转的慢进转盘313设置在主体303的操作键310的上方,其中慢进转盘313稍微从主体303的表面突出。根据慢进转盘313的旋转操作,移动数字摄像机电话301执行例如显示在液晶显示器309上的电话号码薄目录或者电子邮件消息的滚动、简化的主页的显示页的翻转以及显示的图像的馈送。
例如,由用户通过慢进转盘313的转动,主体303从显示在液晶显示器309上的电话号码薄目录中选择一个期望的电话号码,并且当慢进转盘313被按压到主体303里时,键入选择的电话号码,因此自动地开始到选择的电话号码方的呼叫。
应当注意到,未示出的电池组组件被装配到主体303的后面。当清除/电源键被接通时,从电池组提供电源给每个电路,使移动数字摄像机电话301准备好工作。
主体303在左侧上部还具有一个存储条插槽314,其中可拆卸的存储条11被装入。当备忘录按钮311被按下时,移动数字摄像机电话301将打电话的对方的声音记录到装入的存储条11中。按照用户的操作,移动数字摄像机电话301记录电子邮件消息、简化的主页或者由CCD摄像机307拍摄的图像到该装入的存储条11里。
存储条11是一种由本申请人索尼公司开发的快闪存储卡。存储条11结合快闪存储器单元和EEPROM(电可擦除可编程只读存储器,ElectricallyErasable and Programmable Read Only Memory),放在一个具有尺寸21.5mm×50mm×2.8mm的塑料壳体中。存储条经由一个10针端子允许写和读取各种各样的数据,诸如图像、声音和音乐。
存储条11使用一个专有的串行的协议保证和它使用的设备的兼容性,即使由于增加其容量,插入的快闪存储器的规格已经变化,也能实现最大写速率1.5MB/S和最大读速率2.45MB/S的高速性能,并且通过准备一个错误删除阻止开关保证高可靠性。
因此,通过配置可拆卸的装配存储条11,移动数字摄像机电话301经由该存储条11可以和其他的电子设备共享数据。
如图29所示,移动数字摄像机电话301配置为,用于集中控制显示部分302和主体303的每个部分的主控制器351,经由主总线361连接到电源电路352、操作输入控制器353、图像编码器354、摄像机接口355、液晶显示器(Liquid Crysta1 Display)控制器356、图像解码器357、多路复用器/多路分解器358、存储再现部分363、调制/解调电路359以及音频编解码器360,并且图像编码器354、图像解码器357、多路复用器/多路分解器358、调制/解调电路359以及音频编解码器360通过一个同步总线362相互连接。
当清除/电源键由用户接通时,电源电路352从电池组供给电源给每个部件电路,因此使移动数字摄像机电话301准备好工作。
在例如由CPU、ROM和RAM组成的主控制器351的控制下,移动数字摄像机电话301通过音频编解码器360转换在通话模式中由麦克风312获得的音频信号为数字音频数据。移动数字摄像机电话301通过一个调制/解调电路359对数字音频数据执行扩频,以及执行数/模转换,然后通过发送/接收电路364对数字音频数据进行频率变换,经由天线305发送产生的数字音频数据。
移动数字摄像机电话301放大在通话模式中在天线305接收的接收信号,对放大的接收信号执行频率转换和模数转换,通过调制/解调电路359对转换的信号执行扩频,以及通过音频编解码器360转换产生的信号为模拟音频信号。移动数字摄像机电话301从扬声器308输出相应于该模拟音频信号的声音。
此外,在数据通信模式中,当发送电子邮件时,移动数字摄像机电话301发送从操作键310和慢进转盘313经由操作输入控制器353输入给主控制器351的电子邮件的文本数据。
主控制器35 1通过调制/解调电路359对文本数据执行扩频,然后通过发送/接收电路364执行数/模转换和频率变换,经由天线305发送产生的文本数据给相应的基站。
在数据通信模式中,当接收电子邮件时,移动数字摄像机电话301通过调制/解调电路359对从基站CS3经由天线305接收的接收信号执行相反的扩频以恢复原始数据,并且通过LCD控制器356在液晶显示器309上显示作为电子邮件消息的原始数据。
在数据通信模式中,当发送或者接收电子邮件时,主控制器351执行邮件发送/接收程序104和解释程序106。
LCD控制器356经由一个类似于软性印制电路板11,具有面板ID设置部分的软性印制电路板连接到液晶显示器309。
然后,移动数字摄像机电话301按照用户的操作也可以将接收的电子邮件经由存储再现部分363记录到存储条11中。
在数据通信模式中,当发送图像数据时,移动数字摄像机电话301经由摄像机接口355提供由CCD摄像机307拍摄的图像数据给图像编码器354。
当未发送图像数据时,移动数字摄像机电话301经由摄像机接口355和LCD控制器356也可以在液晶显示器309上显示由CCD摄像机307拍摄的图像数据。
图像编码器354例如基于MPEG2(Moving Picture Experts Group 2)或者MPEG4通过编码和压缩,转换从CCD摄像机307提供的图像数据为编码图像数据,并且发送编码图像数据给多路复用器/多路分解器358。
这时,当CCD摄像机307拍摄图像时,移动数字摄像机电话301经由音频编解码器360发送通过麦克风312获得的音频信号给多路复用器/多路分解器358作为音频数据。
多路复用器/多路分解器358以预定的算法多路复用从图像编码器354提供的编码图像数据和从音频编解码器360提供的音频数据,通过调制/解调电路359对产生的多路复用数据执行扩频,并且通过发送/接收电路364执行数模转换和频率转换,经由天线305输出产生的数据。
在数据通信模式中,例如当接收与简化的主页相链接的活动图像文件的数据时,移动数字摄像机电话301对经由天线305通过调制/解调电路359从相应的基站接收的接收信号执行相反的扩频,并且发送产生的多路复用数据给多路复用器/多路分解器358。
多路复用器/多路分解器358分解多路复用数据为编码图像数据和音频数据,经由同步总线362提供编码图像数据给图像解码器357以及音频数据给音频编解码器360。
图像解码器357以相应的预定解码算法诸如MPEG2或者MPEG4,通过解码编码的图像数据产生再现的活动图像数据,并且经由LCD控制器356提供再现的活动图像数据给液晶显示器309。因此,移动数字摄像机电话301显示例如包含在与简化的主页相链接的活动图像文件中的活动图像数据。
同时,音频编解码器360转换音频数据为一个模拟音频信号,并且提供它给扬声器308。因此,移动数字摄像机电话301再现例如包含在与简化的主页相链接的活动图像文件中的音频数据。
在这种情况下,如同电子邮件的情况一样,当用户操作时,移动数字摄像机电话301经由存储再现部分363也可以将与接收的简化主页相链接的数据记录到存储条11中。
应当注意到,本发明不仅适用于PDA 1和移动数字摄像机电话301,而且也适用于诸如支票大小的个人计算机、PHS(Personal Handyphone System)以及汽车导航系统这样的发送和接收电子邮件的终端设备。
下面描述解释程序106的详细结构。
图30示出解释程序106的示范的详细结构。
在图30示出的邮件语法分析块502、解码器503、语法分析块505、数据构成块517、编码器518以及邮件产生块519对应于图10所示的语法分析模块121。
在图30中示出的脚本解释程序506、验证加密块507、资源存取管理器508以及存储模块511对应于图10所示的执行模块122。
图30所示的I/O(输入/输出)模块510对应于图10所示的输出模块123。
邮件发送/接收程序104经由邮件发送/接收程序104接口501提供将被打开的邮件消息151给邮件语法分析块502,或者获得由邮件产生块519产生的邮件消息151。
邮件语法分析块502分析从邮件发送/接收程序104经由邮件发送/接收程序接口501提供的邮件消息151的语法,并且从邮件消息151中提取脚本和数据。邮件语法分析块502提供提取的脚本和数据给解码器503。
脚本是一种由一序列命令组成的程序,其中处理过程是由字符代码诸如字母数字字符描述的。
解码器503解码由编码算法诸如Base64编码的数据。Base64是一种二进制数据编码算法,用于转换数据或者程序为64种类型的ASCII代码串,用于通过网络传输数据或者程序,仅发送7位数据。
应当注意到,解码器503可以适用于解码编码的脚本。
解码器503经由接口504提供解码的脚本给语法分析块505,并且将解码的数据提供给脚本解释程序506。
语法分析块505用可以由脚本解释程序506处理的中间码替换包括在脚本中的预定字符串。该中间码通常分类为:(1)正文串,诸如词汇分析的结果或者产生的正文串;(2)作为语法分析结果产生的分析树或者语法树,或者基于波兰(Polish)表示法的树状结构;以及(3)接近机器语言的形式,诸如称为三对或者四对的虚拟机编码。在本说明书中,中间码表示分析树。
应当注意到,在Java语言中,上述的(3)被称作字节代码。
中间码是在软件程序中为了方便起见在转换源代码为最终可执行的形式过程中临时产生的码。因此,通过细致地分解从源代码到目标代码的转换处理,语言处理系统可以容易地与多个平台(或者目标)兼容。
例如在Java语言中,源代码被临时转换为称为字节代码的中间码,存储在WWW服务器中。WWW服务器发送这个字节代码给客户侧的WWW浏览器。客户侧的Java VM(Virtual Machine)解码和执行该字节代码。在这种情况下,在平台之间的差值(即,在CPU之间和在操作系统之间的差值)由JavaVM分解,使得字节代码本身与特定的平台无关。因此,在Java语言中,可以实现和平台无关的程序环境,同时最小化运行时间载荷(即,从字节代码到可执行的程序代码的转换)。
在其他的高级语言编译程序中,同样,源代码不是直接转换为可执行程序(通常,可以由CPU解码的二进制码),而是往往被转换为一个中间码,该中间码比实际的机器还要抽象(例如因为免除了实际的机器体系结构的限制,由该机器的编码优化变得更为方便),随后产生最后可执行的二进制码。
语法分析块505提供具有由中间码替代的预定字符串的脚本给脚本解释程序506。
脚本解释程序506提供脚本给验证加密块507,使它确定脚本的有效性。
验证加密块507对该脚本适用例如散列函数诸如MD5(Message Digest5),计算相应于该脚本的散列值。验证加密块507确定计算的散列值是否和包含在该脚本中的验证数据相配。
图31示出一个示范的包括验证数据的邮件消息151。
在图31示出的邮件消息中,诸如设置在″<SIGNATURE>″和″</SIGNATURE>″之间的数据″347a9d8684ab96533fb6b51906fdacf9″是验证数据。
应当注意到,电子签名或者证书可以包括在邮件消息151内,由验证加密块507以电子签名或者证书为基础进行验证。
如果发现计算的散列值和验证数据相配,则因为该脚本还没有变更,所以验证加密块507提供表示该脚本有效的数据给脚本解释程序506。
如果发现计算的散列值和验证数据不相配,因为该脚本已经变更,则验证加密块507提供表示该脚本无效的数据给脚本解释程序506。
当表示脚本无效的数据从验证加密块507提供时,脚本解释程序506不执行那些脚本。
当表示脚本有效的数据从验证加密块507提供时,脚本解释程序506基于从解码器503提供的数据执行那些脚本。
因此,脚本解释程序506仅执行有效的脚本,使得根据本发明的邮件发送/接收系统基于变更的、非法的脚本,可以阻止侵袭,因此保证在脚本执行中的安全。
当在显示部分21上显示图像或者检索从触摸板输入的数据时,脚本解释程序506使资源存取管理器508执行图像显示或者数据检索处理。
当存储数据到快闪ROM 33或者EDO DRAM 34之内,或者从快闪ROM33或者EDO DRAM 34中检索数据时,脚本解释程序506使资源存取管理器508执行数据存储或者数据检索处理。
当访问时间表注释程序512、地址注释程序513、备忘录注释程序514、TODO注释程序515、或者应用程序516时,脚本解释程序使资源存取管理器508访问时间表注释程序512、地址注释程序513、备忘录注释程序514、TODO注释程序515或者应用程序516。
当由脚本解释程序506请求在显示部分21上显示图像或者请求检索从触摸板输入的数据时,资源存取管理器508经由平台资源存取接口509,使I/O模块510在显示部分21上显示图像或者检索从触摸板输入的数据。从触摸板输入并由I/O模块510检索的数据经由平台资源存取接口509提供给资源存取管理器508。
资源存取管理器508提供从触摸板输入并由I/O模块510检索的数据给脚本解释程序506。
当由脚本解释程序506请求存储数据到快闪ROM 33或者EDO DRAM34之内,或者请求从快闪ROM 33或者EDO DRAM 34中检索数据时,资源存取管理器508经由平台资源存取接口509,使存储模块511将数据存储到快闪ROM 33或EDO DRAM 34之内、或者从快闪ROM 33或EDO DRAM 34中检索数据。由存储模块511从快闪ROM 33或EDO DRAM 34中检索的数据,经由平台资源存取接口509提供给资源存取管理器508。
资源存取管理器508提供由存储模块511从快闪ROM 33或EDO DRAM34中检索的数据给脚本解释程序506。
当由脚本解释程序506请求访问时间表注释程序512、地址注释程序513、备忘录注释程序514、TODO注释程序515或者应用程序516时,资源存取管理器508经由平台资源存取接口509访问时间表注释程序512、地址注释程序513、备忘录注释程序514、TODO注释程序515或者应用程序516。
时间表注释程序512是一个应用程序,用于记录时间表到时间表注释中或者显示记录的时间表。
备忘录注释程序514是一个应用程序,用于记录备忘录到备忘录注释中或者显示记录的备忘录。
TODO注释程序515是一个应用程序,用于记录由用户进行的项目或者显示记录的由用户进行的项目。
应用程序516执行预定的处理。
当发送附着在邮件消息151上的期望数据时,数据结构块517转换从脚本解释程序506提供的该数据为预定的数据结构。
例如,当中断脚本执行和发送附着在邮件消息151中表示脚本执行状态的数据时,脚本解释程序506提供表示脚本执行状态的数据,诸如存储在下拉(push-down)堆栈中的数据或者程序计数器值给数据结构块517。
数据结构块517转换从脚本解释程序506提供的表示脚本执行状态的预定数据为预定的数据结构。
数据结构块517经由接口504提供预定数据结构的数据给编码器518。
当发送附着在邮件消息151中的期望脚本时,脚本解释程序506经由接口504提供该脚本给编码器518。
编码器518例如通过Base64编码从数据结构块517提供的具有预定结构的数据。编码器518提供编码的数据给邮件产生块519。编码器518没有变化地提供从脚本解释程序506提供的脚本给邮件产生块509。
应当注意到,编码器518可以适用于编码该脚本。
邮件产生块519产生一个邮件消息151,它存储从编码器518提供的编码的数据和脚本。邮件产生块519经由邮件发送/接收程序插件接口501提供产生的邮件消息151给邮件发送/接收程序104。
邮件发送/接收程序104发送从邮件产生块519提供的邮件消息151。
基于从显示部分21的触摸板的输入,脚本发射器520选择Othello游戏脚本531、循环邮件脚本532、自动删除邮件脚本533、动画邮件脚本534以及更新邮件脚本535中的一个,并且经由接口504提供该选择的脚本给语法分析块505。
例如如图32所示,在显示部分21上显示的图标中,如果图标标号Othello被选择,则脚本发射器520从脚本数据库521中读取对应于Othello图标的Othello游戏脚本531,并且经由接口504提供该脚本给语法分析块505。
在显示部分21上显示的图标中,如果图标标号循环邮件被选择,则脚本发射器520从脚本数据库521中读取对应于循环邮件图标的循环邮件脚本532,并且经由接口504提供该脚本给语法分析块505。
语法分析块505用中间码替换包括在Othello游戏脚本531、循环邮件脚本532、自动删除邮件脚本533、动画邮件脚本534或者更新邮件脚本535内的预定字符串,该中间码可以由脚本解释程序506处理。语法分析块505提供该中间码脚本给脚本解释程序506。
脚本解释程序506执行Othello游戏脚本531、循环邮件脚本532、自动删除邮件脚本533、动画邮件脚本534或者更新邮件脚本535,其中字符串被从语法分析块505提供的中间码取代。
因此,当被打开时,在图30中示出结构的解释程序106执行附着在邮件消息151上的脚本,因此例如执行在显示部分21上显示预定图像的处理、对应于在显示部分21上的触摸板操作的处理、存储期望的数据到快闪ROM 33或者EDO DRAM 34之内的处理、或者从快闪ROM 33或EDO DRAM 34中检索数据的处理。
因此,用于执行预定处理的邮件消息151的脚本附件,允许它的发送者使它的接收者快速而可靠地采取期望的动作。
例如,即使邮件消息151的接收者使用一个小型的终端设备,太小而不能对邮件做出迅速的反应,邮件消息151的发送者也可以使它的接收者做出快速而可靠地反应。
当邮件发送/接收程序104将要打开消息151时,解释程序106执行附着于此的脚本,使得在接收邮件消息151之前,邮件的接收者不必获得相应的脚本。
新产生的脚本附着在邮件消息151上被传送,使得它的接收者可以迅速地得到该脚本,因此迅速地执行该新产生的脚本。
同样,在图30中示出结构的解释程序106执行存储的脚本,以执行诸如在显示部分21上显示预定的图像、在显示部分21上执行对应于触摸板操作的处理、存储期望的数据到快闪ROM 33或EDO DRAM 34之内、或者从快闪ROM 33或EDO DRAM 34中检索数据的处理。
此外,在图30中示出结构的解释程序106执行存储的脚本,以便产生存储期望的脚本的邮件消息151,发送产生的邮件消息151给邮件发送/接收程序104。
下面描述平台和脚本传输媒体的变化。
图33举例说明解释程序106的结构的变化,其中例如OS 101变化为Windows CE(微软公司的商标)或者另一个操作系统。
图33所示的脚本处理块551由一个平台从属块561、一个脚本执行562以及一个电子邮件转换块563组成。
平台从属块561由一个I/O模块510、一个存储模块511以及一个应用模块516组成。
脚本执行块562对应于在图30中示出的语法分析块505、脚本解释程序506、验证加密块507、资源存取管理器508以及数据构成块517。
电子邮件转换块563对应于在图30中示出的邮件发送/接收程序插件接口501、邮件语法分析块502、解码器503、接口504、编码器518以及邮件产生块519。
通信块552对应于在图5中示出的USB接口36,经由托架2和因特网4接收邮件消息151。
例如,诸如从OS 101变化为另一个操作系统的平台变化,使对应于该变化的平台的脚本处理块571从平台从属块561变化为平台从属块581。脚本执行块562和电子邮件转换块563保留不变。
平台从属块581由一个对应于变化的平台的I/O模块591、一个存储模块592和一个应用程序593组成。
因此,如果平台变化,则单独变化该平台从属部分允许解释程序106执行附着在邮件消息151上的脚本。
图34举例说明当脚本传输媒体变化时,解释程序106结构的变化,诸如例如适应蓝牙规范通过通信发射脚本本身。
在脚本传输媒体变化之后,脚本处理块601由平台从属块561、脚本执行块562和转换块611组成。
发送/接收程序602是一个程序,用于使执行适应蓝牙规范等等通信的通信块603接收或者发送脚本和数据。发送/接收程序602得到通过通信块603接收的脚本和数据,并且提供该脚本和数据给平台从属块561的转换块611。
此外,发送/接收程序602使通信块603发送从转换块611提供的脚本和数据。
转换块611转换从发送/接收程序602提供的脚本中的预定字符串,并且提供转换的脚本给脚本执行块562。而且,转换块611转换从脚本执行块562提供的脚本和数据,并且提供转换的脚本和数据给发送/接收程序602。
脚本执行块562执行从转换块611提供的脚本。
因此,即使脚本传输媒体变化,单独变化传输从属部分允许解释程序106执行脚本,而不必变化全部的传输从属部分。
参考图35至37示出的流程图,下面描述由在图30中示出结构的解释程序106执行附着在电子邮件上的脚本。
在步骤S501,邮件发送/接收程序104确定具有脚本的邮件消息151是否被显示。如果发现未显示具有脚本的邮件消息151,过程返回到步骤S501,重复判定处理。
在步骤S501中,如果发现显示具有脚本的邮件消息151,然后在步骤S502,邮件发送/接收程序104经由邮件发送/接收程序插件接口501提供将被打开的邮件消息151给邮件语法分析块502。
在步骤S503,邮件语法分析块502从邮件发送/接收程序104中获得的邮件消息151提取为脚本执行所必需的脚本和数据。为脚本执行所必需的数据,例如是当脚本执行被中断时对应于程序计数器值或者表示脚本执行状态的堆栈指针值的数据、表示Othello游戏块布置的数据、用于绘画卡通制作的数据、用于程序更新的数据、或者表示电子邮件循环状态的数据。
邮件语法分析块502提供提取的为脚本执行所必需的脚本和数据给解码器503。
在步骤S504,解码器503例如通过Base64解码从邮件语法分析块502提供的为脚本执行所必需的数据。
在步骤S505,解码器503经由接口504提供脚本给语法分析块505。
在步骤S506,解码器503经由接口504提供为脚本执行所必需的数据给脚本解释程序506。
在步骤S507,语法分析块505用可以由脚本解释程序506解释的中间码替换包括在从解码器503提供的脚本中的预定字符串。语法分析块505提供具有由中间码替代的预定字符串的脚本给脚本解释程序506。
在步骤S508,脚本解释程序506提供脚本给验证加密块507去使它核对该脚本的有效性。验证加密块507从脚本解释程序506提供的脚本中提取验证数据,并且施加一个散列函数到该脚本以产生散列值。验证加密块507基于在提取的验证数据和产生的散列值之间的匹配确定该脚本的有效性。
验证加密块507提供表示该脚本有效或无效的数据给脚本解释程序506。
在步骤S509,脚本解释程序506基于从验证加密块507提供的数据确定是否脚本是有效的。如果发现该脚本无效,表示该脚本已经改变,从而不执行该脚本,处理结束。
在步骤S509,如果发现该脚本有效,那么脚本解释程序506在步骤S510执行该脚本。
在步骤S511,脚本解释程序506通过执行脚本确定是否已经请求输入/输出、信息存储或检索、或者访问外部应用程序。如果发现了请求,那么在步骤S512,脚本解释程序506使资源存取管理器508执行请求的输入/输出操作、信息存储或检索、或者访问外部应用程序。
在步骤S513,资源存取管理器508确定是否已经请求输入/输出操作。如果发现请求了输入/输出操作,那么在步骤S514,资源存取管理器508使I/O模块510在显示器部分21上显示一个对话框,提示用户输入是否执行输入/输出操作,从而基于该用户的输入操作确定是否执行该输入/输出操作。
如果在步骤S514发现将执行输入/输出操作,那么在步骤S515资源存取管理器508使I/O模块510执行输入/输出处理,诸如图像显示,接着步骤进行到步骤S516。
如果在步骤S513发现没有请求输入/输出操作,它表示没有要求输入输出处理,因此步骤S514和S515处理跳过,接着步骤进行到步骤S516。
如果在步骤S514发现无需执行输入/输出操作,它表示没有输入/输出操作应该执行,因此步骤S515处理跳过,接着步骤进行到步骤S516。
在步骤S516,资源存取管理器508确定是否已经请求信息存储或者检索。如果发现请求了信息存储或者检索,那么在步骤S517,资源存取管理器508使I/O模块510在显示器部分21上显示一个对话框,提示用户输入是否执行信息存储或者检索,从而基于该用户的输入操作确定是否执行该信息存储或者检索。
如果在步骤S517发现将执行信息存储或者检索,那么在步骤S518资源存取管理器508例如使存储模块511对快闪ROM 33执行信息存储或者检索,接着步骤进行到步骤S519。
如果在步骤S516发现没有请求信息存储或者检索,它表示没有要求信息存储或者检索处理,因此步骤S517和S518处理跳过,接着步骤进行到步骤S519。
如果在步骤S517发现无需执行信息存储或者检索,它表示将不会执行信息存储或者检索,因此步骤S518处理跳过,接着步骤进行到步骤S519。
在步骤S519,资源存取管理器508确定是否已经请求访问外部应用程序,诸如时间表注释程序512、地址注释程序513、备忘录注释程序514、TODO注释程序515、或者应用程序516。如果发现请求访问这些外部应用程序的任何一个,那么在步骤S520,资源存取管理器508使I/O模块510在显示器部分21上显示一个对话框,用于提示用户输入是否执行访问任何外部应用程序,从而基于用户的输入操作确定是否执行访问任何外部应用程序。
如果在步骤S520发现将执行访问外部应用程序,那么资源存取管理器508在步骤S521访问该指定的外部应用程序,接着步骤进行到步骤S522。
如果在步骤S519发现没有请求访问外部应用程序,它表示没有要求访问外部应用程序,因此步骤S520和S521处理跳过,接着步骤进行到步骤S522。
如果在步骤S520发现无需执行访问外部应用程序,它表示将不会执行访问外部应用程序,因此步骤S521处理跳过,接着步骤进行到步骤S522。
在步骤S522,资源存取管理器508提供输入/输出操作、信息存储或检索、或者访问外部应用程序的结果给脚本解释程序506。
在步骤S523,脚本解释程序506根据用户操作或者脚本说明确定是否通过电子邮件发送脚本执行结果。如果发送该脚本执行结果,那么在步骤S524,脚本解释程序506把附属于电子邮件的数据,诸如表示必须形成为预定格式数据的脚本执行状态的数据提供给数据构成块517。
在步骤S525,数据构成块517将从脚本解释程序506提供的数据形成为预定格式。数据构成块517经由接口504提供格式数据给编码器518。
在步骤S526,脚本解释程序506经由接口504提供附属于电子邮件的脚本或者数据给编码器518。由脚本解释程序506提供给编码器518的数据没有必要由数据构成块517格式化。
在步骤S527,编码器518例如通过Base64编码从数据构成块517或者从脚本解释程序506提供的数据。编码器518提供编码的数据和脚本给邮件产生块519。
在步骤S528,邮件产生块519基于从编码器518提供的脚本或者数据产生附着有该脚本或者数据的邮件消息151。邮件产生块519经由邮件发送/接收程序插件接口501提供产生的邮件消息151给邮件发送/接收程序104。
在步骤S529,邮件发送/接收程序104发送从邮件产生块519提供的邮件消息151,接着处理结束。
在步骤S511,如果发现未请求输入/输出操作、信息存储或检索、或者访问外部应用程序,它表示不需要用于输入/输出操作、信息存储或检索、或者访问外部应用程序的处理,因此步骤S512至S522的处理跳过,接着步骤进行到步骤S523,其中脚本解释程序确定是否通过电子邮件发送脚本执行结果。
在步骤S523,如果发现不用发送脚本执行结果,它表示不需要用于发送电子邮件的处理,因此步骤S524至S529的处理跳过,接着处理结束。
因此当显示附着有脚本的邮件消息151时,如图30所示结构的解释程序从邮件消息151中提取脚本并且执行该提取的脚本。
当通过执行附着在邮件消息151上的脚本请求输入/输出操作、信息存储或检索、或者访问外部应用程序时,如图30所示结构的解释程序106可以执行请求的输入/输出操作、信息存储或者检索、或者访问外部应用程序。
当请求通过电子邮件发送脚本执行结果时,如图30所示结构的解释程序106可以按照脚本执行结果发送附着有脚本或者数据的邮件消息151。
参考图38至40示出的流程图,下面描述由在图30中示出结构的解释程序106用于执行存储在脚本数据库521中的脚本的处理。
在步骤S601,基于从触摸板的输入,脚本发射器520例如选择存储在脚本数据库521中的Othello游戏脚本531、循环邮件脚本532、自动地删除邮件脚本533、动画邮件脚本534以及更新邮件脚本535中的一个,并且经由接口504提供该选择的脚本给语法分析块505。
步骤S602至S624的处理与步骤S507至S529相同,因此省略其说明。
因此如图30所示结构的解释程序106可以执行存储在脚本数据库中选择的脚本。
当通过执行存储的脚本请求输入/输出操作、信息存储或者检索、或者访问外部应用程序时,图30所示的结构的解释程序106可以执行请求的输入/输出操作、信息存储或者检索、或者访问外部应用程序。
通过执行存储在脚本数据库中选择的脚本,图30所示结构的解释程序106可以发送附着有脚本或者数据的邮件消息151。
以上提到的处理序列可以通过硬件或者软件执行。通过软件执行是由其中组成软件的程序预先安装在专用硬件设备中的计算机支持的,或者例如由能够执行各种各样程序的通用个人计算机支持,其中这些程序是从记录媒体安装的。
该记录媒体可以是由图5所示的磁盘61(包括软盘)、光盘62(包括CD-ROM(Compact Disc-Read Only Memory)和DVD(Digital Versatile Disc)),磁光盘63(包括MD(Mini Disk))、或者半导体存储器64组成的封装介质,或者快闪ROM 33或硬盘,其中临时或者永久地存储程序。根据需要在这些记录媒体中存储的程序通过利用有线或者无线电通信介质,诸如公共交换网202、局域网、因特网4或数字卫星广播,经由接口诸如路由器和调制解调器执行。
应当注意到,描述存储在程序存储器介质中的程序的步骤,不仅以描述的次序随时间变化的方式执行,而且以并行或者离散的方式执行。
此处使用的术语“系统”表示由多个部分设备组成的装置总体。
使用具体的术语已经描述了本发明的优选实施例,这样的说明仅仅是为了说明的目的,应当理解,在不脱离所附权利要求的精神或者范围内可以进行变化和变化。

Claims (7)

1.一种用于接收从发送设备发送的邮件的接收设备,包括:
提取装置,用于可操作地与用于打开所述邮件的命令相关联,提取作为附加文件附加到所述邮件的脚本和数据;
执行装置,用于对所述提取的脚本执行语法分析;和
输出控制装置,用于执行相应于伴随所述脚本的所述数据或相应于一个输入事件的处理,以及对所述处理结果的输出进行控制,
其中,所述输出控制装置按照所述脚本的执行,发送相应于所述邮件的回复邮件,
所述数据是所述发送设备已执行的处理的特定点的状态信息,
所述输出控制装置从处理的所述特定点开始执行处理。
2.按照权利要求1的接收设备,其中:
所述邮件存储用于执行所述脚本所需要的所述数据;
所述提取装置连同所述脚本一起提取所述数据;和
所述执行装置通过使用所述数据来执行所述脚本。
3.一种用于接收设备接收从发送设备发送的邮件的接收方法,包括步骤:
可操作地与用于打开所述邮件的命令相关联,提取作为附加文件附加到所述邮件的脚本和数据;
对所述提取的脚本执行语法分析;和
执行相应于伴随所述脚本的所述数据或相应于一个输入事件的处理,以及对所述处理结果的输出进行控制,
其中,按照所述脚本的执行,发送相应于所述邮件的回复邮件,
所述数据是所述发送设备已执行的处理的特定点的状态信息,
所述执行处理的步骤从处理的所述特定点开始执行处理。
4.一种用于发送邮件的发送设备,包括:
生成装置,用于通过执行从接收的邮件中提取的第一脚本生成将被存储到所述邮件中的第二脚本;
存储装置,用于把所述第二脚本和数据存储在所述邮件中;和
发送控制装置,用于按照所述第一脚本的执行,对存储了所述第二脚本的所述邮件的发送进行控制,
其中,所述数据是所述发送设备已执行的处理的特定点的状态信息。
5.按照权利要求4的发送设备,其中所述存储装置把用于执行所述第二脚本需要的所述数据连同所述第二脚本一起存储到所述邮件中。
6.一种用于发送设备发送邮件的发送方法,包括步骤:
通过执行从接收的邮件中提取的第一脚本生成将被存储到所述邮件中的第二脚本;
把所述第二脚本和数据存储在所述邮件中;和
按照所述第一脚本的执行,对存储了所述第二脚本的所述邮件的发送进行控制,
其中,所述数据是所述发送设备已执行的处理的特定点的状态信息。
7.一种具有用于发送邮件的发送设备和用于接收从发送设备发送的所述邮件的接收设备的通信系统,
其中所述发送设备包括:
生成装置,用于通过执行第一脚本生成将被存储到所述邮件中的第二脚本;
存储装置,用于把所述第二脚本和数据存储在所述邮件中;
发送控制装置,用于对存储了所述第二脚本的所述邮件的发送进行控制;
所述接收设备包括:
提取装置,用于可操作地与打开所述邮件的命令相关联,提取所述第二脚本和数据;
执行装置,用于对所述提取的第二脚本执行语法分析;和
输出控制装置,用于执行相应于伴随所述第二脚本的所述数据或相应于一个输入事件的处理,以及对所述处理结果的输出进行控制,
其中,所述输出控制装置按照所述第二脚本的执行,发送相应于所述邮件的回复邮件,
所述数据是所述发送设备已执行的处理的特定点的状态信息,
所述输出控制装置从处理的所述特定点开始执行处理。
CNB011410833A 2000-08-24 2001-08-24 接收设备和方法、发送设备和方法及通信系统 Expired - Fee Related CN1223157C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2000253333 2000-08-24
JP253333/00 2000-08-24
JP253333/2000 2000-08-24
JP096789/2001 2001-03-29
JP2001096789A JP4595228B2 (ja) 2000-08-24 2001-03-29 受信装置および方法、送信装置および方法、記録媒体、並びに通信システム
JP096789/01 2001-03-29

Publications (2)

Publication Number Publication Date
CN1342013A CN1342013A (zh) 2002-03-27
CN1223157C true CN1223157C (zh) 2005-10-12

Family

ID=26598349

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB011410833A Expired - Fee Related CN1223157C (zh) 2000-08-24 2001-08-24 接收设备和方法、发送设备和方法及通信系统

Country Status (6)

Country Link
US (1) US7016940B2 (zh)
EP (1) EP1182834B1 (zh)
JP (1) JP4595228B2 (zh)
KR (1) KR100848947B1 (zh)
CN (1) CN1223157C (zh)
DE (1) DE60120855T2 (zh)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4405728B2 (ja) * 2001-03-08 2010-01-27 富士通株式会社 電子メール管理装置、メールサーバ、転送方法、および媒体
EP1296275A3 (en) * 2001-08-15 2004-04-07 Mail Morph Limited A system and method for the analysis of email traffic
US20030185302A1 (en) * 2002-04-02 2003-10-02 Abrams Thomas Algie Camera and/or camera converter
JP4222774B2 (ja) * 2002-05-20 2009-02-12 株式会社エヌ・ティ・ティ・ドコモ 携帯端末およびプログラムの起動方法
JP3987025B2 (ja) * 2002-12-12 2007-10-03 シャープ株式会社 マルチメディアデータ処理装置およびマルチメディアデータ処理プログラム
JP4590835B2 (ja) * 2003-07-11 2010-12-01 ソニー株式会社 情報処理装置および情報処理方法、情報処理システム、記憶媒体、並びに、プログラム
JP3719607B2 (ja) * 2003-08-25 2005-11-24 任天堂株式会社 ゲーム装置およびゲームプログラム
US7707218B2 (en) * 2004-04-16 2010-04-27 Mobot, Inc. Mobile query system and method based on visual cues
US20060033809A1 (en) * 2004-08-10 2006-02-16 Mr. Jim Robinson Picture transmission and display between wireless and wireline telephone systems
KR100631625B1 (ko) * 2005-02-15 2006-10-11 엘지전자 주식회사 수신 메세지의 이메일 전송 방법
KR100717405B1 (ko) * 2005-09-09 2007-05-11 삼성전자주식회사 생체 신호 측정기 및 이를 이용한 건강 관리 방법
US20070078859A1 (en) * 2005-10-03 2007-04-05 Steve Arnold Method, system, apparatus, and software product for an intelligent transfer log
US8320819B2 (en) * 2005-11-01 2012-11-27 Nokia Corporation Mobile TV channel and service access filtering
US8243731B2 (en) * 2006-08-07 2012-08-14 Qualcomm Incorporated Apparatus and methods for code-enhanced messaging
US8234641B2 (en) 2006-10-17 2012-07-31 Managelq, Inc. Compliance-based adaptations in managed virtual systems
US8458695B2 (en) * 2006-10-17 2013-06-04 Manageiq, Inc. Automatic optimization for virtual systems
JP5096063B2 (ja) * 2007-07-30 2012-12-12 京セラ株式会社 受信装置
JP5430862B2 (ja) * 2008-02-20 2014-03-05 株式会社タイトー 素材画像配置サーバ、素材画像配置プログラム及びゲームシステム
JP5300438B2 (ja) * 2008-11-21 2013-09-25 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US8352401B2 (en) * 2009-04-08 2013-01-08 International Business Machines Corporation Incorporating representational authenticity into virtual world interactions
JP5499598B2 (ja) * 2009-09-28 2014-05-21 ブラザー工業株式会社 多機能機
JP5605836B2 (ja) * 2010-10-01 2014-10-15 埼玉日本電気株式会社 電話端末機能設定方法、電話端末および電話端末機能設定プログラム
US8745634B2 (en) * 2010-10-15 2014-06-03 Invensys Systems, Inc. System and method for integrated workflow scaling
CN102801644B (zh) * 2011-12-31 2015-01-21 华为数字技术(成都)有限公司 邮件行为阻断方法、装置及网关
US9384711B2 (en) 2012-02-15 2016-07-05 Microsoft Technology Licensing, Llc Speculative render ahead and caching in multiple passes
US9154456B2 (en) * 2012-04-17 2015-10-06 Trenda Innovations, Inc. Messaging system and method
US9230517B2 (en) * 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
US9286122B2 (en) 2012-05-31 2016-03-15 Microsoft Technology Licensing, Llc Display techniques using virtual surface allocation
US9177533B2 (en) 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
US9235925B2 (en) 2012-05-31 2016-01-12 Microsoft Technology Licensing, Llc Virtual surface rendering
US10360139B2 (en) 2013-03-12 2019-07-23 Entit Software Llc Identifying transport-level encoded payloads
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
US11824840B1 (en) * 2019-02-04 2023-11-21 Meixler Technologies, Inc. System and method for web-browser based end-to-end encrypted messaging and for securely implementing cryptography using client-side scripting in a web browser
CN112272135B (zh) * 2020-10-15 2022-05-27 苏州浪潮智能科技有限公司 一种存储软件的邮件发送方法、装置、设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992022033A1 (en) 1991-05-24 1992-12-10 Bell Communications Research, Inc. Active messaging system
JP3210265B2 (ja) * 1997-03-21 2001-09-17 シャープ株式会社 電子メール端末装置,電子メールシステム及び情報処理システム
US6179713B1 (en) * 1997-06-18 2001-01-30 Circadence Corporation Full-time turn based network multiplayer game
JP3544457B2 (ja) * 1997-08-22 2004-07-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 電子メール又はエージェントを利用してクライアント上でguiを作成する方法及び装置、そのためのプログラムを記録した記録媒体
US6073166A (en) 1997-10-14 2000-06-06 Maila Nordic Ab System for transfer of data
JPH11212891A (ja) * 1998-01-26 1999-08-06 Fuji Xerox Co Ltd プリンタおよびネットワークシステム
US6336216B1 (en) * 1998-12-10 2002-01-01 International Business Machines Corporation Objects oriented programming system with objects for storing compressed data files and self-extracting the data files
US6539396B1 (en) * 1999-08-31 2003-03-25 Accenture Llp Multi-object identifier system and method for information service pattern environment
JP2002292145A (ja) * 2001-03-29 2002-10-08 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム

Also Published As

Publication number Publication date
KR100848947B1 (ko) 2008-07-29
US7016940B2 (en) 2006-03-21
JP2002140270A (ja) 2002-05-17
EP1182834A2 (en) 2002-02-27
JP4595228B2 (ja) 2010-12-08
EP1182834A3 (en) 2003-08-06
EP1182834B1 (en) 2006-06-21
US20020049819A1 (en) 2002-04-25
DE60120855D1 (de) 2006-08-03
KR20020016524A (ko) 2002-03-04
CN1342013A (zh) 2002-03-27
DE60120855T2 (de) 2007-01-18

Similar Documents

Publication Publication Date Title
CN1223157C (zh) 接收设备和方法、发送设备和方法及通信系统
CN1379358A (zh) 信息处理设备和方法、记录媒体及程序
CN1301470C (zh) 服务提供系统和服务提供方法
CN1305263C (zh) 通信系统和方法
CN1265628C (zh) 可移动存储媒体、移动信息终端及其文件管理方法
CN1167265C (zh) 图像通信系统及其方法
CN1304952C (zh) 使数据同步的系统、用于该系统的装置和数据同步方法
CN1263302C (zh) 远程会议系统和远程会议支持方法
CN1476722A (zh) 信息处理装置
CN1783884A (zh) 信息处理系统、信息提供和处理设备及方法、记录介质及程序
CN1420444A (zh) 发送接收设备和方法、程序和记录媒体及发送/接收系统
CN1438598A (zh) 电子邮件处理系统、方法、程序以及存储介质
CN1471293A (zh) 使用环境设定系统、电子设备、无线通信终端、程序
CN1484798A (zh) 信息处理设备和信息处理方法
CN1615646A (zh) 通信装置
CN1471049A (zh) 记录媒体支承器和电子卡系统
CN1207912C (zh) 图像记录系统
CN1834889A (zh) 软件认证系统和软件认证程序及软件认证方法
CN1947372A (zh) 个人信息管理装置、分散密钥存储装置、个人信息管理系统
CN1177268A (zh) 便携式信息终端装置及便携式用电子机器
CN1845505A (zh) 一种家庭网络设备的控制方法及设备管理装置
CN1738219A (zh) 发送接收装置、数据传送系统、发送接收方法及程序
CN1377157A (zh) 信息处理设备和方法、信息交换方法、记录介质和程序
CN1507238A (zh) 信息处理设备
CN1656452A (zh) 用于数据管理的电子设备、方法、程序和存储介质

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20051012

Termination date: 20130824