English:
[0001] Abbreviations are common for electronic messages, such as Short Message Service messages due to the difficulty of typing on increasingly smaller keyboards and the character limits of some messaging services. The abbreviations may be human readable. However, in some cases, the abbreviations may be difficult for users to remember or to read.
[0002] The drawings describe example implementations. The drawings show methods performed in an example order, but the methods may also be performed in other orders. The following detailed description references the drawings, wherein:
[0003] Figure 1 is a block diagram illustrating one example of a computing system.
[0004] Figure 2 is a flow chart illustrating one example of a method to lengthen a message.
[0005] Figure 3 is a block diagram illustrating one example of a computing system.
[0006] Figure 4 is a flow chart illustrating one example of a method to shorten a message.
[0007] Figure 5 is a block diagram illustrating one example of a computing system.
[0008] Figure 6 is a flow chart illustrating one example of communicating with expanded and contracted messages.
[0009] Figure 7 is a diagram illustrating one example of contracting a message based on a dictionary associated with an identifier.
[0012] Providing a message conversion service remote from the user electronic device allows the user electronic device to have less storage space for storing software for performing the conversion and for storing the abbreviation look up table. The server may update the dictionary of abbreviations without knowledge of the user electronic device, and the same updated dictionary may be available to a second electronic device interpreting a message composed by accessing the updated dictionary from the first electronic device.
[0013] Figure 1 is a block diagram illustrating one example of a computing system 100. The computing system 100 may include a server electronic device 101, a network 104, and an electronic device 105. The server electronic device 101 includes a processor 102 and a dictionary 103. The processor 102 may be any suitable processor, such as a central processing unit (CPU), a semiconductor-based microprocessor, or any other device suitable for retrieval and execution of instructions. In one implementation, the server electronic device 101 includes logic instead of or in addition to the processor 102. As an alternative or in addition to fetching, decoding, and executing instructions, the processor 102 may include one or more integrated circuits (ICs) (e.g., an application specific integrated circuit (ASIC)) or other electronic circuits that comprise a plurality of electronic components for performing the functionality described below. In one implementation, the server electronic device 101 includes multiple processors. For example, one processor may perform some functionality and another processor may perform other functionality described below.
[0014] The network 104 may be any suitable network, such as the Internet. The processor 102 may receive information from the electronic device 105 via the network 104 and may send irrformation to the electronic device 105 via the network. In one implementation, the processor 102 also communicates with other electronic devices via the network 104.
[0015] The electronic device 105 may be any suitable electronic device. For example, the electronic device 105 may be a personal electronic device, such as a desktop, laptop, or mobile computing device. The electronic device 105 may be a mobile phone. In one implementation, a message may be created on the electronic device 105 and sent to the server electronic device 101 via the network 104. In one implementation, the electronic device 105 may send a message to the server electronic device 101 for the server electronic device 101 to lengthen. For example, a user may determine that a message is difficult to read and send the message to the server electronic device 101 for conversion into a longer form more readable format. The electronic device 105 may connect to the server electronic device 101 in any suitable manner. For example, the electronic device 105 may upload a document to the server electronic device 101 through a web user interface or through an application downloaded onto the electronic device 105, such as a mobile device application, for communicating with the server electronic device 101.
[0016] The server electronic device 101 may receive the message from the network 104 and lengthen the message based on a comparison of the message to the dictionary 103. The dictionary 103 may include a look up table of expanded words or phrases correlated with abbreviations. The abbreviations in the received message may be compared to the abbreviations in the dictionary 103, and the abbreviations may be replaced with the expanded words or phrases from the dictionary 103. The server electronic device 101 may then send the lengthened message back to the electronic device 105 that originally sent the message.
[0017] In one implementation, the server electronic device 101 includes a machine- readable storage medium. The machine-readable storage medium may be any suitable machine readable medium, such as an electronic, magnetic, optical, or other physical storage device that stores executable instructions or other data (e.g., a hard disk drive, random access memory, flash memory, etc.). The machine-readable storage medium may be, for example, a computer readable non-transitory medium. The machine- readable storage medium may include instructions executable by the processor 102 to lengthen the received message and transmit it back to the electronic device 105. In one implementation, the processor 102 may perform the message lengthening service for multiple electronic devices.
[0018] Figure 2 is a flow chart 200 illustrating one example of a method to lengthen a message. A server electronic device may receive a message from a user electronic device via a network and lengthen the message based on a stored dictionary. For example, the server electronic device may look up words, phrases, or abbreviations in the message and compare them to entries in the dictionary. Entries that correlate to text in the message may be inserted into the message to replace abbreviations or shortened phrases in the message. The server electronic device may then transmit the lengthened message back to the user electronic device. This may allow a user to lengthen a message without storing a dictionary or conversion software on the user's electronic device. A user may type a message in an abbreviated format on a small electronic device, such as a mobile phone, and the user may expand the message before transmitting, or the recipient may chose to expand the message before reading it. The method may be implemented, for example, by the server electronic device 101 from Figure 1.
[0019] Beginning at 201, a processor lengthens a message received via a network from an electronic device based on a comparison of the message to a stored dictionary. For example, the processor may receive a message via the Internet from a user electronic device, such as from a personal computer or mobile computing device. The user device may send the message to the processor in response to user input to lengthen the message, for example, because of a user having trouble understanding the message, or in response to an automated process. For example, each Short Service Message or each Short Service Message from a particular recipient may be automatically sent to the processor for lengthening, or a user may select to send a particular message to the processor for lengthening.
[0020] The dictionary may store a list of shorter words, abbreviations, and phrases correlating with longer forms. The stored dictionary may be stored in the same electronic device as the processor, or the processor may access the dictionary via a network. In one implementation there are multiple dictionaries. The processor may determine which dictionary to use for a message based on a dictionary identifier received with the message. In some cases, the processor may receive information about a recipient or sender of the message and took up the dictionary associated with the recipient or sender in a storage. The processor may use the associated dictionary for lengthening the message. In some examples, the processor may receive information about a degree of lengthening the message, such as a character limit for a lengthened message.
[0021] The processor may compare the words or phrases in the message to entries in the dictionary. If a word or phrase, such as an abbreviation, in the message matches or otherwise correlates with a dictionary entry short form, the processor may replace the word or phrase in the message with the associated long form in the dictionary.
[0022] Continuing to 202, the processor transmits the lengthened version of the message via the network to the electronic device. For example, the processor may send the lengthened version of the message back to the electronic device via the Internet. The user of the electronic device may then choose to send the message to a recipient. In some cases, the message may be a message received at the user electronic device, and the user may read the message after receiving the lengthened version. In some cases, software may analyze the lengthened message, such as software for text to speech conversion or software for text analysis.
[0023] Figure 3 is a block diagram illustrating one example of a computing system 300. The computing system 300 may include a server electronic device 301, a network 304, and an electronic device 305. The server electronic device 301 includes a processor 302 and a dictionary 303. The processor 302 may be any suitable processor, such as a central processing unit (CPU), a semiconductor-based microprocessor, or any other device suitable for retrieval and execution of instructions. In one implementation, the server electronic device 301 includes logic instead of or in addition to the processor 302. As an alternative or in addition to fetching, decoding, and executing instructions, the processor 302 may include one or more integrated circuits (ICs) (e.g., an application specific integrated circuit (ASIC)) or other electronic circuits that comprise a plurality of electronic components for performing the functionality described below. In one implementation, the server electronic device 301 includes multiple processors. For example, one processor may perform some functionality and another processor may perform other functionality described below.
[0024] The processor 302 may communicate with the electronic device 305 via the network 304. The network 304 may be, for example, the Internet. The electronic device 305 may be, for example, a personal computer or mobile computing device. In some cases, the processor 302 may provide a message contracting service for multiple electronic devices communicating with the processor 302 via the network 304.
[0025] A user may create a message on the electronic device 305, such as an instant message, social networking message, or Short Message Service message. In some cases, a user may want the message to be shortened such that words or phrases are abbreviated. For example, the messaging service being used may have a character imit. The electronic device 305 may transmit the created message to the server electronic device
[0027] In one example, the server electronic device 301 includes a machine- readable storage medium. The machine-readable storage medium may be any suitable machine readable medium, such as an electronic, magnetic, optical, or other physical storage device that stores executable instructions or other data (e.g., a hard disk drive, random access memory, flash memory, etc.). The machine-readable storage medium may be, for example, a computer readable non-transitory medium. The machine- readable storage medium may include instructions executable by the processor 302 to shorten the received message and transmit it back to the electronic device 305. In one implementation, the processor 302 may perform the message lengthening service for multiple electronic devices.
[0028] Figure 4 is a flow chart 400 illustrating one example of a method to shorten a message. A message may be sent from an electronic device to a server that provides a message shortening service. For example, a user may want to shorten a message so that it fits within a character limit of a messaging service. The server may provide the service to electronic devices that communicate with the server via the Internet. The server may shorten the message by compering the message to a dictionary that includes words or phrases and corresponding abbreviations. The server may then return the shortened message to the electronic device that sent the message to the server for shortening. The method may be implemented, for example, by the server electronic device 301 of Figure 3.
[0029] Beginning at 401 , a processor shortens a message received via a network from an electronic device based on a comparison of the message to a stored dictionary. For example, the processor may receive a message from the Internet. The processor may compare the words or phrases in the message to a dictionary that correlates words and phrases to abbreviations. The abbreviations may be human readable abbreviations, such as abbreviations commonly used in messages. The process may replace words or phrases in the message with the correlating abbreviations found in the dictionary.
[0030] In one implementation, the processor receives information about a character limit or a degree of shortening the message. For example, a messaging type, such as a type of social networking message, instant message, or a Short Message Service message, may have a character limit, and the processor may shorten the message by replacing words or phrases until the character limit is reached. The processor may shorten the words or phrases in any order, such as based on the order in the message. In some cases, the dictionary may have a level of shortening associated with each shortened form such that more common abbreviations are used to replace the message before less common abbreviations unti the character limit is reached. In some cases, a user may request a level of shortening without a particular character limit
[0031] In one implementation, the process may access multiple dictionaries. The processor may receive an identifier associated with the desired dictionary for shortening the message, or the processor may determine the appropriate dictionary. In some cases, a dictionary may be tailored to a particular user or type of user.
[0032] Proceeding to 402, the processor transmits the shortened version of the message via the network to the electronic device. For example, the processor may transmit the shortened version via the Internet back to the electronic device that sent the message to the processor for contracting. In some cases, the user may then choose to send the shortened message to a recipient.
[0033] Figure 5 is a block diagram illustrating one example of a computing system 500. The computing system 500 includes, for example, a server electronic device 501, a network 509, and electronic devices 505 including a first electronic device 510, a second electronic device 511, and a third electronic device 512. The electronic devices 505 may include more or fewer electronic devices. The server electronic device 501 may provide a service for expanding and contracting messages received from the electronic devices 505. For example, an electronic device may send the server electronic device 501 a message to expand or contract. The server electronic device may expand or contract the message and return the updated message to the electronic device via the network 509. The network 509 may be, for example, the Internet.
[0034] The server electronic device 501 may be any suitable type of electronic device. The server electronic device 501 may include a processor 503, a dictionary 502, and a machine-readable storage medium 504. The dictionary 502 may include a lookup table of words and phrases with longer forms associated with shorter forms. The shorter forms of words and phrases may in some cases include human readable abbreviations. The processor 503 may be any suitable processor, such as a central processing unit (CPU), a semiconductor-based microprocessor, or any other device suitable for retrieval and execution of instructions. In one implementation, the electronic device 101 includes logic instead of or in addition to the processor 503. As an alternative or in addition to fetching, decoding, and executing instructions, the processor 503 may include one or more integrated circuits (ICs) (e.g., an application specific integrated circuit (ASIC)) or other electronic circuits that comprise a plurality of electronic components for performing the functionality described below. In one implementation, the server electronic device 501 includes multiple processors. For example, one processor may perform some functionality and another processor may perform other functionality described below.
[0035] The machine-readable storage medium 504 may be any suitable machine readable medium, such as an electronic magnetic, optical, or other physical storage device that stores executable instructions or other data (e.g., a hard disk drive, random access memory, flash memory, etc.). The machine-readable storage medium 504 may be, for example, a computer readable non-transitory medium. The machine-readable storage medium 504 may include instructions executable by the processor 503.
[0036] The machine-readable storage medium 504 may include message expanding instructions 506, message contracting instructions 507, and message transmitting instructions 508. The message expanding instructions 506 may include instructions for expanding a message by comparing a received message to the dictionary 502. The message expanding instructions 506 may be executed where the processor 503 determines that the received message should be expanded, such as based on information received with the message. The message contracting instructions 507 may be executed where the processor 503 determines that the received message should be contracted. For example, a user may subscribe to both a message expansion and contraction service. In some cases, one user may subscribe to the message expansion service and another user may subscribe to the message contraction service. The message may be receive via the network 509.
[0037] The message expanding instructions 506 may include instructions to compare the message to the dictionary 502 such that abbreviations are looked up in the dictionary 502 and replaced with the longer forms. The message contracting instructions 507 may include instructions for contracting a message by comparing a message received via the network 510 to the dictionary 502 to replace longer forms of words or phrases with shorter forms from the dictionary 502. The message transmitting instructions 508 may include instructions for transmitting the contracted or expanded message back to the electronic device of the electronic devices 505 that sent the message to the server electronic device 501.
[0038] Figure 6 is a flow chart 600 illustrating one example of communicating with expanded and contracted messages. For example, one electronic device may contract a message before sending, such as to fit within a particular character limit, and a recipient electronic device may then expand the contracted message to make it more readable. At 601 , a user composes a message on a first electronic device. For example, a user may compose a Short Message Service message on a mobile phone. At 602, the first electronic device sends the message to the server. For example, the user may want the message contracted to fit within a particular character limit. At 603. the server contracts the received message. The server may compare the message to a stored lookup table to contract the message. At 604, the server sends the contracted message back to the first electronic device.
[0039] At 605, the first electronic device sends the contracted message to a second electronic device. For example, a user of the first electronic device may compose the message to be sent to the user of the second electronic device. At 606, the second electronic device sends the received message to the server to be expanded. For example, the user of the second electronic device may be unable to read the contracted message. At 607, the server expands the message received from the second electronic device. The server may compare the message to a table to determine how to replace abbreviations in the message with correlating expanded forms. At 608, the server sends the expanded message back to the second electronic device. The user of the second electronic device may then read the message. In some cases, the second electronic device may have software analyze the expanded message, such as to translate it into a voice message.
[0040] Figure 7 is a diagram illustrating one example 700 of contracting a message based on a dictionary associated with an identifier. For example, in some cases an electronic device may store or have access to multiple sets of dictionaries. The dictionaries may be different languages, styles, or types of abbreviations. The server may locate the specified dictionary based on the identifier. In some cases, other information is provided, and the processor determines the appropriate dictionary. For example, information about user dictionary preferences may be stored and accessed. A dictionary may be specific to users or message recipients, based on a level of a user's ability to understand abbreviations, or based on other characteristics of a user, such as age or location.
[0041] A dictionary for expanding or contracting a message may be created in any suitable manner. For example, the dictionary may be manually created by a user adding entries. In one implementation the dictionary is created based on learning techniques. For example, the server may request user feedback on a dictionary expansion or contraction, and update the dictionary based on the feedback.
[0042] The example 700 includes a first dictionary 701 and a second dictionary 702. The first dictionary 701 and the second dictionary 702 each include a set of expanded words or phrases correlated to an abbreviation. In some cases, the abbreviations stand for different words or phrases, such as where R may mean "are" in the first dictionary 701 and "running" in the second dictionary 702. Message 703 includes message text and a dictionary identifier indicating that the message should be contracted with the second dictionary 702. Contracted message 704 shows the message contracted using the second dictionary 702.
[0043] A network based service for expanding or contracting a message may allow a user to automatically adjust a message, such as prior to transmitting or reading the message. The network based service may allow the same dictionary to be available to multiple parties to a communication. It may also allow for greater functionality without consuming additional storage space on a user's electronic device.

中文:
[0001]由于在越来越小的键盘上打字的困难和一些消息传送服务的字符限制,缩写词对于诸如短消息服务消息之类的电子消息来说是常见的。缩写词可能是人可读的。然而,在一些情况下,缩写词对于用户来说难以记忆或者难以阅读。
[0002]附图描述示例实施方式。附图示出了以示例顺序执行的方法,但方法还可以被以其他顺序执行。以下具体描述参考附图,其中:
[0003]图1是举例说明计算系统的一个示例的框图。
[0004]图2是举例说明用来延长消息的方法的一个示例的流程图。
[0005]图3是举例说明计算系统的一个示例的框图。
[0006]图4是举例说明用来缩短消息的方法的一个示例的流程图。
[0007]图5是举例说明计算系统的一个示例的框图。
[0008]图6是举例说明用展开的和收缩的消息进行通信的一个示例的流程图。
[0009]图7是举例说明基于与标识符相关联的词典来收缩消息的一个示例的图。
[0012]从用户电子设备远程提供消息转换服务允许该用户电子设备让较少存储空间用于存储用于执行转换的软件以及用于存储缩写词查找表。服务器可以在没有用户电子设备的知识的情况下更新缩写词的词典,并且相同的更新的词典可以被解释通过从第一电子设备访问经更新的词典组成的消息的第二电子设备利用。
[0013]图1是举例说明计算系统100的一个示例的框图。计算系统100可以包括服务器电子设备101、网络104以及电子设备105。服务器电子设备101包括处理器102和词典103。处理器102可以是任何适合的处理器,诸如中央处理单元(CPU)、基于半导体的微处理器或适于指令的检索和执行的任何其他设备。在一个实施方式中,服务器电子设备101包括代替或除处理器102之外的逻辑。作为替代方案或者除取出、解码并且执行指令之外,处理器102可以包括一个或多个集成电路(IC)(例如,专用集成电路(ASIC))或包括用于执行在下面所描述的功能性的多个电子部件的其他电子电路。在一个实施方式中,服务器电子设备101包括多个处理器。例如,一个处理器可以执行一些功能性而另一处理器可以执行在下面所描述的其他功能性。
[0014]网络104可以是任何适合的网络,诸如因特网。处理器102可以经由网络104从电子设备105接收信息并且可以经由该网络将信息发送到电子设备105。在一个实施方式中,处理器102还经由网络104与其他电子设备进行通信。
[0015]电子设备105可以是任何适合的电子设备。例如,电子设备105可以是个人电子设备,诸如台式机、笔记本电脑或移动计算设备。电子设备105可以是移动电话。在一个实施方式中,消息可以在电子设备105上被创建并且经由网络104发送到服务器电子设备101。在一个实施方式中,电子设备105可以将消息发送到服务器电子设备101以便服务器电子设备101来延长。例如,用户可以确定消息难以阅读并且将该消息发送到服务器电子设备101以便转换成较长形式更加易读的格式。电子设备105可以以任何适合的方式连接到服务器电子设备101。例如,电子设备105可以通过网络(web)用户界面或者通过用于与服务器电子设备101进行通信下载到电子设备105上的应用(诸如移动设备应用)将文档上传到服务器电子设备101。
[0016]服务器电子设备101可以从网络104接收消息并且基于该消息与词典103的比较来延长该消息。词典103可以包括与缩写词相关的展开单词或短语的查找表。所接收到的消息中的缩写词可以与词典103中的缩写词进行比较,并且缩写词可以用来自词典103的展开单词或短语代替。服务器电子设备101然后可以将延长消息往回发送到原始地发送消息的电子设备105。
[0017]在一个实施方式中,服务器电子设备101包括机器可读存储介质。机器可读存储介质可以是任何适合的机器可读介质,诸如存储可执行指令或其他数据的电子、磁、光学或其他物理存储设备(例如,硬盘驱动器、随机存取存储器、闪速存储器等)。机器可读存储介质可以是例如计算机可读非暂时性介质。机器可读存储介质可以包括可由处理器102执行以延长所接收到的消息并且将它往回传送到电子设备105的指令。在一个实施方式中,处理器102可以针对多个电子设备来执行消息延长服务。
[0018]图2是举例说明用来延长消息的方法的一个示例的流程图200。服务器电子设备可以经由网络从用户电子设备接收消息并且基于存储的词典来延长该消息。例如,服务器电子设备可以查找消息中的单词、短语或缩写词并且将它们与词典中的条目进行比较。与消息中的文本相关的条目可以被插入到消息中以代替该消息中的缩写词或缩短的短语。服务器电子设备然后可以将延长消息往回传送到用户电子设备。这可以允许用户延长消息而不用将词典或转换软件存储在用户的电子设备上。用户可以在诸如移动电话之类的小型电子设备上以缩写格式键入消息,并且用户可以在传送之前展开该消息,或者接收者可以选择在阅读它之前展开该消息。所述方法可以例如通过来自图1的服务器电子设备101来实现。
[0019]在201处开始,处理器基于消息与存储的词典的比较来延长经由网络从电子设备接收到的消息。例如,处理器可以经由因特网从用户电子设备诸如从个人计算机或移动计算设备接收消息。用户设备可以响应于用来延长消息的用户输入(例如,因为用户理解消息有麻烦)或者响应于自动化过程将消息发送到处理器。例如,每个短服务消息或来自特定接收者的每个短服务消息可以被自动地发送到处理器以便延长,或者用户可以选择将特定消息发送到处理器以便延长。
[0020]词典可以存储较短的单词、缩写词以及与较长形式相关的短语的列表。所述存储的词典可以被存储在与处理器相同的电子设备中,或者处理器可以经由网络访问词典。在一个实施方式中存在多个词典。处理器可以基于与消息一起接收的词典标识符来确定哪一个词典要用于消息。在一些情况下,处理器可以接收关于消息的接收者或发送者的信息并且在储存器中查找与所述接收者或发送者相关联的词典。处理器可以将所关联的词典用于延长消息。在一些示例中,处理器可以接收关于延长消息的程度的信息,诸如用于被延长消息的字符限制。
[0021]处理器可以将消息中的单词或短语与词典中的条目进行比较。如果消息中诸如缩写词之类的单词或短语匹配或者以其他的方式与词典条目短形式相关,则处理器可以用词典中所关联的长形式代替消息中的单词或短语。
[0022]继续202,处理器经由网络将消息的延长版本传送到电子设备。例如,处理器可以经由因特网将消息的延长版本往回发送到电子设备。所述电子设备的用户然后可以选择将消息发送到接收者。在一些情况下,消息可以是在用户电子设备处接收到的消息,并且用户可以在接收到延长版本之后阅读该消息。在一些情况下,软件可以分析延长消息,所述软件诸如用于文本至语音转换的软件或用于文本分析的软件。
[0023]图3是举例说明计算系统300的一个示例的框图。计算系统300可以包括服务器电子设备301、网络304以及电子设备305。服务器电子设备301包括处理器302和词典303。处理器302可以是任何适合的处理器,诸如中央处理单元(CPU)、基于半导体的微处理器或适于指令的检索和执行的任何其他设备。在一个实施方式中,服务器电子设备301包括代替或除处理器302之外的逻辑。作为替代方案或者除取出、解码并且执行指令之外,处理器302可以包括一个或多个集成电路(IC)(例如,专用集成电路(ASIC))或包括用于执行在下面所描述的功能性的多个电子部件的其他电子电路。在一个实施方式中,服务器电子设备301包括多个处理器。例如,一个处理器可以执行一些功能性而另一处理器可以执行在下面所描述的其他功能性。
[0024]处理器302可以经由网络304与电子设备305进行通信。网络304可以是例如因特网。电子设备305可以是例如个人计算机或移动计算设备。在一些情况下,处理器302可以为经由网络304与处理器302进行通信的多个电子设备提供消息收缩服务。
[0025]用户可以在电子设备305上创建消息,诸如即时消息、社交网络消息或短消息服务消息。在一些情况下,用户可能想消息被缩短使得单词或短语被缩写。例如,正被使用的消息传送服务可能具有字符限制。电子设备305可以经由网络304将所创建的消息传送到服务器电子设备301。电子设备305可以通过网络用户界面或者通过下载到电子设备305的应用将文档上传到服务器电子设备301。例如,移动计算设备可以包括用于与服务器电子设备301进行通信的网络应用。
[0027]在一个示例中,服务器电子设备301包括机器可读存储介质。机器可读存储介质可以是任何适合的机器可读介质,诸如存储可执行指令或其他数据的电子、磁、光学或其他物理存储设备(例如,硬盘驱动器、随机存取存储器、闪速存储器等)。机器可读存储介质可以是例如计算机可读非暂时性介质。机器可读存储介质可以包括可由处理器302执行以缩短所接收到的消息并且将它往回传送到电子设备305的指令。在一个实施方式中,处理器302可以针对多个电子设备执行消息延长服务。
[0028]图4是举例说明用来缩短消息的方法的一个示例的流程图400。消息可以被从电子设备发送到提供消息缩短服务的服务器。例如,用户可能想要缩短消息以便它适合消息传送服务的字符限制。服务器可以将服务提供给经由因特网与服务器进行通信的电子设备。服务器可以通过将消息与包括单词或短语和对应缩写词的词典进行比较来缩短该消息。服务器然后可以将已缩短的消息返回给电子设备,所述电子设备将消息发送到服务器以便缩短。所述方法可以例如通过图3的服务器电子设备301来实现。
[0029]在401处开始,处理器基于消息与存储的词典的比较来缩短经由网络从电子设备接收到的消息。例如,处理器可以从因特网接收消息。处理器可以将消息中的单词或短语与使单词和短语与缩写词相关的词典进行比较。缩写词可以是人可读的缩写词,诸如在各消息中通常使用的缩写词。所述过程可以用在词典中找到的相关缩写词代替消息中的单词或短语。
[0030]在一个实施方式中,处理器接收关于字符限制或缩短消息的程度的信息。例如,诸如一种社交网络消息、即时消息或短消息服务消息之类的消息传送类型可能具有字符限制,并且处理器可以通过代替单词或短语直到该字符限制被达到为止来缩短消息。处理器可以诸如基于消息中的顺序之类的任何顺序来缩短单词或短语。在一些情况下,词典可以具有与每个缩短的形式相关联的缩短的水平,使得更多常见缩写词被用来代替不太常见的缩写词以前的消息直到字符限制被达到为止。在一些情况下,用户可能在没有特定字符限制的情况下请求缩短的水平。
[0031]在一个实施方式中,处理器可以访问多个词典。处理器可以接收与用于缩短消息所期望的词典相关联的标识符,或者处理器可以确定适当的词典。在一些情况下,可以为特定用户或一种类型用户定制词典。
[0032]继续402,处理器经由网络将消息的已缩短版本传送到电子设备。例如,处理器可以经由因特网将已缩短版本往回传送到将消息发送到处理器以便收缩的电子设备。在一些情况下,用户然后可以选择将已缩短的消息发送到接收者。
[0033]图5是举例说明计算系统500的一个示例的框图。计算系统500包括例如服务器电子设备501、网络509以及电子设备505,所述电子设备505包括第一电子设备510、第二电子设备511和第三电子设备512。电子设备505可以包括更多的或较少的电子设备。服务器电子设备501可以提供用于展开和收缩从电子设备505接收到的消息的服务。例如,电子设备可以向服务器电子设备501发送要展开或者收缩的消息。服务器电子设备可以展开或者收缩该消息并且经由网络509将经更新的消息返回给电子设备。网络509可以是例如因特网。
[0034]服务器电子设备501可以是任何适合类型的电子设备。服务器电子设备501可以包括处理器503、词典502以及机器可读存储介质504。词典502可以包括具有与较短形式相关联的较长形式的单词和短语的查找表。较短形式的单词和短语可以在一些情况下包括人可读的缩写词。处理器503可以是任何适合的处理器,诸如中央处理单元(CPU)、基于半导体的微处理器或适于指令的检索和执行的任何其他设备。在一个实施方式中,电子设备101包括代替或除处理器503之外的逻辑。作为替代方案或者除取出、解码并且执行指令之外,处理器503可以包括一个或多个集成电路(IC)(例如,专用集成电路(ASIC))或包括用于执行在下面所描述的功能性的多个电子部件的其他电子电路。在一个实施方式中,服务器电子设备501包括多个处理器。例如,一个处理器可以执行一些功能性而另一处理器可以执行在下面所描述的其他功能性。
[0035]机器可读存储介质504可以是任何适合的机器可读介质,诸如存储可执行指令或其他数据的电子、磁、光学或其他物理存储设备(例如,硬盘驱动器、随机存取存储器、闪速存储器等)。机器可读存储介质504可以是例如计算机可读非暂时性介质。机器可读存储介质504可以包括可由处理器503执行的指令。
[0036]机器可读存储介质504可以包括消息展开指令506、消息收缩指令507以及消息传送指令508。消息展开指令506可以包括用于通过将接收到的消息与词典502进行比较来展开消息的指令。可以诸如基于与消息一起接收的信息在处理器503确定所接收到的消息应该被展开情况下执行消息展开指令506。可以在处理器503确定所接收到的消息应该被收缩情况下执行消息收缩指令507。例如,用户可以订阅消息展开和收缩服务两者。在一些情况下,一个用户可以订阅消息展开服务而另一用户可以订阅消息收缩服务。可以经由网络509来接收消息。
[0037]消息展开指令506可以包括用来将消息与词典502进行比较使得缩写词在词典502中被查找到并且用较长形式代替的指令。消息收缩指令507可以包括用于通过将经由网络510接收到的消息与词典502进行比较以用来自词典502的较短形式代替较长形式的单词或短语来收缩消息的指令。消息传送指令508可以包括用于将已收缩或展开的消息往回传送到将消息发送到服务器电子设备501的电子设备505的电子设备的指令。
[0038]图6是举例说明用展开的和收缩的消息进行通信的一个示例的流程图600。例如,一个电子设备可以在发送之前收缩消息,诸如以便适合特定字符限制,而接收者电子设备然后可以展开已收缩的消息以使它更加易读。在601处,用户在第一电子设备上组成消息。例如,用户可以在移动电话上组成短消息服务消息。在602处,第一电子设备将消息发送到服务器。例如,用户可能想消息被收缩以适合特定字符限制。在603处,服务器收缩所接收到的消息。服务器可以将该消息与存储的查找表进行比较以收缩该消息。在604处,服务器将已收缩的消息往回发送到第一电子设备。
[0039]在605处,第一电子设备将已收缩的消息发送到第二电子设备。例如,第一电子设备的用户可以组成待发送到第二电子设备的用户的消息。在606处,第二电子设备将所接收到的消息发送到服务器以被展开。例如,第二电子设备的用户也许不能阅读已收缩的消息。在607处,服务器展开从第二电子设备接收到的消息。服务器可以将该消息与表进行比较以确定如何用相关展开形式代替该消息中的缩写词。在608处,服务器将已展开的消息往回发送到第二电子设备。第二电子设备的用户然后可以阅读该消息。在一些情况下,第二电子设备可能让软件分析已展开的消息,诸如以便将它翻译成语音消息。
[0040]图7是举例说明基于与标识符相关联的词典来收缩消息的一个示例700的图。例如,在一些情况下电子设备可以存储或者能够访问多组词典。所述词典可以是不同语言、风格或类型的缩写词。服务器可以基于标识符来定位所规定的词典。在一些情况下,其他信息被提供,并且处理器确定适当的词典。例如,关于用户词典偏好的信息可以被存储和访问。词典可以基于用户理解缩写词的能力的水平、或者基于用户的其他特性(诸如年龄或位置)而特定于用户或消息接收者。
[0041]可以以任何适合的方式创建用于展开或者收缩消息的词典。例如,词典可以通过用户添加条目来手动地创建。在一个实施方式中词典基于学习技术被创建。例如,服务器可以请求用户对词典展开或收缩的反馈,并且基于该反馈来更新词典。
[0042]示例700包括第一词典701和第二词典702。第一词典701和第二词典702各包括与缩写词相关的一组展开的单词或短语。在一些情况下,缩写词代表不同的单词或短语,诸如其中R可以意指第一词典701中的“are(是)”和第二词典702中的“running(跑步)”。消息703包括消息文本和指示消息应该被用第二词典702收缩的词典标识符。收缩的消息704示出了使用第二词典702收缩的消息。
[0043]用于展开或者收缩消息的基于网络的服务可以允许用户诸如在传送或者阅读该消息之前自动地调整消息。基于网络的服务可以允许相同的词典可被通信的多方利用。还可以在不消耗用户的电子设备上附加的存储空间的情况下允许更大的功能性。