Information processing device, information processing system, and information processing method

The information processing system addresses the challenge of timely message delivery by setting generation periods and selecting users based on status data, ensuring efficient and timely message delivery even with a large user base.

JP2026119828APending Publication Date: 2026-07-21OKI ELECTRIC INDUSTRY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
OKI ELECTRIC INDUSTRY CO LTD
Filing Date
2025-01-08
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing message notification systems face challenges in timely delivery as the number of users increases, leading to increased processing time and potential delays, which can result in decreased overall processing capacity.

Method used

An information processing system that sets a message generation period and selects users to be notified within that period, generating messages based on user status data, with different criteria for first and second notification requests, ensuring timely delivery.

Benefits of technology

The system maintains timely information notifications by limiting the number of messages generated within the generation period, allowing for appropriate message delivery even with a large number of users, thus preventing delays and maintaining system capacity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026119828000001_ABST
    Figure 2026119828000001_ABST
Patent Text Reader

Abstract

It provides a mechanism that enables more timely notification of messages. [Solution] An information processing device comprising: a generation unit that, upon receiving a message notification request, selects one or more users to be notified from among multiple users within the range in which the generation of the message can be completed within the message generation period, and generates and outputs the message addressed to the notified users based on the status data of the notified users.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, an information processing system, and an information processing method.

Background Art

[0002] In recent years, technologies for notifying users of messages to prompt behavioral changes have attracted attention. For example, Patent Document 1 below discloses a technology for timely transmitting disaster prevention-related messages based on a user's location conditions, weather conditions, and awareness conditions.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the technologies disclosed in Patent Document 1 and the like, as the number of users increases, the time required for message notification increases, and as a result, it may become difficult to notify messages in a timely manner.

[0005] Therefore, the present invention has been made in view of the above problems, and an object of the present invention is to provide a mechanism capable of notifying messages more timely.

Means for Solving the Problems

[0006] In order to solve the above problems, according to an aspect of the present invention, when a message notification request is acquired, one or more notification target users are selected from a plurality of users within a range in which the generation of the message is completed within the generation period of the message, and a generation unit that generates and outputs the message addressed to the notification target user based on the situation data of the notification target user is provided. An information processing apparatus is provided.

[0007] The generation unit may generate and output the message based on whether the acquired notification request is a first notification request triggered by the arrival of a predetermined period, or a second notification request triggered by the detection of a specific event based on the user's status data.

[0008] The length of the generation period for the message may differ depending on whether the first notification request is received or the second notification request is received.

[0009] The length of the message generation period when the first notification request is received may be shorter than the predetermined period related to the first notification request.

[0010] The predetermined period relating to the first notification request may vary depending on the time of day, date, or day of the week.

[0011] The length of the message generation period when the second notification request is received may be shorter than the time for which the specific event related to the second notification request is expected to continue.

[0012] The length of the message generation period when the second notification request is received may vary depending on the number of users involved in the specific event related to the second notification request.

[0013] The generation unit may select the users to be notified based on different selection criteria depending on whether it has received the first notification request or the second notification request.

[0014] The generation unit may, upon receiving the first notification request, select the users to be notified from all users, and upon receiving the second notification request, select the users to be notified from the users involved in the specific event.

[0015] The aforementioned specific event may be a state in which a predetermined number of users or more are simultaneously present in the same space for a predetermined period of time.

[0016] The notification request includes information indicating the length of the message generation period, and the generation unit may set the message generation period based on the notification request.

[0017] The aforementioned situational data may include information indicating the user's location and the time spent at that location.

[0018] The aforementioned situational data may be generated when a beacon transmitted from an environmentally installed beacon transmitter is received by a terminal device carried by the user.

[0019] Furthermore, in order to solve the above problems, according to another aspect of the present invention, an information processing system is provided that includes: a request unit that generates a message notification request; a generation unit that, upon receiving the notification request from the request unit, selects one or more users to be notified from among multiple users within the range in which the generation of the message can be completed within the message generation period, and generates and outputs the message addressed to the notified users based on the status data of the notified users; and a notification control unit that controls the process of notifying the notified users of the message addressed to the notified users generated by the generation unit.

[0020] Furthermore, in order to solve the above problems, according to another aspect of the present invention, there is an information processing method that is performed by a computer, which includes: obtaining a message notification request; selecting one or more users to be notified from a plurality of users within the scope in which the generation of the message is completed within the message generation period; generating and outputting the message addressed to the notified users based on the status data of the notified users; and controlling the process of notifying the notified users of the generated message addressed to the notified users. [Effects of the Invention]

[0021] As described above, according to the present invention, a mechanism capable of notifying a message more timely is provided.

Brief Description of the Drawings

[0022] [Figure 1] It is a diagram showing a configuration example of an information processing system 1 according to an embodiment of the present invention. [Figure 2] It is a diagram for explaining a specific example related to the setting of the length of the generation period executed by the request unit 32. [Figure 3] It is a diagram for explaining a first specific example related to the generation and notification of a message executed by the generation unit 41. [Figure 4] It is a diagram for explaining a second specific example related to the generation and notification of a message executed by the generation unit 41. [Figure 5] It is a flowchart showing an example of the processing flow executed by the terminal device 20 according to the present embodiment. [Figure 6] It is a flowchart showing an example of the processing flow executed by the application server 30. [Figure 7] It is a flowchart showing an example of the processing flow executed by the message server 40. [Figure 8] It is a block diagram showing an example of the hardware configuration of the information processing apparatus according to the present embodiment.

Modes for Carrying Out the Invention

[0023] [[ID=4__0]]Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant description is omitted.

[0024] <1. Technical Problem> One example is a service that sends messages to a user's portable terminal device. Such a service could involve an information processing system comprising an application server that sends and receives information to and from the terminal device, and a message server that generates messages based on requests from the application server.

[0025] In this information processing system, the application server collects user status data from terminal devices and requests message generation. The message server generates a message based on this request. Subsequently, the application server sends the message generated by the message server to the terminal device.

[0026] In such services, if there are many users, the application server may request the message server to generate a message for all users at once. This is because making a separate request for each user would increase the number of communications between the application server and the message server, potentially creating unnecessary overhead.

[0027] However, with this method, the message server generates messages for many users in batches, which can increase the processing time for message notifications and make it difficult to send messages in a timely manner.

[0028] Furthermore, the increased processing time for message notifications could result in delays in processing before the next message notification opportunity, potentially leading to a decrease in the overall processing capacity of the information processing system.

[0029] Therefore, the present invention has been made in view of the above problems, and the object of the present invention is to provide a mechanism that can notify messages in a more timely manner.

[0030] As will be explained in detail below, an information processing system 1 according to one embodiment of the present invention sets a message generation period having a predetermined duration when a message notification opportunity arises. The information processing system 1 then selects one or more users to be notified from among multiple users, within the scope in which message generation can be completed within the generation period, and generates a message addressed to the notified users based on the status data of the notified users. Subsequently, in the next message notification opportunity, the information processing system 1 generates messages targeting other users.

[0031] With this configuration, even if there are many users, the number of messages generated at one time is limited to the number of messages that can be generated within the generation period. As a result, regardless of the processing capacity of the information processing system 1, it becomes possible to maintain timely information notifications that are appropriate to the user's situation.

[0032] <2. Example Configuration> Figure 1 shows an example configuration of an information processing system 1 according to one embodiment of the present invention. As shown in Figure 1, the information processing system 1 includes a plurality of beacon transmitters 10, a plurality of terminal devices 20, an application server 30, and a message server 40. The information processing system 1 provides a service that notifies users of messages via terminal devices 20 carried by multiple users (for example, 1000 people) working in an office building.

[0033] (Beacon transmitter 10) The beacon transmitter 10 is a device that transmits beacons. For example, the beacon transmitter 10 periodically transmits a signal compliant with any wireless communication standard such as Bluetooth®.

[0034] The beacon transmitter 10 is installed (for example, fixed) in a predetermined location such as the elevator hall on each floor of the building, inside rooms, and in corridors. The beacon transmitter 10 can then transmit a beacon containing its identification information (hereinafter also referred to as the beacon ID (identifier)).

[0035] (Terminal device 20) The terminal device 20 is an information processing device associated with the user (for example, carried by the user). The terminal device 20 functions as an interface between the user and the information processing system 1. The terminal device 20 may be, for example, a smartphone, a smartwatch, or a tablet device.

[0036] The terminal device 20 generates status data, which is data indicating the user's status, and sends it to the application server 30.

[0037] Situational data may include information indicating the user's location and the time spent at that location. For example, based on situational data, it may be possible to identify a user's situation, such as that the user stayed in the elevator lobby on a certain floor for one minute.

[0038] For example, the terminal device 20 may receive a beacon from the beacon transmitter 10 and generate the above-mentioned status data based on the received beacon. Specifically, the status data may include a beacon ID. The correspondence between the installation location of the beacon transmitter 10 and the beacon ID may be managed in advance by the information processing system 1, and the user's location can be identified based on the beacon ID. The status data may also include the time when the terminal device 20 received the beacon. Based on the time when the beacon was first received, the start time of stay in the elevator hall can be identified, or the duration of stay in the elevator hall can be identified based on the time during which the beacon was continuously received.

[0039] As another example, the terminal device 20 may have a positioning sensor such as a GNSS (Global Navigation Satellite System) sensor, and the status data may include horizontal position information detected by the positioning sensor. Furthermore, the terminal device 20 may have a barometric pressure sensor, and the status data may include vertical position information detected by the barometric pressure sensor. This position information can also be used to determine the user's start time or duration of stay in the elevator hall.

[0040] Situational data may include information indicating the user's actions and the duration of those actions. For example, situational data may include information such as the user sitting for 30 minutes or using the stairs.

[0041] For example, the terminal device 20 may have inertial sensors such as an acceleration sensor and an angular velocity sensor, as well as a step counter, and the status data may include information detected by these sensors.

[0042] The terminal device 20 receives a message addressed to the user from the application server 30 and outputs it to the user. The message may be output as visual, auditory, or tactile information.

[0043] (Application Server 30) The application server 30 is an information processing device that determines when an opportunity for message notification arises and controls the process of notifying the message. As shown in Figure 1, the application server 30 includes a collection unit 31, a request unit 32, and a notification control unit 33.

[0044] The collection unit 31 collects status data from the terminal device 20. The collection unit 31 then outputs the collected status data to the request unit 32 and the generation unit 41. The collection unit 31 may also identify a user's status, such as a user staying in the elevator hall on a certain floor for one minute, based on the collected status data, and add the identified user's status to the status data.

[0045] The request unit 32 determines when an opportunity to notify a message has occurred. For example, the request unit 32 may determine that an opportunity to notify a message has occurred when a notification cycle (an example of a predetermined cycle) arrives. For another example, the request unit 32 may determine that an opportunity to notify a message has occurred when it detects that a specific event has occurred based on the user's status data. When an opportunity to notify a message has occurred, the request unit 32 sends a message notification request to the message server 40. The message notification request is information requesting the generation of a message.

[0046] The notification control unit 33 controls the process of notifying the user of the message generated by the message server 40. Specifically, the notification control unit 33 sends the message generated by the message server 40 to the terminal device 20 carried by the user, causing the terminal device 20 to output it.

[0047] (Message Server 40) The message server 40 is an information processing device that generates messages. As shown in Figure 1, the message server 40 includes a generation unit 41.

[0048] The generation unit 41 generates a message addressed to the target user. First, the generation unit 41 selects the target user. Then, based on the status data of the target user, the generation unit 41 generates a message addressed to the target user. Finally, the generation unit 41 outputs the generated message to the application server 30.

[0049] For example, the generation unit 41 may generate a message encouraging a user waiting for an elevator to use the stairs instead. The generation unit 41 may also generate a message encouraging a user who has been sitting and working for a long time to stand up and walk around. Furthermore, the generation unit 41 may generate even more personalized messages for the user based on the number of steps taken that day, the number of floors used for stairs, etc. This configuration makes it possible to notify each user with an appropriate message.

[0050] (supplement) Information about a user may include the user's identification information (hereinafter also referred to as a user ID (Identifier)).

[0051] For example, a user's status data may include that user's user ID. Similarly, a message may include the recipient user's user ID. Furthermore, a terminal device 20 associated with a user may also be associated with that user's user ID. Additionally, a message notification history for a user may be managed in association with that user's user ID. The message notification history may include information indicating which user received what message and when.

[0052] This enables the information processing system 1 to appropriately process and manage information for each user. As a result, the information processing system 1 can notify users of messages using the terminal device 20 associated with that user.

[0053] Furthermore, when Information Processing System 1 is started, the user IDs of all users may be registered in Information Processing System 1.

[0054] <3. Operation Details> When the generation unit 41 receives a message notification request, it generates and outputs a message addressed to the user to be notified, based on the status data of the user to be notified.

[0055] The generation unit 41 generates and outputs a message based on whether the acquired notification request is a first notification request triggered by the arrival of a predetermined period, or a second notification request triggered by the detection of a specific event based on the user's status data. With this configuration, it is possible to generate a message appropriately according to the type of event that triggered the notification request.

[0056] The request unit 32 outputs a first notification request to the generation unit 41 when the notification cycle arrives. For example, the request unit 32 may output a first notification request to the generation unit 41 every hour. In that case, the generation unit 41 generates and outputs a message addressed to one or more users once every hour.

[0057] The notification cycle for the first notification request may vary depending on the time of day. For example, the notification cycle may be 30 minutes between 8:00 and 9:00, and between 17:00 and 20:00. On the other hand, the notification cycle may be 10 minutes between 9:00 and 17:00. Furthermore, these notification cycles may vary depending on the day or day of the week. With this configuration, it becomes possible to notify users of messages at an appropriate cycle that corresponds to the user's attitude towards messages, which differs depending on the time of day, such as the ease of checking the message and the ease of changing behavior.

[0058] The request unit 32 outputs a second notification request to the generation unit 41 when it detects that a specific event has occurred based on the user's status data. The occurrence of a specific event can be detected by the request unit 32. The generation unit 41 generates and outputs a message addressed to one or more users each time a specific event occurs.

[0059] A specific event may be a state in which a predetermined number of users or more are simultaneously present in the same space for a predetermined period of time. In other words, a specific event may be a state in which a predetermined number of users or more were simultaneously present in the same space for a predetermined period of time in the past. Specifically, a specific event may be a state in which 20 or more people are simultaneously present in the elevator hall for 15 seconds or more. The generation unit 41 can generate a message encouraging at least some of the users involved in the specific event, i.e., the 20 or more users waiting for the elevator, to use the stairs. With this configuration, it is possible to encourage users waiting for the elevator to exercise and promote their health.

[0060] When the generation unit 41 receives a message notification request, it sets a message generation period. The message generation period is the period during which the generation unit 41 can execute the process of generating a message. Within the message generation period, the generation unit 41 selects one or more users to be notified from among multiple users, within the scope for which message generation can be completed.

[0061] The length of the message generation period may differ depending on whether a first notification request is received or a second notification request is received. For example, when a second notification request is received, the message generation period may be set to be shorter than when a first notification request is received. With such a configuration, it becomes possible to notify users involved in a specific event (for example, waiting for an elevator) of the message in a more timely manner.

[0062] The length of the message generation period when a first notification request is received is set to be shorter than the notification cycle related to the first notification request. For example, if the notification cycle is 30 minutes, the length of the message generation period may be set to 27 minutes. On the other hand, if the notification cycle is 10 minutes, the length of the message generation period may be set to 7 minutes. With this configuration, it is possible to eliminate overlaps between message generation periods set based on the first notification request and prevent excessive load on the message server 40.

[0063] The length of the message generation period when a second notification request is received may be shorter than the expected duration of the specific event related to the second notification request. For example, if there are 20 people in the elevator hall and the average waiting time for the elevator is expected to be about 1 minute, the message generation period may be set to 30 seconds. With this configuration, it becomes possible to notify users who are still in the elevator hall, rather than users who have already boarded the elevator, of a message urging them to use the stairs.

[0064] The length of the message generation period when a second notification request is received may vary depending on the number of users involved in the specific event related to the second notification request. For example, the message generation period may be set to 30 seconds if there are 20 to 29 people in the elevator hall, 1 minute if there are 30 to 39 people, and 2 minutes if there are 40 or more people. With this configuration, it becomes possible to notify an appropriate number of users in the elevator hall, according to the waiting time, with a message encouraging them to use the stairs.

[0065] The generation unit 41 may select the users to be notified based on different selection criteria depending on whether it has received a first notification request or a second notification request. With this configuration, it becomes possible to appropriately select the users to be notified depending on the type of event that triggered the notification request.

[0066] Specifically, when the generation unit 41 receives a first notification request, it may select users to be notified from all users. For example, the generation unit 41 may select users to be notified from all users in order of the lowest character code of their user ID. With this configuration, it is possible to notify all users without bias. However, the generation unit 41 may lower the priority of users who have received a large number of recent message notifications. With this configuration, it is possible to prevent a situation where the frequency of message notifications becomes excessively high and may be perceived as bothersome by users.

[0067] On the other hand, when the generation unit 41 receives a second notification request, it may select users to be notified from among the users involved in the specific event. For example, when a specific event of waiting for an elevator occurs, the generation unit 41 may select users to be notified from among the users staying in the elevator hall, in order of the number of recent message notifications received. With this configuration, it becomes possible to notify users waiting for an elevator in a timely manner.

[0068] The arrival of the notification cycle and the occurrence of a specific event are determined by the request unit 32. The notification request in the message includes information indicating whether the notification request is a first notification request or a second notification request. This information is also referred to as the notification request ID.

[0069] The length of the message generation period may be set by the request unit 32. In this case, the message notification request may include information indicating the length of the message generation period. The generation unit 41 sets the message generation period to the length specified in the notification request for the acquired message. Alternatively, the length of the message generation period may be set by the generation unit 41.

[0070] Users with higher priority to be selected as notification recipients may be identified by the request unit 32. For example, the second notification request may include user IDs sorted in order of the number of recent message notifications received by users involved in the specific event that triggered the second notification request. Alternatively, users with higher priority to be selected as notification recipients may be identified by the generation unit 41.

[0071] <4. Specific Examples> (Setting the generation period) Figure 2 is a diagram illustrating a specific example of setting the length of the generation period, which is performed by the request unit 32. Figure 2 shows a time chart related to setting the generation period, with time flowing from left to right.

[0072] As shown in Figure 2, the message notification service is provided from 8:00 to 20:00.

[0073] In the first row of Figure 2, the difference in notification cycles is indicated by the difference in hatching. As shown in the first row of Figure 2, the request unit 32 sets the notification cycle to 10 minutes from 9:00 to 17:00 because the office building is heavily used during that time, and sets the notification cycle to 30 minutes during other time periods.

[0074] In the second row of Figure 2, the timing of specific events is indicated by dashed lines. As shown in the second row of Figure 2, specific events occur continuously. Note that a specific event may be defined as a state in which 20 or more people are simultaneously present in the elevator hall for 15 seconds or more.

[0075] In the third row of Figure 2, the timing of the generation of the first notification request is shown by a solid line, and the timing of the generation of the second notification request is shown by a dashed line. As shown in the third row of Figure 2, the request unit 32 generates a first notification request, triggered by the arrival of the notification cycle, every 10 minutes from 9:00 to 17:00, and every 30 minutes during other time periods. The request unit 32 also generates a second notification request, triggered by the occurrence of a specific event, each time that specific event occurs.

[0076] In the fourth row of Figure 2, the difference in the length of the generation period set as a trigger for the first notification request is shown by the difference in hatching, and the generation period set as a trigger for the second notification request is shown by a dashed line. As shown in the fourth row of Figure 2, when the request unit 32 generates the first notification request triggered by the arrival of a 30-minute notification cycle, it sets the length of the generation period to 27 minutes. On the other hand, when the request unit 32 generates the first notification request triggered by the arrival of a 10-minute notification cycle, it sets the length of the generation period to 7 minutes. Furthermore, when the request unit 32 generates the second notification request triggered by the occurrence of a specific event, it sets the length of the generation period to 30 seconds. When the request unit 32 sends a notification request containing information indicating the length of the set generation period to the generation unit 41, the generation unit 41 sets a generation period of the specified length from the time the notification request was received.

[0077] As shown in Figure 2, a 7-minute generation period is periodically set during the peak hours of 9:00 to 17:00 in the office building, while a 27-minute generation period is periodically set during other times. Additionally, if 20 or more people are simultaneously present in the elevator hall for 15 seconds or more, a 30-second generation period is set.

[0078] The length of this generation period corresponds to the maximum delay time from when a message notification opportunity arises until the user actually receives the message notification. In other words, information processing system 1 can notify users of highly timely messages when they are waiting for an elevator, messages of moderate timeliness during the daytime from 9:00 to 17:00, and messages of low timeliness during the night or early morning.

[0079] (First specific example of message generation and notification) Figure 3 is a diagram illustrating a first specific example of message generation and notification performed by the generation unit 41. Figure 3 shows a time chart related to message generation and notification, with time flowing from left to right. In this first specific example, the generation period for the first notification request and the generation period for the second notification request do not overlap.

[0080] In the first row of Figure 3, the timing when the first notification request was input to the message server 40 is shown by a solid line, and the timing when the second notification request was input to the message server 40 is shown by a dashed line.

[0081] Here, the first notification request is input to the message server 40 at 10:10 and 10:20. Therefore, the generation unit 41 sets the message generation period for the first notification request to 10:10-10:17 and 10:20-10:27.

[0082] Furthermore, a second notification request was entered into the message server 40 shortly after 10:18. Therefore, the generation unit 41 sets the message generation period for the second notification request to 30 seconds starting shortly after 10:18.

[0083] The second row of Figure 3 shows the progress of the message generation process. Specifically, the rectangles indicate the period during which the message generation process is being executed, and the numbers within the rectangles indicate the user ID of the recipient user. The third row of Figure 3 shows the timing of message notification.

[0084] In more detail, during the message generation period set from 10:10 to 10:17, the generation unit 41 selects users to be notified from all users in order of increasing user ID, i.e., starting with user ID=1, and generates a message. However, each time the generation unit 41 generates a message, it determines whether or not to generate a message for the next user.

[0085] Here, it is assumed that generating a message for user ID=16 after completing the generation of messages for users ID=1 through user ID=15 would exceed the generation period until 10:17. Therefore, the generation unit 41 sends messages addressed to users ID=1 through user ID=15, which have already been generated, to the application server 30. In the next message generation period set from 10:20 to 10:27, the generation unit 41 selects the users to be notified in order, starting with user ID=16, and generates messages.

[0086] On the other hand, during the 30-second message generation period starting after 10:18, the generation unit 41 selects users waiting for the elevator in an elevator hall where 20 or more people have been present for 15 seconds or more, in order of the number of message notifications received, and generates messages for them. However, each time the generation unit 41 generates a message, it determines whether or not to generate a message for the next user.

[0087] Here, it is assumed that once the messages for users ID=56 and user ID=62 have been generated, generating messages for the next users would exceed the 30-second generation period starting after 10:18. Therefore, the generation unit 41 sends messages addressed to the already generated users ID=56 and user ID=62 to the application server 30.

[0088] (Second specific example of message generation and notification) Figure 4 is a diagram illustrating a second specific example of message generation and notification performed by the generation unit 41. Figure 4 shows a time chart for message generation and notification, with time flowing from left to right. In this second specific example, the generation period for the first notification request and the generation period for the second notification request overlap. Otherwise, it is the same as the first specific example.

[0089] In the first row of Figure 4, the timing when the first notification request is generated and input to the message server 40 is shown by a solid line, and the timing when the second notification request is generated and input to the message server 40 is shown by a dashed line.

[0090] Here, the first notification request is input to the message server 40 at 10:10 and 10:20. Therefore, the generation unit 41 sets the message generation period for the first notification request to 10:10-10:17 and 10:20-10:27.

[0091] Furthermore, a second notification request was entered into the message server 40 shortly after 10:13. Therefore, the generation unit 41 sets the message generation period for the second notification request to 30 seconds starting shortly after 10:13.

[0092] The second row of Figure 4 shows the progress of the message generation process. Specifically, the rectangles indicate the period during which the message generation process is being executed, and the numbers within the rectangles indicate the user ID of the recipient user. The third row of Figure 4 shows the timing of message notification.

[0093] More specifically, during the message generation period set from 10:10 to 10:17, the generation unit 41 selects users to be notified from all users in order of lowest user ID, i.e., starting with user ID=1, and generates a message. On the other hand, during the 30-second message generation period starting after 10:13, the generation unit 41 selects users from among those waiting for the elevator in an elevator hall where 20 or more people have been present for 15 seconds or more, in order of the number of times they have received a message notification, and generates a message.

[0094] As a result, the generation unit 41 will simultaneously generate a message addressed to user ID=8 and a message addressed to user ID=56 shortly after 10:13. As shown by the width of the rectangle enclosed in the thick border in the figure, these messages may take longer to generate compared to when they are generated individually, as shown in Figure 3, depending on the processing capacity of the message server 40. Therefore, in the 30-second message generation period starting shortly after 10:13, unlike the example shown in Figure 3, the message addressed to user ID=62 is not generated because generating it would exceed the generation period.

[0095] As explained above, if the generation period for the first notification request and the generation period for the second notification request overlap, the generation unit 41 can simultaneously generate messages corresponding to each notification request.

[0096] (supplement) In the above example, when the generation period for the first notification request and the generation period for the second notification request overlap, the generation unit 41 simultaneously generates messages corresponding to each notification request. However, the present invention is not limited to this example. Either generation period may take precedence.

[0097] In particular, it is desirable that the generation period for the second notification request, which requires a high degree of timeliness, be given priority. That is, if the second notification request occurs in the middle of the generation period for the first notification request, the generation period for the first notification request may be interrupted and the generation period for the second notification request may begin, and the generation period for the first notification request may be resumed after the generation period for the second notification request has ended. In other words, the generation unit 41 may interrupt the generation of the message corresponding to the first notification request to generate the message corresponding to the second notification request, and then resume the generation of the message corresponding to the first notification request.

[0098] <5. Processing Flow> (Terminal device 20) Figure 5 is a flowchart showing an example of the processing flow performed by the terminal device 20 according to this embodiment.

[0099] As shown in Figure 5, first, the terminal device 20 determines whether or not it has received a message from the application server 30 (step S102).

[0100] If it is determined that a message has been received (step S102: YES), the terminal device 20 outputs the received message (step S104). The message output may be performed by screen display, sound playback, vibration, or light. If it is determined that no message has been received (step S102: NO), step S104 is omitted.

[0101] Next, the terminal device 20 acquires status data and transmits it to the application server 30 (step S106). For example, if a user is staying in an elevator hall, the terminal device 20 receives a beacon from the beacon transmitter 10 installed in the elevator hall. The terminal device 20 then transmits status data, including the user ID, the time the beacon was received, and the beacon ID stored in the beacon, to the application server 30.

[0102] Furthermore, the terminal device 20 may only send status data to the application server 30 when there is an update to the status data (for example, when a beacon is received), and may omit sending the status data if there is no update to the status data. Also, when there is an update to the status data, the terminal device 20 may only send the chronological updates from the most recent status data.

[0103] Subsequently, the terminal device 20 performs a termination determination (step S108). For example, it is determined to terminate if the user or the operator of the information processing system 1 instructs the user to stop the message notification service. If it is determined to terminate, the process ends (step S108: YES), and if it is determined not to terminate, the process returns to step S102 (step S108: NO).

[0104] (Application Server 30) Figure 6 is a flowchart showing an example of the processing flow executed by the application server 30.

[0105] As shown in Figure 6, first, the application server 30 initializes its internal state (step S202). Specifically, the request unit 32 sets the notification cycle for each time period, the length of the message generation period for the first notification request for each time period, and the length of the message generation period for the second notification request. For example, the request unit 32 sets the notification cycle to 30 minutes and the message generation period for the first notification request to 27 minutes for 8:00-9:00 and 17:00-20:00. On the other hand, the request unit 32 sets the notification cycle to 10 minutes and the message generation period for the first notification request to 7 minutes for 9:00-17:00. Then, the request unit 32 sets the message generation period for the second notification request to 30 seconds.

[0106] Next, the application server 30 determines whether or not a notification request needs to be generated (step S204). For example, the request unit 32 determines whether or not a notification request needs to be generated when the notification cycle has arrived or when a specific event has occurred, and whether or not a notification request needs to be generated otherwise. The specific event may be a state in which 20 or more people are simultaneously present in the elevator hall for 15 seconds or more.

[0107] If it is determined that a notification request needs to be generated (step S204: YES), the application server 30 generates a notification request and sends it to the message server 40 (step S206). As an example, the request unit 32 generates a first notification request and sends it to the message server 40 when the notification cycle arrives. The first notification request may include information indicating that it is the first notification request (notification request ID=1) and information indicating that the generation period is 27 minutes or 7 minutes. As another example, the request unit 32 generates a second notification request and sends it to the message server 40 when a specific event occurs. The second notification request may include information indicating that it is the second notification request (notification request ID=2), information indicating that the generation period is 30 seconds, and user IDs sorted in order of the number of most recent message notifications received by users involved in the specific event that occurred.

[0108] On the other hand, if it is determined that it is not necessary to generate a notification request (step S204: NO), step S206 is omitted.

[0109] Next, the application server 30 determines whether or not it has received a message from the message server 40 (step S208).

[0110] If it is determined that a message has been received (step S208: YES), the application server 30 sends the message received from the message server 40 to the terminal device 20 carried by the user to whom the message is addressed (step S210).

[0111] On the other hand, if it is determined that no message has been received (step S208: NO), step S210 is omitted.

[0112] Subsequently, the application server 30 performs a termination determination (step S212). The termination determination may be performed using the same criteria as in step S108. If it is determined that the process should terminate, the process ends (step S212: YES), and if it is determined that the process should not terminate, the process returns to step S204 (step S212: NO).

[0113] (Message Server 40) Figure 7 is a flowchart showing an example of the processing flow performed by the message server 40.

[0114] As shown in Figure 7, first, the message server 40 initializes its internal state (step S302). For example, the generation unit 41 may sort the user IDs according to a specific rule (for example, in ascending order of the character code of the user ID) and set that order as the priority for generating messages corresponding to the first notification request.

[0115] Next, the message server 40 determines whether or not it has received a notification request (step S304). The message server 40 waits until it receives a notification request (step S304: NO).

[0116] If the message server 40 receives a notification request (step S304: YES), it sets the message generation period (step S306). Specifically, the generation unit 41 sets the message generation period to be a period of the length specified in the notification request, starting from the time the notification request is received. For example, if the generation unit 41 receives a first notification request at 10:10 specifying a message generation period length of 7 minutes, it sets the period from 10:10 to 10:17 as the message generation period. As another example, if the generation unit 41 receives a second notification request at 10:18:10 specifying a message generation period length of 30 seconds, it sets the period from 10:18:10 to 10:18:40 as the message generation period.

[0117] Next, the message server 40 selects the users to be notified of the message and generates a message addressed to the selected users (step S308). For example, if the generation unit 41 receives a first notification request, it may select the user with the next lowest character code for the user ID after the previously selected user as the user to be notified. As another example, if the generation unit 41 receives a second notification request, it may select the user who is currently in the elevator hall and has the next lowest number of recent message notifications after the previously selected user as the user to be notified. Then, the generation unit 41 generates a message addressed to the user to be notified based on the status data of the user to be notified.

[0118] Next, the message server 40 determines whether or not to continue generating messages (step S310). Specifically, the generation unit 41 determines whether or not the generation of the next message for the next user will be completed within the message generation period. If it determines that it will be completed, it decides to continue generating messages; otherwise, it decides to stop. For example, the generation unit 41 predicts the completion time for generating the next message by adding the maximum time taken to generate a message for one user in step S306 over a predetermined period in the past (for example, 7 days) to the current time. Then, the generation unit 41 determines whether or not to continue generating messages if the predicted completion time does not exceed the message generation period; otherwise, it decides to stop generating messages.

[0119] If it is determined that message generation should continue (step S310: YES), the process returns to step S308, and the message server 40 generates messages to the extent that message generation can be completed within the message generation period.

[0120] If it is determined that message generation should be stopped (step S310: NO), the message server 40 sends the generated messages to the application server 30 (step S312).

[0121] Subsequently, the message server 40 performs a termination determination (step S312). The termination determination may be performed using the same criteria as in step S108. If it is determined that the process should terminate, the process ends (step S312: YES), and if it is determined that the process should not terminate, the process returns to step S304 (step S312: NO).

[0122] <6. Hardware Configuration Example> Next, with reference to Figure 8, the hardware configuration of the information processing device according to this embodiment will be described. Figure 8 is a block diagram showing an example of the hardware configuration of the information processing device according to this embodiment. The information processing device 900 shown in Figure 8 can, for example, realize the terminal device 20, application server 30, or message server 40 shown in Figure 1. Information processing by the terminal device 20, application server 30, or message server 40 according to this embodiment is realized through the cooperation of software and the hardware described below.

[0123] As shown in Figure 8, the information processing device 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, a RAM (Random Access Memory) 903, a host bus 904, a bridge 905, an external bus 906, an interface 907, an input device 908, an output device 909, a storage device 910, and a communication device 911.

[0124] The CPU 901 functions as an arithmetic processing unit and control unit, controlling the overall operation within the information processing unit 900 according to various programs. The CPU 901 may also be a microprocessor. The ROM 902 stores programs used by the CPU 901 and calculation parameters, etc. The RAM 903 temporarily stores programs used in the execution of the CPU 901 and parameters that change as appropriate during its execution. These are interconnected by a host bus 904, which consists of a CPU bus, etc. The CPU 901 can form, for example, the collection unit 31, request unit 32, notification control unit 33, or generation unit 41 shown in Figure 1.

[0125] The host bus 904 is connected to an external bus 906, such as a PCI (Peripheral Component Interconnect / Interface) bus, via a bridge 905. It is not necessary to configure the host bus 904, bridge 905, and external bus 906 separately; these functions may be implemented on a single bus.

[0126] The input device 908 consists of input means for the user to input information, such as a mouse, keyboard, touch panel, buttons, microphone, switch, and lever, and an input control circuit that generates an input signal based on the user's input and outputs it to the CPU 901. A user operating the information processing device 900 can input various data to the information processing device 900 or instruct it to perform processing operations by operating this input device 908. The input device 908 can, for example, receive input from the user at the terminal device 20.

[0127] The output device 909 may include, for example, a liquid crystal display (LCD) device, an OLED (Organic Light Emitting Diode) device, or a display device that outputs visual information such as a lamp. The output device 909 may include an audio output device that outputs auditory information such as a speaker. The output device 909 may include a tactile presentation device that outputs tactile information such as an eccentric motor. The output device 909 may, for example, output a message addressed to the user in the terminal device 20.

[0128] The storage device 910 is a device for storing data. The storage device 910 may include a storage medium, a recording device for recording data on the storage medium, a reading device for reading data from the storage medium, and a deletion device for deleting data recorded on the storage medium. The storage device 910 is composed of, for example, an HDD (Hard Disk Drive). This storage device 910 drives the hard disk and stores programs executed by the CPU 901 and various data. The storage device 910 can, for example, in the application server 30 or the message server 40, store status data and the notification history of messages to each user.

[0129] The communication device 911 is a communication interface composed of, for example, a communication device for connecting to a network. The communication device 911 may support either wireless or wired communication.

[0130] The above describes an example of a hardware configuration capable of realizing the functions of the information processing device 900 according to this embodiment. Each of the above components may be realized using general-purpose materials, or it may be realized using hardware specialized for the functions of each component. Therefore, it is possible to change the hardware configuration used as appropriate depending on the level of technology at the time of implementing this embodiment.

[0131] <7. Summary> As described above, when the generation unit 41 according to the above embodiment receives a message notification request, it selects one or more users to be notified from among multiple users, within the scope for which message generation can be completed within the message generation period, and generates and outputs a message addressed to the notified users based on the status data of the notified users. With this configuration, even if there are many users, the number of messages generated at one time is limited to the number for which message generation can be completed within the generation period. In other words, the delay time from when a message notification opportunity arises until the user actually receives the message notification does not exceed the length of the generation period. Therefore, regardless of the processing capacity of the information processing system 1, it is possible to maintain timely message notifications that are appropriate to the user's situation.

[0132] For example, if the number of users receiving services from the information processing system 1 increases, a situation may arise where other processes are running simultaneously on the computer where the application server 30 or message server 40 is operating. The information processing system 1 can notify messages in a timely manner even in such situations, thus solving the aforementioned technical challenges.

[0133] Furthermore, according to the above embodiment, the length of the generation period can be flexibly set in response to a first notification request that is triggered periodically, or a second notification request that is triggered when a specific event occurs. With this configuration, it is possible to flexibly control the delay time from when an opportunity to notify a message arises until the user actually receives the message notification, in accordance with the timeliness required of the message. In other words, it is possible to set and operate an upper limit on the delay time related to message notification according to the characteristics of the service. For example, it is possible to respond to requests such as notifying a user waiting for an elevator with a message within 30 seconds to change their behavior on the spot, or notifying a user within 27 minutes at night without expecting them to change their behavior on the spot.

[0134] Furthermore, since the message server 40 keeps track of the message notification history for each user, it selects users to be notified in order to avoid bias in who receives messages. This ensures that all users are given an equal opportunity to receive timely messages.

[0135] Although preferred embodiments of the present invention have been described in detail above with reference to the attached drawings, the present invention is not limited to these examples. It is clear to any person with ordinary skill in the art to which the present invention belongs that various modifications or alterations can be conceived within the scope of the technical idea described in the claims, and these are also understood to fall within the technical scope of the present invention.

[0136] The above describes an example in which the terminal device 20 is an information processing device carried by the user, but the present invention is not limited to such an example. Other devices may function as the terminal device 20. Furthermore, the above describes an example in which both the transmission of status data and the output of messages are performed by a single terminal device 20, but the present invention is not limited to such an example. The transmission of status data and the output of messages may be performed by separate devices, respectively.

[0137] For example, situational data may be generated by devices installed in the environment. Specifically, the user's location may be identified by image recognition using cameras installed in the environment, and situational data including information indicating the user's location and the time spent at that location may be generated. Alternatively, the user's actions may be identified by image recognition using cameras installed in the environment, and situational data including information indicating the user's actions and the duration of those actions may be generated.

[0138] As another example, the message may be output by a device installed in the environment. Specifically, the message may be output by a digital signage or speaker closest to the user.

[0139] Alternatively, the terminal device 20 may be implemented as an autonomously mobile robot or a PC (Personal Computer).

[0140] The criteria for selecting users to be notified are not limited to the examples described in the above embodiment. For example, the message server 40 may select users to be notified randomly. As another example, the message server 40 may select users to be notified randomly with weights based on weight coefficients indicating the likelihood of selection according to the frequency of message notifications to date. As yet another example, the message server 40 may lower the priority of selecting users to be notified if they have received a predetermined number of messages (e.g., three times a day) within a predetermined period. Of course, other known selection criteria may be adopted.

[0141] The specific events are not limited to the examples given above. Specific events may be defined depending on the type of service. Furthermore, multiple types of specific events may be defined. For each specific event, different generation periods and / or different criteria for selecting notified users may be adopted.

[0142] The above describes an example in which the information processing system 1 includes one application server 30 and one message server 40, but the present invention is not limited to this example. The information processing system 1 may include multiple application servers 30 and / or multiple message servers 40. For example, multiple user groups, each containing multiple users, may be defined, and different application servers 30 and message servers 40 may be used for each user group. As another example, the information processing system 1 may provide multiple types of services, and different application servers 30 and message servers 40 may be used for each service. Furthermore, in message notification services where timeliness is required, the generation period may be set to be shorter. On the other hand, in other message notification services, the generation period may be set to be longer.

[0143] Furthermore, although the above describes an example in which the collection unit 31, request unit 32, and notification control unit 33 are located in the application server 30, and the generation unit 41 is located in the message server 40, the present invention is not limited to this example. The arrangement of these components is arbitrary. For example, the collection unit 31, request unit 32, notification control unit 33, and generation unit 41 may be stored in one server. As another example, the collection unit 31, request unit 32, notification control unit 33, and generation unit 41 may each be located in separate servers.

[0144] The series of processes performed by each device described herein may be implemented using software, hardware, or a combination of software and hardware. The programs constituting the software are pre-stored in a recording medium (more specifically, a non-temporary storage medium readable by a computer) provided inside or outside each device. Each program is then loaded into RAM (Random Access Memory) when executed by a computer controlling each device described herein, and executed by a processing circuit such as a CPU (Central Processing Unit). The recording medium is, for example, a magnetic disk, an optical disk, a magneto-optical disk, or flash memory. The computer program may also be distributed via a network, for example, without using a recording medium. The computer may be an application-specific integrated circuit (ASIC), a general-purpose processor that performs functions by loading software programs, or a computer on a server used for cloud computing. The series of processes performed by each device described herein may be centrally processed by a single computer or distributed among multiple computers. Methods for executing the series of processes performed by each device described herein, which are performed by a computer, may also be provided. Furthermore, in each of the above embodiments, two or more communication means present in a single device may be physically implemented in a single medium.

[0145] Furthermore, the processes described herein using flowcharts or sequence diagrams do not necessarily have to be executed in the order shown. Some processing steps may be executed in parallel. Additional processing steps may be adopted, and some processing steps may be omitted. [Explanation of symbols]

[0146] 1. Information Processing System 10 Beacon Transmitter 20 Terminal devices 30 Application Servers 31 Collection Department 32 Request part 33 Notification Control Unit 40 Message Servers 41 Generation part

Claims

1. A generation unit, upon receiving a message notification request, selects one or more users to be notified from among multiple users, within the scope that the message generation can be completed within the message generation period, and generates and outputs the message addressed to the notified users based on the status data of the notified users. An information processing device equipped with the following features.

2. The generation unit generates and outputs the message based on whether the acquired notification request is a first notification request triggered by the arrival of a predetermined period, or a second notification request triggered by the detection of a specific event based on the user's status data. The information processing apparatus according to claim 1.

3. The length of the generation period for the message differs depending on whether the first notification request is received or the second notification request is received. The information processing apparatus according to claim 2.

4. When the first notification request is received, the length of the message generation period is shorter than the predetermined period related to the first notification request. The information processing apparatus according to claim 3.

5. The predetermined period relating to the first notification request varies depending on the time of day, date, or day of the week. The information processing apparatus according to claim 3.

6. When the second notification request is received, the length of the message generation period is shorter than the time for which the specific event related to the second notification request is expected to continue. The information processing apparatus according to claim 2.

7. The length of the message generation period when the second notification request is received depends on the number of users involved in the specific event related to the second notification request. The information processing apparatus according to claim 6.

8. The generation unit selects the user to be notified based on different selection criteria depending on whether it has received the first notification request or the second notification request. The information processing apparatus according to any one of claims 2 to 7.

9. The generation unit, upon receiving the first notification request, selects the users to be notified from all users, and upon receiving the second notification request, selects the users to be notified from the users involved in the specific event. The information processing apparatus according to claim 8.

10. The aforementioned specific event is a state in which a predetermined number of users or more are simultaneously present in the same space for a predetermined period of time. The information processing apparatus according to claim 2.

11. The notification request includes information indicating the length of the generation period of the message, The generation unit sets the generation period of the message based on the notification request. The information processing apparatus according to claim 1.

12. The aforementioned status data includes information indicating the user's location and the time spent at that location. The information processing apparatus according to claim 1.

13. The aforementioned situational data is generated when a beacon transmitted from an environmentally installed beacon transmitter is received by a terminal device carried by the user. The information processing apparatus according to claim 1.

14. A request unit that generates a message notification request, When a notification request is received from the request unit, a generation unit selects one or more users to be notified from among multiple users within the message generation period so that the generation of the message can be completed within that period, and generates and outputs the message addressed to the notified users based on the status data of the notified users. A notification control unit controls the process of notifying the user of the message to be notified, which was generated by the generation unit, to the user to be notified. An information processing system equipped with the following features.

15. A method of information processing performed by a computer, To obtain a message notification request, Within the message generation period, select one or more users to be notified from among multiple users, to the extent that the generation of the message can be completed, and generate and output the message addressed to the notified users based on the status data of the notified users. Controlling the process of notifying the user of the message that was generated and addressed to the user, Information processing methods including