WO2020053971A1 - 送信装置、送信方法、及び送信プログラム - Google Patents

送信装置、送信方法、及び送信プログラム Download PDF

Info

Publication number
WO2020053971A1
WO2020053971A1 PCT/JP2018/033685 JP2018033685W WO2020053971A1 WO 2020053971 A1 WO2020053971 A1 WO 2020053971A1 JP 2018033685 W JP2018033685 W JP 2018033685W WO 2020053971 A1 WO2020053971 A1 WO 2020053971A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
partial
display area
transmission
messages
Prior art date
Application number
PCT/JP2018/033685
Other languages
English (en)
French (fr)
Inventor
和久 直井
Original Assignee
楽天株式会社
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 楽天株式会社 filed Critical 楽天株式会社
Priority to US16/499,552 priority Critical patent/US11831416B2/en
Priority to PCT/JP2018/033685 priority patent/WO2020053971A1/ja
Priority to CN201880028008.5A priority patent/CN111183415B/zh
Priority to JP2019534913A priority patent/JP6934523B2/ja
Priority to KR1020197027208A priority patent/KR102225245B1/ko
Publication of WO2020053971A1 publication Critical patent/WO2020053971A1/ja

Links

Images

Classifications

    • 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/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression
    • 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/10Multimedia information
    • 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/21Monitoring or handling of messages
    • 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/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • 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/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting
    • 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/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads

Definitions

  • the present invention relates to a technique for transmitting a message, and more particularly, to an apparatus and a method for transmitting a message to a terminal device that enables a message in a message display area to be scrolled and browsed.
  • Patent Literature 1 discloses a technique in which a software robot returns a response message corresponding to a message transmitted from a user.
  • Instant Messenger is often used to send relatively short messages, but it can also send long messages. However, if the message is longer than the displayable size of the display area of the receiving terminal device, only a part of the message can be displayed at a time. Therefore, in order to read the received message from the beginning, the user had to manually scroll through the messages.
  • the present invention has been made in view of the above points, and a transmitting device, a transmitting method, and a transmitting device that transmit a message so that a user can visually recognize the entire message in a receiving terminal device without manually scrolling.
  • the purpose is to provide a transmission program.
  • the invention according to claim 1 is directed to a receiving apparatus which automatically executes scrolling such that at least the last of the latest message is positioned within the display area when a message is received.
  • the dividing unit divides a message transmitted to the receiving device into a plurality of partial messages each having a length equal to or less than a predetermined length, an enqueue unit that queues the plurality of partial messages, A first transmitting unit that retrieves one of the partial messages from the queue and transmits the partial message to the receiving device; and receiving notification information indicating that the transmitted partial message is displayed in the display area.
  • the original message can be divided, and a plurality of partial messages each having a length that can be entirely displayed in the display area can be generated. Also, a plurality of partial messages are put in a queue, and partial messages are taken out of the queue one by one and transmitted, so that the order of the plurality of partial messages in the original message can be maintained.
  • the transmitted message is entirely displayed in the display area at once by automatic scrolling by the receiving device. Since the next partial message is transmitted after the notification information is received, the first transmitted partial message is completely displayed in the display area before the receiving device receives and displays the partial message. Is guaranteed. Then, the next partial message is completely displayed in the display area. Therefore, the user can completely view each partial message. As a result, the user can view substantially the entire original message without having to manually scroll.
  • a history acquisition unit that acquires a history of a user operation regarding an instant messenger in the receiving device, and the next And a time determining means for determining a time until the transmission of the partial message.
  • the second transmitting means transmits the next partial message after the determined time from when the notification information is received. It is characterized by the following.
  • the time to wait from when the notification information is received to when the next partial message is transmitted is determined based on the user's operation history regarding the instant messenger. This time corresponds to the time that elapses after the first partial message is displayed in the display area until the next partial message is displayed in the display area. Therefore, the timing of transmitting the next partial message can be appropriately determined for each user. As a result, it is possible to increase the probability that the receiving device will display the next partial message after the user has finished reading the first partial message.
  • a size information acquisition unit that acquires size information indicating a size of the display area, and a partial information based on the received size information.
  • Length determining means for determining an upper limit of the length per message, wherein the dividing means divides the message into the plurality of partial messages according to the determined upper limit of the length.
  • the original message when the size of the display area differs depending on the receiving device, the original message can be divided into partial messages each having an appropriate length according to the size of the display area.
  • the dividing unit may be configured such that a length of the message transmitted to the receiving device exceeds a second predetermined length.
  • the message is divided into the plurality of partial messages, and if the length of the message transmitted to the receiving device is equal to or less than the second predetermined length, the message is not divided by the dividing unit, and the (1)
  • the transmitting means transmits the message to the receiving device.
  • the receiving device when the length of the original message is long enough to display the entire message in the display area at one time, the receiving device can display the entire original message at once.
  • the receiving unit transmits the next partial message transmitted by the second transmitting unit to the display area. Further receiving the notification information indicating that the message is displayed, the reception of the notification information by the reception unit and the transmission of the partial message by the second transmission unit are repeated until the queue becomes empty. I do.
  • each partial message is completely displayed in the display area.
  • the user can view substantially the entire original message without having to manually scroll.
  • a computer which transmits a message to a receiving device which automatically executes scrolling so that at least the end of the latest message is located in the display area when the message is received.
  • it comprises a second transmission step of transmitting the next partial message to the receiving device is removed from the queue, the.
  • a computer of a transmitting device that transmits a message to a receiving device that automatically executes scrolling so that at least the end of the latest message is located within the display area.
  • a dividing unit that divides a message transmitted to the receiving device into a plurality of partial messages each having a length equal to or less than a predetermined length; an enqueue unit that queues the plurality of partial messages;
  • a first transmitting unit that removes one partial message from the queue and transmits the partial message to the receiving device; a receiving unit that receives notification information indicating that the transmitted partial message is displayed in the display area; After the notification information is received, the next partial message of the plurality of partial messages is Characterized in that to function as a second transmission means for transmitting to the receiving device Eject and.
  • the user can view each partial message at once from its head to its tail.
  • the user can view substantially the entire original message without having to manually scroll.
  • FIG. 9 is a diagram illustrating an example of how a message is divided.
  • FIG. 14 is a diagram illustrating an example of a difference in the length of a partial message due to a difference in the size of a message display area.
  • FIG. 9 is a sequence diagram illustrating an operation example of the messaging system SA.
  • FIG. 3 is a diagram illustrating an example of an operation outline of the messaging system SB.
  • FIG. 1 is a diagram illustrating an example of a schematic configuration of a messaging system SA according to the present embodiment.
  • the messaging system SA includes at least one bot server 1, a message management server 2, and a plurality of user terminals 3.
  • the bot server 1, the message management server 2, and each user terminal 3 can mutually transmit and receive data via the network NW using, for example, TCP / IP as a communication protocol.
  • the network NW is constructed by, for example, the Internet, a dedicated communication line (for example, a CATV (Community @ Antenna @ Television) line), a mobile communication network (including a base station or the like), a gateway, and the like.
  • Each user terminal 3 is a terminal device used by a user having an account of the messaging system SA.
  • Examples of the user terminal 3 include a mobile information terminal such as a smartphone and a tablet computer, a mobile phone, a PDA (Personal Digital Assistant), and a personal computer.
  • An instant messenger is installed in each user terminal 3.
  • the user terminal 3 transmits the message input by the user to the destination user terminal 3 or the bot server 1 via the message management server 2.
  • a plurality of message display areas can be switched and displayed. For example, a message transmitted / received to / from an account (other user or bot server 1) registered as a friend of the user is displayed in a message display area of the account.
  • This display area may be the entire screen of the display of the user terminal 3 or a partial area of the screen.
  • the user terminal 3 controls the screen so that at least the end of the latest received or input message is displayed in the display area. For example, the user terminal 3 automatically scrolls the latest message and the entire past message upward, and positions the end of the latest message at the lower end of the display area.
  • the user can also view past messages by performing an operation of scrolling the messages in the message display area.
  • the message may be scrolled pixel by pixel or line by line.
  • the latest message is short, the entire message is displayed, whereas when the latest message is long, only a part of the message is displayed. To see the beginning of a long message, the user must manually scroll through the message. Therefore, the operation burden on the user increases, and it becomes difficult to browse the messages quickly.
  • the bot server 1 is a server device or a personal computer that automatically transmits a message to the user terminal 3 via the message management server 2.
  • An Internet bot is installed in the bot server 1.
  • the user of the user terminal 3 registers the message service (one of the accounts in the messaging system SA) provided by the bot server 1 as a friend, so that the user terminal 3 can send and receive messages to and from the bot server 1. it can.
  • the bot server 1 may provide, for example, information to the user through a message, or may have an automatic conversation with the user. For example, when receiving a message from the user terminal 3, the bot server 1 may return a message corresponding to the received message, or may transmit the message at a predetermined timing or periodically.
  • a menu dedicated to the message service provided by the bot server 1 may be settable by an administrator of the bot server.
  • This dedicated menu is displayed in, for example, a lower part of a message display area for displaying a message with the bot server 1 in the instant messenger of the user terminal 3.
  • an area excluding the special menu from the instant messenger screen is a message display area.
  • FIG. 2 is a diagram illustrating an example of a difference between message display areas. As shown in FIG. 2, when the dedicated menu is not displayed on the screen 101, the entire screen 101 is the message display area 101.
  • the dedicated menu 103 is displayed on the screen 101, the screen 101 is divided into a message display area 102 and a dedicated menu 103.
  • the user terminal 3 may access an external website, for example, or automatically input a predetermined message.
  • the dedicated menu may be displayed at all times, or may be switched between display and non-display in accordance with a user operation.
  • Information for displaying the dedicated menu may be registered in the message management server 2 in advance by, for example, an administrator of the bot server 1.
  • the bot server 1 may divide a message to be transmitted to the user terminal 3 into a plurality of partial messages. The bot server 1 sequentially transmits a plurality of partial messages one by one.
  • the message management server 2 is a server device that mediates messages transmitted and received between the user terminals 3. Further, the message management server 2 also mediates a message between the bot server 1 and the user terminal 3. When receiving a message from any of the user terminals 3 or the bot server 1, the message management server 2 transfers the message to the destination user terminal 3 or the bot server 1. When a message is displayed in the message display area of the transfer destination user terminal 3 in the instant messenger, the message management server 2 may receive the read information from the user terminal 3. The read information is information notifying that the message received by the user terminal 3 has been displayed in the message display area of the user terminal 3. The message management server 2 transfers the received read information to the user terminal 3 or the bot server 1 that has transmitted the message. Further, when a display area for displaying a message with the bot server 1 is displayed on the user terminal 3, the message management server 2 may display a dedicated menu on the user terminal 3. Further, the message management server 2 may also serve as the bot server 1.
  • FIG. 3A is a block diagram illustrating an example of a schematic configuration of the bot server 1 according to the present embodiment.
  • the bot server 1 includes a system control unit 11, a system bus 12, an input / output interface 13, a storage unit 14, and a communication unit 15.
  • the system control unit 11 and the input / output interface 13 are connected via a system bus 12.
  • the system control unit 11 includes a CPU (Central Processing Unit) 11a, a ROM (Read Only Memory) 11b, a RAM (Random Access Memory) 11c, and the like.
  • the CPU 11a is an example of a processor.
  • the present invention can be applied to various processors different from the CPU.
  • the storage unit 14, the ROM 11b, and the RAM 11c are each an example of a memory.
  • the present invention is applicable to various memories different from a hard disk, a ROM, and a RAM.
  • a queue 11d for temporarily storing a plurality of partial messages generated by dividing a message to be transmitted to the user terminal 3 is temporarily reserved in the RAM 11c.
  • the input / output interface 13 performs an interface process between the storage unit 14 and the communication unit 15 and the system control unit 11.
  • the storage unit 14 is configured by, for example, a hard disk drive or the like.
  • the storage unit 14 stores, for example, a message DB (database) 14a.
  • the message DB 14a stores information such as a message transmitted to the user terminal 3 or a character string used as a material of the message.
  • the system control unit 11 acquires a message to be transmitted from the message DB 14a or responds to a message received from the user terminal 3 or according to a situation, or transmits a message to be transmitted using information stored in the message DB 14a. Generate.
  • the storage unit 14 further stores various programs such as an operating system and an Internet bot program. Each code included in the Internet bot program causes the CPU 11a to execute a function described later.
  • the Internet bot program may be obtained from another server device or the like via the network NW, or may be recorded on a recording medium such as a magnetic tape, an optical disk, or a memory card and read via a drive device. You may do so.
  • the communication unit 15 connects to the network NW and controls a communication state between the message management server 2 and the user terminal 3.
  • FIG. 3B is a diagram illustrating an example of functional blocks of the system control unit 11 of the user terminal 3 according to the present embodiment.
  • the system control unit 11 causes the CPU 11a to read out and execute various codes included in the Internet bot program, so that at least the message division unit 111, the message enqueue unit 112, the message transmission unit 113, and the read information It functions as the receiving unit 114.
  • the system control unit 11 may function as the display area size obtaining unit 115, the partial message length determining unit 116, the operation history obtaining unit 117, and the waiting time determining unit 118.
  • the message division unit 111 divides an original message generated or acquired as a message to be transmitted to the user terminal 3 into a plurality of partial messages each having a length equal to or less than a predetermined partial message length upper limit.
  • FIG. 4A is a diagram illustrating an example of how a message is divided.
  • the original message 200 is divided into three partial messages 201 to 203.
  • the partial messages 201, 202, and 203 are the head, center, and end of the message 200, respectively.
  • the number of partial messages may be two or more.
  • the message division unit 111 may divide the original message at an arbitrary position. However, it is preferable that the message division unit 111 divides the message into units of character strings that are easy for the user to read. For example, the message division unit 111 may divide a message by a predetermined symbol or character. Examples of predetermined symbols or characters include reading marks, punctuation marks, parentheses, quotes, question marks, exclamation marks, spaces, colons, semicolons. Further, for example, the message division unit 111 may specify a clause, a sentence, or the like by performing morphological analysis on the original message, and may divide the message into sections, sentences, or the like.
  • the partial message length upper limit is the upper limit of the length per one partial message. Assuming that the upper limit of the partial message length is UL and the length of a message that can be displayed at one time in the message display area of the user terminal 3 is SZ, the upper limit of the partial message length is determined so as to satisfy UL ⁇ SZ.
  • the partial message length upper limit ensures that each partial message is completely displayed in the message display area.
  • the partial message length upper limit may be expressed by, for example, the number of characters, the number of lines, or another scale.
  • the partial message length upper limit may be preset in accordance with, for example, the user terminal 3 having the smallest message display area size among all types of user terminals 3.
  • each partial message may be as short as it is less than or equal to the partial message length upper limit. Because the original message includes a line feed, the line feed may be included in the middle of any of the partial messages. In this case, when the partial message is displayed in the message display area, a margin may be generated in the middle of the partial message.
  • the message division unit 111 may adjust the length of each partial message in consideration of a possible margin so that each partial message is completely displayed in the message display area.
  • the message division unit 111 may divide the original message when the length of the original message exceeds a predetermined threshold. Assuming that the threshold is TH, the threshold is determined so as to satisfy UL ⁇ TH ⁇ SZ. When the threshold value and the partial message length upper limit are the same, the threshold value may also serve as the partial message length upper limit. If the length of the original message is equal to or smaller than the threshold, the message division unit 111 transmits the original message to the user terminal 3 without any message division by the message division unit 111. The user is able to read the message quickly because unnecessary splitting is not performed.
  • the display area size obtaining unit 115 obtains size information indicating the size of the message display area in the user terminal 3. Examples of the size information include the size of the message display area itself, user agent information, information indicating the model of the user terminal 3, and other information indirectly indicating the size.
  • the display area size acquisition unit 115 can receive size information directly from the user terminal 3.
  • the display area size acquisition unit 115 may use, for example, an instant messaging API (Application @ Programming @ Interface) provided from the message management server 2 if the size can be acquired.
  • Get information For example, when the message management server 2 displays a dedicated menu on the user terminal 3 that displays the message display area for the bot server 1, the management server 2 generates information (indicating coordinates of the dedicated menu in the message display area). For example, the coordinates of each vertex of the dedicated menu) may be transmitted to the bot server 1.
  • the display area size obtaining unit 115 can specify the size of the message display area from the coordinates of the lower right vertex of the special menu.
  • the display area size acquisition unit 115 can specify the size of the message display area excluding the area occupied by the dedicated menu from the coordinates of the upper left vertex of the dedicated menu.
  • the display area size obtaining unit 115 may obtain the size information each time a message transmitted to the user terminal 3 is generated or obtained. Alternatively, the display area size acquisition unit 115 may store the acquired size information in the storage unit 14 in association with the identification information for identifying the account of the user of the message transmission destination. Thereafter, the display area size acquisition unit 115 may acquire size information from the storage unit 14.
  • the partial message length determining unit 116 determines at least the partial message length upper limit of the partial message length upper limit and the threshold based on the size information acquired by the display area size acquiring unit 115. As described above, the partial message length determination unit 116 determines the partial message length upper limit so as to satisfy UL ⁇ SZ. When determining both the partial message length upper limit and the threshold, the partial message length determining unit 116 determines the threshold and the partial message length upper limit so as to satisfy UL ⁇ TH ⁇ SZ.
  • the message division unit 111 divides the original message into a plurality of partial messages according to the determined partial message length upper limit.
  • FIG. 4B is a diagram illustrating an example of a difference in the length of the partial message due to a difference in the size of the message display area.
  • FIG. 4B shows user terminals 3-1 and 3-2 as examples of the user terminal 3.
  • the user terminal 3-1 is a terminal device having a relatively small display size, such as a mobile phone.
  • the message division unit 111 divides the message 200 into, for example, three partial messages 201 to 203 for the user terminal 3-1.
  • the user terminal 3-2 is, for example, a tablet computer, and the display size of the user terminal 3-2 is larger than the display size of the user terminal 3-1.
  • the partial message length determination unit 116 determines, for the user terminal 3-2, a partial message length upper limit longer than the partial message length upper limit determined for the user terminal 3-1. Therefore, the message division unit 111 divides the same message 200 into, for example, two partial messages 204 and 205 for the user terminal 3-2. Thus, a partial message having a length suitable for the size of the message display area of each user terminal 3 is generated.
  • the message enqueue unit 112 enqueues (enqueues) a plurality of partial messages generated by the message division by the message division unit 111. Specifically, the message enqueue unit 112 generates a queue 11d for the user terminal 3 as a message transmission destination in the RAM 11c.
  • the queue 11d may have any data structure that allows partial messages to be put in and taken out on a first-in first-out basis.
  • the message enqueue unit 112 sequentially puts a plurality of partial messages in the queue 11d according to the order of the partial messages from the partial message corresponding to the head part to the partial message corresponding to the tail part in the original message. As a result, the order of the partial messages in the original message is maintained.
  • the message enqueue unit 112 first puts the partial message 201 in the queue, puts the second partial message 202 in the queue, and puts the third partial message 202 third. Put 203 in the queue.
  • the message transmitting unit 113 takes out one partial message from the plurality of partial messages queued by the message enqueue unit 112 from this queue, and transmits it to the user terminal 3 via the message management server 2.
  • the first extracted partial message is a partial message corresponding to the head of the original message.
  • FIG. 5 is a diagram illustrating an example of the transmission and reception of the partial message and the read information. For example, as shown in FIG. 4A, it is assumed that partial messages 201 to 203 are stored in the queue 11d.
  • the message transmitting unit 113 takes out the partial message 201 from the queue 11d and transmits it.
  • the user terminal 3 positions the end of the partial message 201 at the lower end of the message display area 31 by automatic scrolling. Since the length of the partial message 201 is equal to or less than the upper limit of the partial message length, the entire partial message 201 is displayed in the message display area 31. No scroll operation is required by the user.
  • the read information receiving unit 114 receives the read information indicating that the partial message transmitted by the message transmitting unit 113 is displayed in the display area in the message table area of the user terminal 3 of the transmission destination.
  • the read information is transmitted from the user terminal 3 to the bot server 1 via the message management server 2.
  • the message transmitting unit 113 may embed a web beacon in a partial message to be transmitted, for example.
  • the URL in the web beacon image tag includes the IP address assigned to the bot server. Therefore, when the received partial message is displayed in the message display area, the user terminal 3 transmits an image request to the bot server 1.
  • the read information receiving unit 114 may regard this request as read information.
  • the message transmitting unit 113 takes out the next partial message from the queue 11d among the plurality of partial messages, and sends the next partial message to the user terminal 3 via the message management server 2. Send to As described above, the user terminal 3 transmits the read information when displaying the message in the message display area. Therefore, before the next partial message is received and displayed by the user terminal 3, it is ensured that the entire transmitted partial message is completely displayed in the display area. For example, as shown in FIG. 5, after the read information is transmitted from the user terminal 3 to the bot server 1 in response to the transmission of the partial message 201, the message transmitting unit 113 extracts the partial message 202 from the queue 11d and transmits the message. I do.
  • the user terminal 3 automatically scrolls the received partial message 202 and the already displayed partial message 201 to position the end of the partial message 202 at the lower end of the message display area.
  • the length of the partial message 202 is equal to or less than the upper limit of the partial message length
  • the entire partial message 202 is displayed in the message display area 31.
  • the scroll operation by the user is unnecessary, the user can quickly browse the original message. Part or all of the message 201 may not be visible from the message display area 31.
  • the read information receiving unit 114 further receives the read information indicating that the next partial message transmitted by the message transmitting unit 113 has been displayed in the message display area, as described above.
  • the message transmitting unit 113 extracts the next partial message from the plurality of partial messages from the queue 11d. Send. Such reception of the read information and transmission of the partial message are repeated until the queue 11d becomes empty. For example, as shown in FIG. 5, after the read information is transmitted from the user terminal 3 to the bot server 1 in response to the transmission of the partial message 202, the message transmitting unit 113 extracts the partial message 203 from the queue 11d and transmits the message. I do.
  • the user terminal 3 automatically scrolls the received partial message 203 and the already displayed partial messages 201 and 202 to position the end of the partial message 203 at the lower end of the message display area.
  • the entire partial message 203 is displayed in the message display area 31.
  • the read information is transmitted from the user terminal 3 to the bot server 1 in response to the transmission of the partial message 203. Since the queue 11d is empty at this point, the transmission of the partial message ends.
  • the message transmitting unit 113 may transmit the next partial message after a predetermined waiting time has elapsed since the read information was received.
  • the waiting time is the time until the transmission of the next partial message. This waiting time corresponds to the time that elapses from when a partial message is displayed in the message display area to when the next partial message is displayed. This provides time for the user to read the previous partial message before the next partial message is displayed. It is desirable that the waiting time is set so that the next partial message is displayed as much as possible at the timing when the user finishes reading the partial message or several seconds after the reading is completed.
  • the waiting time may be preset for all users, or may be determined for each user. Therefore, the operation history obtaining unit 117 obtains a history of a predetermined operation performed by the user regarding the instant messenger.
  • the predetermined operation recorded in the operation history may be, for example, an operation indicating that the user has finished reading the message. Examples of this operation include scrolling a message, inputting or sending a message in response to a received message, switching an instant messenger screen, and terminating the instant messenger.
  • the message management server 2 also serves as the bot server 1, the message management server 2 receives information notifying that a predetermined operation has been performed from the user terminal 3 when the user performs these operations. Good.
  • the message transmitting unit 113 causes the storage unit 14 to store the time at which the predetermined operation is received as the operation history in association with the identification of the user's account.
  • the message transmission unit 113 transmits, for example, a reply message to the message transmitted by the bot server 1 (or the last partial message of the generated partial messages) by the user.
  • the time at which the reply message was received from the user terminal 3 may be stored in the storage unit 14 as the operation history in association with the identification information of the user's account.
  • the operation history acquisition unit 117 acquires the operation history of the target user from the storage unit 14 when, for example, a predetermined number or more of operation histories are stored in the storage unit 14 or every time the operation history is stored.
  • the waiting time determination unit 118 determines a waiting time based on the operation history acquired by the operation history acquisition unit 117. For example, for each operation history, the waiting time determination unit 118 performs a predetermined operation after the read information is received from the user terminal 3 of the target user (until a reply message is received from the user terminal 3). May be calculated.
  • the waiting time determination unit 118 may determine the representative value of the elapsed time as the waiting time.
  • the representative value may be, for example, an average value, a median value, or the like, or may be calculated by an equation such as average value + standard deviation ⁇ coefficient (coefficient is a predetermined real number).
  • the waiting time determination unit 118 determines the waiting time by excluding an extremely long elapsed time as an outlier.
  • the waiting time determination unit 118 stores the determined waiting time in the storage unit 14 in association with, for example, the identification information of the account of the target user.
  • FIG. 6 is a sequence diagram illustrating an operation example of the messaging system SA.
  • the processing of the bot server 1 in FIG. 6 is executed according to various codes included in the Internet bot program stored in the storage unit 14.
  • the bot server 1 is different from the message management server 2
  • the partial message and the read information are transmitted and received via the message management server 2, but the processing of the message management server 2 is omitted in FIG.
  • the user inputs some inquiry message to the bot server 1 (step S1). Then, the user terminal 3 transmits the input inquiry message to the bot server 1 (Step S2). The bot server 1 generates a reply message in response to the inquiry message (Step S3). Next, the bot server 1 determines whether or not the length of the generated message exceeds a threshold (Step S4). If the bot server 1 determines that the length of the message is equal to or less than the threshold (step S4: NO), the bot server 1 transmits the generated message to the user terminal 3 as it is (step S5).
  • the bot server 1 determines that the length of the message exceeds the threshold value (step S4: YES)
  • the bot server 1 divides the generated message into partial messages each having a length equal to or less than the partial message length upper limit (Step S6).
  • the partial message length upper limit may be determined in advance, or may be determined based on the size information of the user terminal 3 that has transmitted the inquiry message.
  • the bot server 1 places a plurality of partial messages in the queue 11d (Step S7).
  • the bot server 1 takes out one partial message from the queue 11d and sends it to the user terminal 3 (Steps S8 and S9).
  • the user terminal 3 displays the received partial message in the message display area, and transmits the read information to the bot server 1 (Steps S10 and S11).
  • the bot server 1 determines whether or not the queue is empty (Step S12). If the bot server 1 determines that the queue is not empty (step S12: NO), it waits for a certain waiting time (step S13). As described above, the waiting time may be determined in advance, or may be determined based on the operation history of the user who has transmitted the read information. Next, the bot server 1 takes out one partial message from the queue 11d and sends it to the user terminal 3 (Steps S8 and S9). On the other hand, if the bot server 1 determines that the queue 11d is empty (step S12: YES), the bot server 1 ends the transmission of the partial message. Thus, steps S8 to S13 are repeated until the queue 11d becomes empty.
  • the system control unit 11 divides an original message to be transmitted to the user terminal 3 into a plurality of partial messages each having a length equal to or less than the partial message length upper limit. Further, the system control unit 11 places a plurality of partial messages in the queue 11d. Further, the system control unit 11 extracts one of the partial messages from the queue 11 d and transmits the partial message to the user terminal 3. Further, the system control unit 11 receives the read information indicating that the transmitted partial message has been displayed in the message display area. Further, after the read information is received, the system control unit 11 takes out the next partial message from the queue 11 d among the plurality of partial messages and transmits the partial message to the user terminal 3. Therefore, the user can completely view each partial message. As a result, the user can view substantially the entire original message without having to manually scroll.
  • the system control unit 11 may acquire the history of the user's operation regarding the instant messenger in the user terminal 3. Further, the system control unit 11 may determine the waiting time until the transmission of the next partial message based on the acquired history. Further, the system control unit 11 may transmit the next partial message after the waiting time determined after the read information is received. In this case, the timing of transmitting the next partial message can be appropriately determined for each user. As a result, it is possible to increase the probability that the user terminal 3 will display the next partial message after the user has finished reading the first partial message.
  • the system control unit 11 may obtain size information indicating the size of the message display area. Further, the system control unit 11 may determine the partial message length upper limit based on the received size information. Further, the system control unit 11 may divide the original message into a plurality of partial messages according to the determined partial message length upper limit. In this case, when the size of the message display area differs depending on the user terminal 3, the original message can be divided into partial messages each having an appropriate length according to the size of the message display area.
  • the system control unit 11 may divide the original message into a plurality of partial messages. On the other hand, when the length of the original message is equal to or smaller than the threshold, the system control unit 11 may transmit the original message to the user terminal 3 without dividing the message. In this case, if the length of the original message is such that the entire message can be displayed in the message display area at one time, the user terminal 3 can display the entire original message at once.
  • the system control unit 11 may further receive read information indicating that the transmitted next partial message has been displayed in the message display area. Further, after the read information is received, the system control unit 11 may take out the next partial message from the queue 11 d among the plurality of partial messages and transmit the same to the user terminal 3. The system control unit 11 may repeat the reception of the read information and the transmission of the partial message until the queue 11d becomes empty. In this case, even when the original message is divided into three or more partial messages, each partial message is completely displayed in the message display area. Thus, the user can view substantially the entire original message without having to manually scroll.
  • the present invention is applied to a message automatically transmitted by the Internet bot (bot server 1).
  • the message transmitted and received between the user terminals 3 is used. The present invention is applied to this.
  • FIG. 7A is a diagram showing an example of a schematic configuration of the messaging system SB according to the present embodiment.
  • the messaging system SB includes a message management server 2 and a plurality of user terminals 3.
  • the message management server 2 and each user terminal 3 can mutually transmit and receive data via the network NW.
  • the configuration of the message management server 2 is the same as the configuration shown in FIG. 3A.
  • the function blocks of the system control unit 11 of the message management server 2 have the same functions as the function blocks shown in FIG. 3B.
  • FIG. 7B is a diagram illustrating an example of an operation outline of the messaging system SB.
  • the user of the user terminal 3-3 inputs a message 210 to be sent to the user of the user terminal 3-4.
  • the user terminal 3-3 transmits the message 210 to the message management server 2.
  • the message management server 2 transmits the message 210 to the user terminal 3-4 as it is.
  • the message management server 2 divides the message 210 into, for example, partial messages 211 to 213 each having a length equal to or less than the partial message length upper limit.
  • the message management server 2 places the partial messages 211 to 213 in the queue 11d.
  • the message management server 2 takes out the partial message 211 from the queue and sends it to the user terminal 3-4.
  • the message management server 2 extracts the partial message 212 from the queue and sends it to the user terminal 3-4. Further, after receiving the read information from the user terminal 3-4, the message management server 2 takes out the partial message 213 from the queue and sends it to the user terminal 3-4.
  • the user can visually recognize substantially the entire message transmitted and received between the user terminals 3 without manual scrolling.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

手動でスクロールしなくても、受信側の端末装置においてメッセージ全体をユーザが視認可能なようにメッセージを送信することを目的とする。送信装置は、受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する。送信装置は、複数の部分メッセージをキューに入れる。送信装置は、複数の部分メッセージのうち、一の部分メッセージをキューから取り出して受信装置へ送信する。送信装置は、送信された部分メッセージが表示領域に表示されたことを示す通知情報を受信する。送信装置は、通知情報が受信された後、複数の部分メッセージのうち、次の部分メッセージをキューから取り出して受信装置へ送信する。

Description

送信装置、送信方法、及び送信プログラム
 本発明は、メッセージの送信技術に関し、特に、メッセージ表示用の領域内のメッセージをスクロールして閲覧可能とする端末装置へメッセージを送信する装置及び方法に関する。
 従来、携帯機器等の端末装置間でメッセージをやりとりするためのインスタントメッセンジャーが広く利用されている。このアプリケーションにおいては、或る端末装置からメッセージが送信されると、一般的には送信先の端末装置はこのメッセージを即時に受信する。メッセージを受信した端末装置は、このメッセージの末尾が表示領域の下端に位置するように自動的にスクロールを実行する。これにより、ユーザは最新のメッセージを読むことができる。
 また、インスタントメッセンジャーを利用した情報配信の一手段又は会話の相手として、自動的にメッセージを送信するインターネットボットが登場するに至っている。例えば、特許文献1には、ソフトウェアロボットが、ユーザから送信されてきたメッセージに対応した応答メッセージを返信する技術が開示されている。
特開2014-225268号公報
 インスタントメッセンジャーは比較的短いメッセージの送信に使用されることが多いものの、長いメッセージを送信することも可能である。しかしながら、受信側の端末装置の表示領域のサイズに表示可能な長さよりもメッセージが長いと、一度にそのメッセージの一部のみしか表示することができない。従って、受信したメッセージをその先頭から読むためには、ユーザは手動でメッセージをスクロールしなければならなかった。
 本発明は以上の点に鑑みてなされたものであり、手動でスクロールしなくても、受信側の端末装置においてメッセージ全体をユーザが視認可能なようにメッセージを送信する送信装置、送信方法、及び送信プログラムを提供することを目的とする。
 上記課題を解決するために、請求項1に記載の発明は、メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置において、前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割手段と、前記複数の部分メッセージをキューに入れるエンキュー手段と、前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信手段と、前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信手段と、前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信手段と、を備えることを特徴とする。
 この発明によれば、元のメッセージを分割して、それぞれ全体が表示領域内に全体が表示可能な長さの複数の部分メッセージを生成することができる。また、複数の部分メッセージがキューに入れられ、このキューから1つずつ部分メッセージが取り出されて送信されるので、元のメッセージにおける複数の部分メッセージの順序性を維持することができる。送信されたメッセージは、受信装置による自動的なスクロールにより、その全体が一度に表示領域内に表示される。通知情報が受信された後で次の部分メッセージが送信されるので、その部分メッセージを受信装置が受信して表示する前に、最初に送信された部分メッセージが完全に表示領域内に表示されることが担保される。その後、次の部分メッセージが完全に表示領域内に表示される。従って、ユーザは、各部分メッセージを完全に視認することができる。その結果、ユーザは、手動でスクロールしなくても実質的に元のメッセージ全体を視認することができる。
 請求項2に記載の発明は、請求項1に記載の送信装置において、前記受信装置におけるインスタントメッセンジャーに関するユーザの操作の履歴を取得する履歴取得手段と、前記取得された履歴に基づいて、前記次の部分メッセージの送信までの時間を決定する時間決定手段と、を更に備え、前記第2送信手段は、前記通知情報が受信されてから前記決定された時間以後に前記次の部分メッセージを送信することを特徴とする。
 この発明によれば、インスタントメッセンジャーに関するユーザの操作の履歴に基づいて、通知情報が受信されてから次の部分メッセージを送信するまでに待機する時間が決定される。この時間は、最初の部分メッセージが表示領域に表示されてから次の部分メッセージが表示領域に表示されるまでに経過する時間に対応する。従って、ユーザごとに、次の部分メッセージを送信するタイミングを適切に決定することができる。その結果、ユーザが最初の部分メッセージを読み終わってから、受信装置が次の部分メッセージを表示する蓋然性を高めることができる。
 請求項3に記載の発明は、請求項1又は2に記載の送信装置において、前記表示領域のサイズを示すサイズ情報を取得するサイズ情報取得手段と、前記受信されたサイズ情報に基づいて、部分メッセージ1つあたりの長さの上限を決定する長さ決定手段と、を更に備え、前記分割手段は、前記決定された長さの上限に従って、前記メッセージを前記複数の部分メッセージに分割することを特徴とする。
 この発明によれば、受信装置によって表示領域のサイズが異なる場合に、元のメッセージを、表示領域のサイズに応じてそれぞれ適切な長さの部分メッセージに分割することができる。
 請求項4に記載の発明は、請求項1乃至3の何れか1項に記載の送信装置において、前記分割手段は、前記受信装置へ送信される前記メッセージの長さが第2所定長を超える場合、前記メッセージを前記複数の部分メッセージに分割し、前記受信装置へ送信される前記メッセージの長さが前記第2所定長以下である場合、前記分割手段による前記メッセージの分割なくして、前記第1送信手段が前記メッセージを前記受信装置へ送信することを特徴とする。
 この発明によれば、元のメッセージの長さがそのメッセージ全体を一度に表示領域内に表示可能な長さである場合、受信装置は元のメッセージ全体を一度に表示させることができる。
 請求項5に記載の発明は、請求項1乃至4の何れか1項に記載の送信装置において、前記受信手段は、前記第2送信手段により送信された前記次の部分メッセージが前記表示領域に表示されたことを示す通知情報を更に受信し、前記キューが空になるまで、前記受信手段による前記通知情報の受信、及び前記第2送信手段による前記部分メッセージの送信が繰り返されることを特徴とする。
 この発明によれば、元のメッセージが3個以上の部分メッセージに分割された場合においても、各部分メッセージが完全に表示領域内に表示される。従って、ユーザは、手動でスクロールしなくても、実質的に元のメッセージ全体を視認することができる。
 請求項6に記載の発明は、メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置のコンピュータにより実行される送信方法において、前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割ステップと、前記複数の部分メッセージをキューに入れるエンキューステップと、前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信ステップと、前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信ステップと、前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信ステップと、を含むことを特徴とする。
 請求項7に記載の発明は、メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置のコンピュータを、前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割手段と、前記複数の部分メッセージをキューに入れるエンキュー手段と、前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信手段と、前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信手段と、前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信手段と、として機能させることを特徴とする。
 本発明によれば、ユーザは、各部分メッセージをその先頭から末尾まで一度に視認することができる。その結果、ユーザは、手動でスクロールしなくても実質的に元のメッセージ全体を視認することができる。
一実施形態に係るメッセージングシステムSAの概要構成の一例を示す図である。 メッセージ表示領域の違いの一例を示す図である。 一実施形態に係るボットサーバ1の概要構成の一例を示すブロック図である。 一実施形態に係るユーザ端末3のシステム制御部11の機能ブロックの一例を示す図である。 メッセージが分割される様子の一例を示す図である。 メッセージ表示領域のサイズに違いによる部分メッセージの長さの違いの一例を示す図である。 部分メッセージ及び既読情報の送受信の様子の一例を示す図である。 メッセージングシステムSAの動作例を示すシーケンス図である。 一実施形態に係るメッセージングシステムSBの概要構成の一例を示す図である。 メッセージングシステムSBの動作概要の一例を示す図である。
 以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、インスタントメッセンジャーを用いて端末装置間でメッセージを送受信するためのメッセージングシステムに対して本発明を適用した場合の実施形態である。
 
[1.第1実施形態]
[1-1.メッセージングシステムの構成]
 先ず、本実施形態に係るメッセージングシステムSAの構成について、図1を用いて説明する。図1は、本実施形態に係るメッセージングシステムSAの概要構成の一例を示す図である。
 図1に示すように、メッセージングシステムSAは、少なくとも一のボットサーバ1と、メッセージ管理サーバ2と、複数のユーザ端末3と、を含んで構成されている。ボットサーバ1、メッセージ管理サーバ2、及び各ユーザ端末3は、ネットワークNWを介して、例えば、通信プロトコルにTCP/IP等を用いて相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築されている。
 各ユーザ端末3は、メッセージングシステムSAのアカウントを有するユーザにより利用される端末装置である。ユーザ端末3の例として、スマートフォン、タブレット式コンピュータ等の携帯情報端末、携帯電話機、PDA(Personal Digital Assistant)、パーソナルコンピュータ等が挙げられる。各ユーザ端末3には、インスタントメッセンジャーがインストールされている。ユーザ端末3は、ユーザから入力されたメッセージを、メッセージ管理サーバ2を介して宛先のユーザ端末3又はボットサーバ1へ送信する。各ユーザのインスタントメッセンジャーにおいては、例えば複数のメッセージ表示領域を切り替えて表示可能である。例えば、ユーザの友達として登録されているアカウント(他のユーザやボットサーバ1)ごとのメッセージ表示領域に、そのアカウントとの間に送受信されたメッセージが表示される。この表示領域は、ユーザ端末3のディスプレイの画面全体であってもよいし、その画面の一部の領域であってもよい。ユーザ端末3がメッセージを受信し又はユーザがメッセージを入力すると、受信又は入力された最新のメッセージの少なくとも末尾が表示領域内に表示されるようにユーザ端末3は画面を制御する。例えば、ユーザ端末3は、最新のメッセージ及び過去のメッセージ全体を上方向へ自動的にスクロールして、最新のメッセージの末尾を表示領域の下端に位置させる。ユーザは、メッセージ表示領域内のメッセージをスクロールする操作を行うことにより、過去のメッセージも見ることができる。メッセージは、ピクセル単位でスクロールされてもよいし、行単位でスクロールされてもよい。しかしながら、最新のメッセージが短い場合はその全体が表示される一方で、最新のメッセージが長い場合はその一部のみしか表示されない場合がある。長いメッセージの先頭部分を見るためには、ユーザは手動でメッセージをスクロールしなければならない。従って、ユーザの操作負担が増大するとともに、メッセージを迅速に閲覧することが難しくなる。
 ボットサーバ1は、メッセージ管理サーバ2を介してユーザ端末3へメッセージを自動的に送信するサーバ装置又はパーソナルコンピュータである。ボットサーバ1には、インターネットボットがインストールされている。ユーザ端末3のユーザは、例えばボットサーバ1により提供されるメッセージサービス(メッセージングシステムSAにおけるアカウントの1つ)を友達として登録することにより、そのユーザ端末3はボットサーバ1とメッセージを送受信することができる。ボットサーバ1は、メッセージを通じて、例えばユーザに対して情報を提供してもよいし、ユーザとの自動的な会話を行ってもよい。ボットサーバ1は、例えばユーザ端末3からメッセージを受信したときに、受信したメッセージに応じたメッセージを返信してもよいし、所定のタイミングで又は定期的にメッセージを送信してもよい。また、ボットサーバ1が提供するメッセージサービス専用のメニューを、ボットサーバの管理者が設定可能であってもよい。この専用メニューは、ユーザ端末3のインスタントメッセンジャーにおいて、ボットサーバ1との間のメッセージ表示用のメッセージ表示領域の例えば下部に表示される。専用メニューが表示される場合、インスタントメッセンジャーの画面から専用メニューを除いた領域が、メッセージ表示領域である。図2は、メッセージ表示領域の違いの一例を示す図である。図2に示すように、画面101に専用メニューが表示されない場合、画面101全体がメッセージ表示領域101である。画面101に専用メニュー103が表示される場合、画面101はメッセージ表示領域102と専用メニュー103とに分けられる。ユーザが専用メニュー内の何れかの項目を選択すると、ユーザ端末3は、例えば外部のウェブサイトにアクセスしたり、決められたメッセージを自動的に入力したりしてもよい。専用メニューは常に表示されてもよいし、ユーザの操作に応じて表示と非表示の切り替えが可能であってもよい。専用メニューを表示するための情報は、例えばボットサーバ1の管理者により予めメッセージ管理サーバ2に登録されてもよい。また、前述した、長いメッセージに起因するユーザの操作負担を削減するため、ボットサーバ1は、ユーザ端末3へ送信すべきメッセージを複数の部分メッセージに分割することがある。ボットサーバ1は、複数の部分メッセージを1つずつ順次送信する。
 メッセージ管理サーバ2は、ユーザ端末3間で送受信されるメッセージを仲介するサーバ装置である。更にメッセージ管理サーバ2は、ボットサーバ1とユーザ端末3との間のメッセージも仲介する。メッセージ管理サーバ2は、何れかのユーザ端末3又はボットサーバ1からメッセージを受信すると、宛先のユーザ端末3又はボットサーバ1へメッセージを転送する。転送先のユーザ端末3のインスタントメッセンジャーにおけるメッセージ表示領域にメッセージが表示されると、メッセージ管理サーバ2は、そのユーザ端末3から既読情報を受信してもよい。既読情報は、ユーザ端末3により受信されたメッセージがそのユーザ端末3のメッセージ表示領域に表示されたことを通知する情報である。メッセージ管理サーバ2は、受信した既読情報を、メッセージの送信元のユーザ端末3又はボットサーバ1へ転送する。また、メッセージ管理サーバ2は、ユーザ端末3において、ボットサーバ1との間のメッセージ表示用の表示領域が表示されるとき、専用メニューをユーザ端末3に表示させてもよい。また、メッセージ管理サーバ2は、ボットサーバ1を兼ねてもよい。
[1-2.サーバの構成]
 次に、ボットサーバ1の構成について、図3Aを用いて説明する。図3Aは、本実施形態に係るボットサーバ1の概要構成の一例を示すブロック図である。図3Aに示すように、ボットサーバ1は、システム制御部11と、システムバス12と、入出力インターフェース13と、記憶部14と、通信部15と、を備えている。システム制御部11と入出力インターフェース13とは、システムバス12を介して接続されている。
 システム制御部11は、CPU(Central Processing Unit)11a、ROM(Read Only Memory)11b、RAM(Random Access Memory)11c等により構成されている。CPU11aは、プロセッサの一例である。なお、本発明は、CPUと異なる様々なプロセッサに対しても適用可能である。記憶部14、ROM11b及びRAM11cは、それぞれメモリの一例である。なお、本発明は、ハードディスク、ROM及びRAMと異なる様々なメモリに対しても適用可能である。後述するように、RAM11cには、ユーザ端末3に送信すべきメッセージを分割することにより生成される複数の部分メッセージを格納するキュー11dが一時的に確保される。
 入出力インターフェース13は、記憶部14及び通信部15とシステム制御部11との間のインターフェース処理を行う。
 記憶部14は、例えば、ハードディスクドライブ等により構成されている。この記憶部14には、例えばメッセージDB(データベース)14aが記憶されている。メッセージDB14aには、ユーザ端末3へ送信されるメッセージ自体又はメッセージの材料となる文字列等の情報が記憶される。システム制御部11は、例えばユーザ端末3から受信されたメッセージに応じて又は状況に応じて、メッセージDB14aから送信するメッセージを取得し又はメッセージDB14aに記憶されている情報を用いて、送信するメッセージを生成する。記憶部14には、更にオペレーティングシステム、インターネットボットプログラム等の各種プログラムが記憶されている。インターネットボットプログラムに含まれる各コードは、CPU11aに後述する機能を実行させる。インターネットボットプログラムは、例えば、他のサーバ装置等からネットワークNWを介して取得されるようにしてもよいし、磁気テープ、光ディスク、メモリカード等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
 通信部15は、ネットワークNWに接続して、メッセージ管理サーバ2やユーザ端末3との間の通信状態を制御する。
[1-3.機能概要]
 次に、図3B乃至図5を用いて、ボットサーバ1のシステム制御部11の機能概要を説明する。
 図3Bは、本実施形態に係るユーザ端末3のシステム制御部11の機能ブロックの一例を示す図である。システム制御部11は、CPU11aが、インターネットボットプログラムに含まれる各種コードを読み出し実行することにより、図3Bに示すように、少なくともメッセージ分割部111、メッセージエンキュー部112、メッセージ送信部113及び既読情報受信部114として機能する。更に、システム制御部11は、表示領域サイズ取得部115、部分メッセージ長決定部116、操作履歴取得部117、及び待ち時間決定部118として機能してもよい。
 メッセージ分割部111は、ユーザ端末3へ送信すべきメッセージとして生成又は取得された元のメッセージを、それぞれ所定の部分メッセージ長上限以下の長さの複数の部分メッセージに分割する。図4Aは、メッセージが分割される様子の一例を示す図である。例えば、図4Aに示すように、元のメッセージ200が、3個の部分メッセージ201~203に分割される。部分メッセージ201、202及び203は、それぞれメッセージ200の先頭部分、中央部分及び末尾部分である。部分メッセージの個数は2以上であればよい。
 メッセージ分割部111は、元のメッセージを任意の箇所で分割してもよい。しかしながら、メッセージ分割部111は、ユーザが読みやすい文字列の単位でメッセージを分割することが好ましい。例えば、メッセージ分割部111は、所定の記号又は文字でメッセージを分割してもよい。所定の記号又は文字の例として、読点、句点、括弧、引用符、疑問符、感嘆符、空白、コロン、セミコロンが挙げられる。また例えば、メッセージ分割部111は、元のメッセージを形態素解析することにより、節、文等を特定し、節単位、文単位等でメッセージを分割してもよい。
 部分メッセージ長上限は、部分メッセージ1つあたりの長さの上限である。部分メッセージ長上限をULとし、ユーザ端末3におけるメッセージ表示領域内に一度に表示可能なメッセージの長さをSZとすると、UL≦SZを満たすように部分メッセージ長上限が定められる。部分メッセージ長上限により、各部分メッセージが完全にメッセージ表示領域内に表示されることが担保される。部分メッセージ長上限は、例えば文字数で表現されてもよいし、行数で表現されてもよいし、他の尺度で表現されてもよい。部分メッセージ長上限は、例えば全種類のユーザ端末3のうち、メッセージ表示領域のサイズが最も小さいユーザ端末3に合わせて予め設定されてもよい。
 各部分メッセージの実際の長さは、部分メッセージ長上限以下であればどれだけ短くてもよい。元のメッセージに改行が含まれていることによって何れかの部分メッセージの途中にその改行が含まれる場合がある。この場合、メッセージ表示領域にその部分メッセージを表示すると、その部分メッセージの途中で余白が生じ得る。メッセージ分割部111は、各部分メッセージが完全にメッセージ表示領域内に表示されるように、生じ得る余白を考慮して、各部分メッセージの長さを調整してもよい。
 メッセージ分割部111は、元のメッセージの長さが所定の閾値を超える場合、元のメッセージを分割してもよい。閾値をTHとすると、UL≦TH≦SZを満たすように閾値が定められる。閾値と部分メッセージ長上限を同一とする場合閾値が部分メッセージ長上限を兼ねてもよい。元のメッセージの長さが閾値以下である場合、メッセージ分割部111は、メッセージ分割部111によるメッセージの分割なくして、元のメッセージをそのままユーザ端末3へ送信する。不要な分割が行われないことにより、ユーザはメッセージを迅速に読むことができる。
 部分メッセージ長上限及び閾値のうち少なくとも部分メッセージ長上限は、メッセージの送信先のユーザ端末3に合わせて決定されてもよい。そのため、表示領域サイズ取得部115は、ユーザ端末3におけるメッセージ表示領域のサイズを示すサイズ情報を取得する。サイズ情報の例として、メッセージ表示領域のサイズそのもの、ユーザエージェント情報、ユーザ端末3の機種を示す情報、その他サイズを間接的に示す情報が挙げられる。メッセージ管理サーバ2がボットサーバ1を兼ねる場合、表示領域サイズ取得部115は、ユーザ端末3から直接サイズ情報を受信することができる。ボットサーバ1がメッセージ管理サーバ2と異なる場合、表示領域サイズ取得部115は、例えばメッセージ管理サーバ2から提供されるインスタントメッセージング用のAPI(Application Programing Interface)等を利用して取得可能であればサイズ情報を取得する。例えば、ボットサーバ1用のメッセージ表示領域を表示するユーザ端末3に対してメッセージ管理サーバ2が専用メニューを表示させた場合、管理サーバ2は、そのメッセージ表示領域における専用メニューの座標を示す情報(例えば、専用メニューの各頂点の座標)をボットサーバ1へ送信してもよい。例えば専用メニューがメッセージ表示領域の下部に表示される場合、表示領域サイズ取得部115は、専用メニューの右下の頂点の座標から、メッセージ表示領域のサイズを特定することができる。或いは、表示領域サイズ取得部115は、専用メニューの左上の頂点の座標から、専用メニューが占有する領域を除いたメッセージ表示領域のサイズを特定することができる。表示領域サイズ取得部115は、ユーザ端末3へ送信されるメッセージが生成又は取得される都度サイズ情報を取得してもよい。或いは、表示領域サイズ取得部115は、一度取得したサイズ情報を、メッセージ送信先のユーザのアカウントを識別する識別情報に関連付けて、記憶部14に記憶させてもよい。その後、表示領域サイズ取得部115は、記憶部14からサイズ情報を取得してもよい。
 部分メッセージ長決定部116は、表示領域サイズ取得部115により取得されたサイズ情報に基づいて、部分メッセージ長上限及び閾値のうち少なくとも部分メッセージ長上限を決定する。前述と同様に、部分メッセージ長決定部116は、UL≦SZを満たすように、部分メッセージ長上限を決定する。部分メッセージ長上限及び閾値の両方を決定する場合、部分メッセージ長決定部116は、UL≦TH≦SZを満たすように、閾値及び部分メッセージ長上限を決定する。
 メッセージ分割部111は、決定された部分メッセージ長上限に従って、元のメッセージを複数の部分メッセージに分割する。図4Bは、メッセージ表示領域のサイズに違いによる部分メッセージの長さの違いの一例を示す図である。図4Bには、ユーザ端末3の例として、ユーザ端末3-1及び3-2が示されている。ユーザ端末3-1は、例えば携帯電話機等の、ディスプレイのサイズが比較的小さい端末装置である。メッセージ分割部111は、ユーザ端末3-1のために、メッセージ200を例えば3個の部分メッセージ201~203に分割する。ユーザ端末3-2は例えばタブレット式コンピュータであり、ユーザ端末3-2のディスプレイのサイズはユーザ端末3-1のディスプレイのサイズよりも大きい。そのため、部分メッセージ長決定部116は、ユーザ端末3-1のために決定した部分メッセージ長上限よりも長い部分メッセージ長上限を、ユーザ端末3-2のために決定する。従って、メッセージ分割部111は、ユーザ端末3-2のために、同じメッセージ200を例えば2個の部分メッセージ204及び205に分割する。このように、各ユーザ端末3のメッセージ表示領域のサイズに適した長さの部分メッセージが生成される。
 メッセージエンキュー部112は、メッセージ分割部111によるメッセージの分割により生成された複数の部分メッセージをキューに入れる(エンキューする)。具体的に、メッセージエンキュー部112は、メッセージ送信先のユーザ端末3用のキュー11dをRAM11cに生成する。キュー11dは、ファーストインファーストアウトで部分メッセージの出し入れが可能なデータ構造であればよい。メッセージエンキュー部112は、元のメッセージにおける先頭部分に相当する部分メッセージから末尾部分に相当する部分メッセージまで、部分メッセージの順序に従って複数の部分メッセージを順次キュー11dに入れる。これにより、元のメッセージにおける部分メッセージの順序性が維持される。例えば、図4Aに示すように、メッセージエンキュー部112は、複数の部分メッセージ201~203について、最初に部分メッセージ201をキューに入れ、2番目に部分メッセージ202をキューに入れ、3番目に部分メッセージ203をキューに入れる。
 メッセージ送信部113は、メッセージエンキュー部112によりキューに入れられた複数の部分メッセージのうち、一の部分メッセージをこのキューから取り出して、メッセージ管理サーバ2を介してユーザ端末3へ送信する。最初に取り出される部分メッセージは、元のメッセージの先頭部分に相当する部分メッセージである。図5は、部分メッセージ及び既読情報の送受信の様子の一例を示す図である。例えば、図4Aに示すように、部分メッセージ201~203がキュー11dに格納されているとする。先ず、メッセージ送信部113は、キュー11dから部分メッセージ201を取り出して送信する。ユーザ端末3は、自動的なスクロールにより、部分メッセージ201の末尾をメッセージ表示領域31の下端に位置させる。部分メッセージ201の長さは部分メッセージ長上限以下であるので、メッセージ表示領域31に部分メッセージ201の全体が表示される。ユーザによるスクロール操作は不要である。
 既読情報受信部114は、メッセージ送信部113により送信された部分メッセージが、送信先のユーザ端末3のメッセージ表領域に表示領域に表示されたことを示す既読情報を受信する。既読情報は、ユーザ端末3からメッセージ管理サーバ2を介してボットサーバ1へ送信される。なお、メッセージングシステムSAの仕様上、既読情報が送信されない場合、メッセージ送信部113は、例えば送信する部分メッセージにウェブビーコンを埋め込んでもよい。例えば、ウェブビーコンのイメージタグ内のURLは、ボットサーバに割り当てられたIPアドレスを含む。そのため、ユーザ端末3は、受信した部分メッセージをメッセージ表示領域に表示すると、画像のリクエストをボットサーバ1へ送信する。既読情報受信部114は、このリクエストを既読情報と見做してもよい。
 メッセージ送信部113は、既読情報受信部114により既読情報が受信された後、複数の部分メッセージのうち、次の部分メッセージをキュー11dから取り出して、メッセージ管理サーバ2を介してユーザ端末3へ送信する。前述したように、ユーザ端末3はメッセージをメッセージ表示領域に表示したときに既読情報を送信する。従って、次の部分メッセージをユーザ端末3が受信して表示する前に、最初に送信された部分メッセージ全体が完全に表示領域内に表示されることが担保される。例えば、図5に示すように、部分メッセージ201の送信に応じて既読情報がユーザ端末3からボットサーバ1へ送信された後、メッセージ送信部113は、キュー11dから部分メッセージ202を取り出して送信する。ユーザ端末3は、受信した部分メッセージ202及び既に表示されている部分メッセージ201を自動的にスクロールして、部分メッセージ202の末尾をメッセージ表示領域の下端に位置させる。前述と同様、部分メッセージ202の長さは部分メッセージ長上限以下であるので、メッセージ表示領域31に部分メッセージ202の全体が表示される。このときも、ユーザによるスクロール操作は不要であるので、ユーザは元のメッセージを迅速に閲覧することができる。メッセージ201の一部又は全体はメッセージ表示領域31から見えなくなってもよい。
 既読情報受信部114は、前述と同様、メッセージ送信部113により送信された次の部分メッセージがメッセージ表示領域に表示されたことを示す既読情報を更に受信する。部分メッセージが3個以上ある場合、メッセージ送信部113は、既読情報受信部114によりこの既読情報が受信された後、複数の部分メッセージのうち、更に次の部分メッセージをキュー11dから取り出して送信する。このような既読情報の受信及び部分メッセージの送信が、キュー11dが空になるまで繰り返される。例えば、図5に示すように、部分メッセージ202の送信に応じて既読情報がユーザ端末3からボットサーバ1へ送信された後、メッセージ送信部113は、キュー11dから部分メッセージ203を取り出して送信する。ユーザ端末3は、受信した部分メッセージ203及び既に表示されている部分メッセージ201及び202を自動的にスクロールして、部分メッセージ203の末尾をメッセージ表示領域の下端に位置させる。メッセージ表示領域31に部分メッセージ203の全体が表示される。部分メッセージ203の送信に応じて既読情報がユーザ端末3からボットサーバ1へ送信される。この時点でキュー11dは空であるので、部分メッセージの送信は終了する。
 メッセージ送信部113は、既読情報が受信されてから所定の待ち時間が経過した後に、次の部分メッセージを送信してもよい。待ち時間は、次の部分メッセージの送信までの時間である。この待ち時間は、或る部分メッセージがメッセージ表示領域に表示されてからその次の部分メッセージが表示されるまでに経過する時間に対応する。これにより、次の部分メッセージが表示されるまでに、ユーザが先の部分メッセージを読む時間が提供される。ユーザが部分メッセージを読み終わったタイミング又は読み終わってから数秒後に極力次の部分メッセージが表示されるように、待ち時間が設定されることが望ましい。
 待ち時間は、全ユーザ共通で予め設定されていてもよいが、ユーザごとに決定されてもよい。そのため、操作履歴取得部117は、インスタントメッセンジャーに関するユーザによる所定の操作の履歴を取得する。この操作履歴に記録される所定の操作は、例えばユーザがメッセージを読み終わったことを示唆する操作であってもよい。この操作の例として、メッセージのスクロール、受信されたメッセージに対して返信するメッセージの入力又はこのメッセージの送信、インスタントメッセンジャーの画面の切り替え、インスタントメッセンジャーの終了が挙げられる。メッセージ管理サーバ2がボットサーバ1を兼ねる場合、メッセージ管理サーバ2は、ユーザがこれらの操作を行ったときにユーザ端末3から、所定の操作が行われたことを通知する情報を受信してもよい。メッセージ送信部113は、所定の操作を受信した時刻を、ユーザのアカウントの識別と関連付けて操作履歴として記憶部14に記憶させる。ボットサーバ1がメッセージ管理サーバ2と異なる場合、メッセージ送信部113は、例えばボットサーバ1が送信したメッセージ(または生成された複数の部分メッセージのうちの最後の部分メッセージ)に対してユーザが返信メッセージを入力することによりユーザ端末3から返信メッセージを受信した時刻を、ユーザのアカウントの識別情報と関連付けて操作履歴として記憶部14に記憶させてもよい。操作履歴取得部117は、例えば記憶部14に操作履歴が所定数以上記憶されたとき、又は操作履歴が記憶されるごとに、記憶部14から対象となるユーザの操作履歴を取得する。
 待ち時間決定部118は、操作履歴取得部117により取得された操作履歴に基づいて、待ち時間を決定する。例えば、待ち時間決定部118は、操作履歴ごとに、対象となるユーザのユーザ端末3から既読情報が受信されてから所定の操作が行われるまで(ユーザ端末3から返信メッセージを受信するまで)に経過した時間を計算してもよい。待ち時間決定部118は、経過時間の代表値を、待ち時間に決定してもよい。代表値は、例えば平均値、中央値等であってもよいし、平均値+標準偏差×係数(係数は所定の実数)等の式で計算されてもよい。なお、ユーザはメッセージが表示されてからユーザ端末3を放置することがあるので、待ち時間決定部118は、極端に長い経過時間を外れ値として除外して、待ち時間を決定することが望ましい。待ち時間決定部118は、決定した待ち時間を、例えば対象のユーザのアカウントの識別情報と関連付けて、記憶部14に記憶させる。
[1-4.メッセージングシステムの動作]
 次に、メッセージングシステムSAの動作について、図6を用いて説明する。図6は、メッセージングシステムSAの動作例を示すシーケンス図である。図6におけるボットサーバ1の処理は、記憶部14に記憶されているインターネットボットプログラムに含まれる各種コードに従って実行される。ボットサーバ1がメッセージ管理サーバ2と異なる場合、部分メッセージ及び既読情報はメッセージ管理サーバ2を介して送受信されるが、図6においてはメッセージ管理サーバ2の処理は省略されている。
 図6に示すように、先ずユーザは、ボットサーバ1へ何らかの問い合わせのメッセージを入力する(ステップS1)。するとユーザ端末3は、入力された問い合わせメッセージをボットサーバ1へ送信する(ステップS2)。ボットサーバ1は、問い合わせメッセージに応じて返信するメッセージを生成する(ステップS3)。次いで、ボットサーバ1は、生成されたメッセージの長さが閾値を超えるか否かを判定する(ステップS4)。ボットサーバ1は、メッセージの長さが閾値以下であると判定した場合には(ステップS4:NO)、生成されたメッセージをそのままユーザ端末3へ送信する(ステップS5)。
 一方、ボットサーバ1は、メッセージの長さが閾値を超えると判定した場合には(ステップS4:YES)、生成されたメッセージを、それぞれ部分メッセージ長上限以下の長さの部分メッセージに分割する(ステップS6)。前述したように、この部分メッセージ長上限は、予め定められてもよいし、問い合わせメッセージ送信元のユーザ端末3のサイズ情報に基づいて決定されてもよい。ボットサーバ1は、複数の部分メッセージをキュー11dに入れる(ステップS7)。
 次いで、ボットサーバ1は、キュー11dから部分メッセージを1つ取り出してユーザ端末3へ送信する(ステップS8及びS9)。ユーザ端末3は、受信された部分メッセージをメッセージ表示領域に表示して、既読情報をボットサーバ1へ送信する(ステップS10及びS11)。
 既読情報を受信すると、ボットサーバ1は、キューが空であるか否かを判定する(ステップS12)。ボットサーバ1は、キューが空ではないと判定した場合には(ステップS12:NO)、一定の待ち時間だけ待機する(ステップS13)。前述したように、この待ち時間は、予め定められてもよいし、既読情報送信元のユーザの操作履歴に基づいて決定されてもよい。次いで、ボットサーバ1は、キュー11dから部分メッセージを1つ取り出してユーザ端末3へ送信する(ステップS8及びS9)。一方、ボットサーバ1は、キュー11dが空であると判定した場合には(ステップS12:YES)、部分メッセージの送信を終了させる。こうして、キュー11dが空になるまでステップS8~S13が繰り返させる。
 以上説明したように、本実施形態によれば、システム制御部11が、ユーザ端末3へ送信されるべき元のメッセージを、それぞれ部分メッセージ長上限以下の長さの複数の部分メッセージに分割する。また、システム制御部11が、複数の部分メッセージをキュー11dに入れる。また、システム制御部11が、複数の部分メッセージのうち、一の部分メッセージをキュー11dから取り出してユーザ端末3へ送信する。また、システム制御部11が、送信された部分メッセージがメッセージ表示領域に表示されたことを示す既読情報を受信する。また、システム制御部11が、既読情報が受信された後、複数の部分メッセージのうち、次の部分メッセージをキュー11dから取り出してユーザ端末3へ送信する。従って、ユーザは、各部分メッセージを完全に視認することができる。その結果、ユーザは、手動でスクロールしなくても実質的に元のメッセージ全体を視認することができる。
 また、システム制御部11が、ユーザ端末3におけるインスタントメッセンジャーに関するユーザの操作の履歴を取得してもよい。また、システム制御部11が、取得された履歴に基づいて、次の部分メッセージの送信までの待ち時間を決定してもよい。また、システム制御部11が、既読情報が受信されてから決定された待ち時間以後に次の部分メッセージを送信してもよい。この場合、ユーザごとに、次の部分メッセージを送信するタイミングを適切に決定することができる。その結果、ユーザが最初の部分メッセージを読み終わってから、ユーザ端末3が次の部分メッセージを表示する蓋然性を高めることができる。
 また、システム制御部11が、メッセージ表示領域のサイズを示すサイズ情報を取得してもよい。また、システム制御部11が、受信されたサイズ情報に基づいて、部分メッセージ長上限を決定してもよい。また、システム制御部11が、決定された部分メッセージ長上限に従って、元のメッセージを複数の部分メッセージに分割してもよい。この場合、ユーザ端末3によってメッセージ表示領域のサイズが異なる場合に、元のメッセージを、メッセージ表示領域のサイズに応じてそれぞれ適切な長さの部分メッセージに分割することができる。
 また、システム制御部11が、元のメッセージの長さが閾値を超える場合、元のメッセージを複数の部分メッセージに分割してもよい。一方、システム制御部11が、元のメッセージの長さが閾値以下である場合、メッセージの分割なくして元のメッセージをユーザ端末3へ送信してもよい。この場合、元のメッセージの長さがそのメッセージ全体を一度にメッセージ表示領域内に表示可能な長さである場合、ユーザ端末3は元のメッセージ全体を一度に表示させることができる。
 また、システム制御部11が、送信された次の部分メッセージがメッセージ表示領域に表示されたことを示す既読情報を更に受信してもよい。また、システム制御部11が、既読情報が受信された後、複数の部分メッセージのうち、更に次の部分メッセージをキュー11dから取り出してユーザ端末3へ送信してもよい。システム制御部11は、キュー11dが空になるまで、既読情報の受信、及び部分メッセージの送信を繰り返してもよい。この場合、元のメッセージが3個以上の部分メッセージに分割された場合においても、各部分メッセージが完全にメッセージ表示領域内に表示される。従って、ユーザは、手動でスクロールしなくても、実質的に元のメッセージ全体を視認することができる。
[2.第2実施形態]
 次に、第2実施形態について、図7A及び図7Bを用いて説明する。以下に説明する点を除いて、第2実施形態は第1実施形態と同様である。
 第1実施形態においては、インターネットボット(ボットサーバ1)が自動的に送信するメッセージに対して本発明が適用されていたが、第2実施形態においては、ユーザ端末3間で送受信されるメッセージに対して本発明が適用される。
 図7Aは、本実施形態に係るメッセージングシステムSBの概要構成の一例を示す図である。図7Aにおいて、図1と同様の要素については同様の符号が付されている。図7Aに示すように、メッセージングシステムSBは、メッセージ管理サーバ2と、複数のユーザ端末3と、を含んで構成されている。メッセージ管理サーバ2と各ユーザ端末3とは、ネットワークNWを介して相互にデータの送受信が可能になっている。メッセージ管理サーバ2の構成は図3Aに示す構成と同様である。メッセージ管理サーバ2のシステム制御部11の機能ブロックは図3Bに示す機能ブロックと機能同様である。
 メッセージ管理サーバ2は、何れかのユーザ端末3から別のユーザ端末3へ送信されるメッセージを中継するとき、このメッセージを複数の部分メッセージに分割して順次送信する。図7Bは、メッセージングシステムSBの動作概要の一例を示す図である。例えば、図7Bに示すようにユーザ端末3-3のユーザが、ユーザ端末3-4のユーザへ送るメッセージ210を入力する。ユーザ端末3-3はメッセージ210をメッセージ管理サーバ2へ送信する。メッセージ管理サーバ2は、メッセージ210の長さが閾値以下である場合、メッセージ210をそのままユーザ端末3-4へ送信する。一方、メッセージ管理サーバ2は、メッセージ210の長さが閾値を超える場合、メッセージ210を、例えばそれぞれ部分メッセージ長上限以下の長さの部分メッセージ211~213に分割する。メッセージ管理サーバ2は、部分メッセージ211~213をキュー11dに入れる。メッセージ管理サーバ2は、キューから部分メッセージ211を取り出してユーザ端末3-4へ送信する。ユーザ端末3-4から既読情報を受信した後、メッセージ管理サーバ2は、キューから部分メッセージ212を取り出してユーザ端末3-4へ送信する。更にユーザ端末3-4から既読情報を受信した後後、メッセージ管理サーバ2は、キューから部分メッセージ213を取り出してユーザ端末3-4へ送信する。
 以上説明したように、本実施形態によれば、ユーザ端末3間で送受信されるメッセージについても、ユーザは、手動によるスクロールしなくて実質的にその全体を視認することができる。
1 ボットサーバ
2 メッセージ管理サーバ
3、3-1~3-4 ユーザ端末
11 システム制御部
12 システムバス
13 入出力インターフェース
14 記憶部
15 通信部
11d キュー
14d メッセージDB
111 メッセージ分割部
112 メッセージエンキュー部
113 メッセージ送信部
114 既読情報受信部
115 表示領域サイズ取得部
116 部分メッセージ長決定部
117 操作履歴取得部
118 待ち時間決定部
NW ネットワーク
SA、SB メッセージングシステム
 

Claims (7)

  1.  メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置において、
     前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割手段と、
     前記複数の部分メッセージをキューに入れるエンキュー手段と、
     前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信手段と、
     前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信手段と、
     前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信手段と、
     を備えることを特徴とする送信装置。
  2.  請求項1に記載の送信装置において、
     前記受信装置におけるインスタントメッセンジャーに関するユーザの操作の履歴を取得する履歴取得手段と、
     前記取得された履歴に基づいて、前記次の部分メッセージの送信までの時間を決定する時間決定手段と、
     を更に備え、
     前記第2送信手段は、前記通知情報が受信されてから前記決定された時間以後に前記次の部分メッセージを送信することを特徴とするメッセージ送信装置。
  3.  請求項1又は2に記載の送信装置において、
     前記表示領域のサイズを示すサイズ情報を取得するサイズ情報取得手段と、
     前記受信されたサイズ情報に基づいて、部分メッセージ1つあたりの長さの上限を決定する長さ決定手段と、
     を更に備え、
     前記分割手段は、前記決定された長さの上限に従って、前記メッセージを前記複数の部分メッセージに分割することを特徴とする送信装置。
  4.  請求項1乃至3の何れか1項に記載の送信装置において、
     前記分割手段は、前記受信装置へ送信される前記メッセージの長さが第2所定長を超える場合、前記メッセージを前記複数の部分メッセージに分割し、
     前記受信装置へ送信される前記メッセージの長さが前記第2所定長以下である場合、前記分割手段による前記メッセージの分割なくして、前記第1送信手段が前記メッセージを前記受信装置へ送信することを特徴とする送信装置。
  5.  請求項1乃至4の何れか1項に記載の送信装置において、
     前記受信手段は、前記第2送信手段により送信された前記次の部分メッセージが前記表示領域に表示されたことを示す通知情報を更に受信し、
     前記キューが空になるまで、前記受信手段による前記通知情報の受信、及び前記第2送信手段による前記部分メッセージの送信が繰り返されることを特徴とするメッセージ送信装置。
  6.  メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置の コンピュータにより実行される送信方法において、
     前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割ステップと、
     前記複数の部分メッセージをキューに入れるエンキューステップと、
     前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信ステップと、
     前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信ステップと、
     前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信ステップと、
     を含むことを特徴とする送信方法。
  7.  メッセージを受信した場合に最新の前記メッセージの少なくとも末尾が表示領域内に位置するように自動的にスクロールを実行する受信装置へメッセージを送信する送信装置のコンピュータを、
     前記受信装置へ送信されるメッセージを、それぞれ所定長以下の長さの複数の部分メッセージに分割する分割手段と、
     前記複数の部分メッセージをキューに入れるエンキュー手段と、
     前記複数の部分メッセージのうち、一の部分メッセージを前記キューから取り出して前記受信装置へ送信する第1送信手段と、
     前記送信された部分メッセージが前記表示領域に表示されたことを示す通知情報を受信する受信手段と、
     前記通知情報が受信された後、前記複数の部分メッセージのうち、次の部分メッセージを前記キューから取り出して前記受信装置へ送信する第2送信手段と、
     として機能させることを特徴とする送信プログラム。
     
PCT/JP2018/033685 2018-09-11 2018-09-11 送信装置、送信方法、及び送信プログラム WO2020053971A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US16/499,552 US11831416B2 (en) 2018-09-11 2018-09-11 Sending device, sending method, and sending program
PCT/JP2018/033685 WO2020053971A1 (ja) 2018-09-11 2018-09-11 送信装置、送信方法、及び送信プログラム
CN201880028008.5A CN111183415B (zh) 2018-09-11 2018-09-11 发送装置、发送方法以及记录介质
JP2019534913A JP6934523B2 (ja) 2018-09-11 2018-09-11 送信装置、送信方法、及び送信プログラム
KR1020197027208A KR102225245B1 (ko) 2018-09-11 2018-09-11 송신 장치, 송신 방법 및 송신 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/033685 WO2020053971A1 (ja) 2018-09-11 2018-09-11 送信装置、送信方法、及び送信プログラム

Publications (1)

Publication Number Publication Date
WO2020053971A1 true WO2020053971A1 (ja) 2020-03-19

Family

ID=69777145

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/033685 WO2020053971A1 (ja) 2018-09-11 2018-09-11 送信装置、送信方法、及び送信プログラム

Country Status (5)

Country Link
US (1) US11831416B2 (ja)
JP (1) JP6934523B2 (ja)
KR (1) KR102225245B1 (ja)
CN (1) CN111183415B (ja)
WO (1) WO2020053971A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113965539B (zh) * 2020-06-29 2024-05-10 腾讯科技(深圳)有限公司 消息发送方法、消息接收方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002247102A (ja) * 2001-02-14 2002-08-30 Nippon Telegraph & Telephone West Corp メール送信方法及びメールサーバ
JP2014102808A (ja) * 2012-11-19 2014-06-05 Naver Corp 動的ページ分割を用いたウェブページ提供方法及びシステム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1340450C (en) * 1989-01-31 1999-03-16 Phillip Miller Data communication system with communicating and recharging docking apparatus for hand-held data terminal
KR100537818B1 (ko) * 2002-09-05 2005-12-19 에스케이 텔레콤주식회사 멀티미디어 메시징 서비스에서 멀티미디어 메시지를분할하여 올리는 방법 및 시스템
JP3761027B2 (ja) * 2002-10-21 2006-03-29 村田機械株式会社 電子メールサーバ
EP1455495B1 (en) * 2003-03-06 2006-08-02 Matsushita Electric Industrial Co., Ltd. Message-data transmitting and receiving unit
US8112103B2 (en) * 2004-01-16 2012-02-07 Kuang-Chao Eric Yeh Methods and systems for mobile device messaging
US8386628B1 (en) * 2005-05-23 2013-02-26 Glance Networks, Inc. Method and apparatus for reducing the amount of information that must be transmitted to slower viewers over a remote viewing session
US20110214088A1 (en) * 2010-02-26 2011-09-01 Research In Motion Limited Automatic scrolling of electronic messages
KR101400480B1 (ko) * 2010-06-28 2014-05-28 라쿠텐 인코포레이티드 정보 표시 시스템, 정보 표시 장치, 정보 표시 방법, 정보 제공 장치, 및, 기록 매체
GB2496681A (en) * 2011-11-21 2013-05-22 Push Technology Ltd A publish/subscribe system with time-sensitive message delivery to subscribers
KR101402506B1 (ko) 2011-12-01 2014-06-03 라인 가부시키가이샤 인스턴트 메시징 어플리케이션을 이용한 대화형 정보제공 시스템 및 방법
US20140324999A1 (en) * 2013-04-28 2014-10-30 Tencent Technology (Shenzhen) Company Limited Apparatus and method for communication
KR20150102180A (ko) * 2014-02-27 2015-09-07 삼성디스플레이 주식회사 레이저 빔 조사 장치 및 이를 이용한 유기 발광 디스플레이 장치의 제조 방법
JP6303771B2 (ja) * 2014-04-25 2018-04-04 大日本印刷株式会社 画像選択装置、画像選択方法、画像配信システム及びコンテンツ選択装置
JP6609402B2 (ja) * 2014-06-19 2019-11-20 デクセリアルズ株式会社 光学フィルム及びその製造方法
US11695657B2 (en) * 2014-09-29 2023-07-04 Cisco Technology, Inc. Network embedded framework for distributed network analytics
EP3224733A4 (en) * 2014-11-25 2018-07-18 Loud-Hailer Inc. Local and temporal method and system of broadcasting via peer-to-peer network
CN104821889B (zh) * 2015-03-09 2019-05-07 新华三技术有限公司 一种备份报文的处理方法和设备
US20170011606A1 (en) * 2015-07-07 2017-01-12 Stefano Ceccon Systems, Devices, and/or Methods for Managing Transactions
US11693945B2 (en) * 2016-11-18 2023-07-04 Sap Se Secure calls between applications
US11693827B2 (en) * 2016-12-29 2023-07-04 Microsoft Technology Licensing, Llc Syncing and propagation of metadata changes across multiple endpoints
WO2018222749A1 (en) * 2017-05-30 2018-12-06 University Of South Florida Supported perovskite-oxide composites for enhanced low temperature thermochemical conversion of co2 to co
JP6345364B1 (ja) * 2018-01-31 2018-06-20 Nttコムオンライン・マーケティング・ソリューション株式会社 通信装置
WO2019192022A1 (zh) * 2018-04-06 2019-10-10 Oppo广东移动通信有限公司 无线通信方法、终端和网络设备
CN113711184A (zh) * 2019-04-01 2021-11-26 思杰系统有限公司 统一应用程序通知框架

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002247102A (ja) * 2001-02-14 2002-08-30 Nippon Telegraph & Telephone West Corp メール送信方法及びメールサーバ
JP2014102808A (ja) * 2012-11-19 2014-06-05 Naver Corp 動的ページ分割を用いたウェブページ提供方法及びシステム

Also Published As

Publication number Publication date
US20210336911A1 (en) 2021-10-28
US11831416B2 (en) 2023-11-28
JP6934523B2 (ja) 2021-09-15
KR20200031556A (ko) 2020-03-24
KR102225245B1 (ko) 2021-03-09
CN111183415B (zh) 2023-10-13
CN111183415A (zh) 2020-05-19
JPWO2020053971A1 (ja) 2020-12-17

Similar Documents

Publication Publication Date Title
JP4477428B2 (ja) 表示制御装置、これを備えた情報表示装置、これらを備えた表示システム、表示制御プログラム、及び表示制御方法
EP1787186B1 (en) Multimodal interface for mobile messaging
TW201835744A (zh) 訊息提示方法,訊息展示方法和相關裝置
WO2018121619A1 (zh) 业务多媒体数据处理方法以及装置、服务器及存储介质
US20160328783A1 (en) Information processing apparatus, information processing method, and program
JP6083039B1 (ja) 携帯端末にプッシュ通知を行うための通知方法及び通知サーバ
JP2022190108A (ja) プログラム、方法、端末
WO2020053971A1 (ja) 送信装置、送信方法、及び送信プログラム
CN112838980B (zh) 一种消息处理方法、系统、装置、电子设备及存储介质
KR102335731B1 (ko) 정보처리장치, 정보처리방법 및 프로그램
JP7000623B2 (ja) 中継装置及び中継方法
CN105978853B (zh) 一种会话调度方法、调度服务器及终端
EP3125586A1 (en) Information transmitting device and method and information receiving device and method
JP2009130761A (ja) 情報配信システム、情報配信方法および情報配信用プログラム
JP7117444B1 (ja) 情報処理装置及び情報処理方法
JP4370954B2 (ja) 辞書情報の自動更新システムおよび方法
JP6020666B2 (ja) サーバ及び電子チラシの閲覧実績カウント方法
CN108874514B (zh) 消息处理方法和装置
JP2023085139A (ja) 情報処理装置、情報処理システム、及び情報処理プログラム
CN115146046A (zh) 基于5g消息的智能机器人应答方法、装置、设备及介质
JP3714137B2 (ja) メールサーバ及び記録媒体
JP2024048824A (ja) 配信サーバ、及び配信方法
JP6094448B2 (ja) 端末装置、通信システム、登録方法、及び登録プログラム
CN115314456A (zh) 交互方法、装置和电子设备
WO2017051916A1 (ja) 携帯端末にプッシュ通知を行うための通知方法及び通知サーバ

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019534913

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18933048

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18933048

Country of ref document: EP

Kind code of ref document: A1