Electronic device and method for providing messages therewith

The electronic device and method ensure timely delivery of latest order status information by comparing and filtering messages based on device and application states, addressing delays in push notifications for delivery personnel.

JP2026500087APending Publication Date: 2026-01-06COUPANG CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025524458
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-12-14
Filing Date
2023-02-02
Publication Date
2026-01-06

AI Technical Summary

Technical Problem

Existing delivery service platforms face issues with delivery personnel not receiving the latest order status information due to delays in push notification messages when the electronic device is inactive or running in the background.

Method used

An electronic device and method that checks the latest order status by comparing first and second status information, providing messages only when the first status is subsequent to the second status, and using HTTP polling or WebSocket push when the device is active, while omitting messages for identical or preceding statuses.

Benefits of technology

Ensures that delivery personnel receive only the latest order status information, reducing delays and improving efficiency by actively managing message delivery based on device and application states.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026500087000001_ABST
    Figure 2026500087000001_ABST
Patent Text Reader

Abstract

The present invention discloses a method for providing a message related to a service in an electronic device, which may include receiving a message including identification information of an order and information about a first status of the order from a server related to the service; if a thread in which the message is received satisfies a set condition, checking information about a second status of the order stored in at least one of a memory of the electronic device or a database of the server based on the identification information of the order; and providing the message based on the information about the first status of the order and the information about the second status of the order.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to an electronic device and a control method thereof for providing a message based on order status information contained in the message and status information stored in a memory or database, so as to provide a user with only the most recent information about the order status. [Background technology]

[0002] With the development of devices such as smartphones, the number of users using delivery intermediary service (hereinafter referred to as "service") platforms is increasing. In particular, food delivery, which previously involved ordering food over the phone and having it delivered, has shifted to online services such as apps, and the frequency of ordering food using delivery intermediary service platforms is increasing.

[0003] When a customer orders food through the application, a delivery person may be assigned to deliver the food, and through the application, the delivery person may view information related to the delivery destination, the store where the food is being prepared, or the status of the order.

[0004] In this case, if an application installed on the delivery person's electronic device is running in the background or is inactive, the electronic device may receive a message containing information about the order using a push notification message service. However, when using a push notification message service, there is a problem in that the delivery person may not receive the latest information about the order due to delays in the message.

[0005] In this regard, reference can be made to prior art documents such as Korean Patent Publication No. 10-1888693 and Korean Patent Publication No. 10-2140962. Summary of the Invention [Problem to be solved by the invention]

[0006] The disclosed embodiments aim to provide an electronic device and a method for providing a message therefor, and more specifically, an electronic device and a control method therefor that provide a message based on order status information included in the message and status information stored in a memory or database so that only information about the latest order status can be provided to a user.

[0007] The technical problem that the present embodiment aims to achieve is not limited to the above-mentioned technical problem, and other technical problems can be inferred from the following embodiment. [Means for solving the problem]

[0008] One aspect of the present disclosure may provide a message providing method including: receiving a message from a server associated with the service, the message including identification information of an order and information regarding a first status of the order; if the thread in which the message was received satisfies a set condition, checking information regarding a second status of the order stored in at least one of a memory of the electronic device or a database of the server based on the identification information of the order; and providing the message based on the information regarding the first status of the order and the information regarding the second status of the order.

[0009] In addition, in one embodiment of the present disclosure, a message providing method may be provided, wherein the step of providing the message includes a step of omitting providing the message if the first state is a state previous to the second state or a state identical to the second state.

[0010] Furthermore, in one embodiment of the present disclosure, the message providing method may include providing the message when the first state is a state subsequent to the second state.

[0011] In addition, in one embodiment of the present disclosure, a message delivery method may be provided in which the set conditions include a case where the thread in which the message was received corresponds to a server related to a message delivery service excluding the server.

[0012] In addition, in one embodiment of the present disclosure, a message delivery method may be provided, including cases where the first state is a state preceding the second state, the first state is any of an order acceptance state, a delivery person arrival state, and a receipt completion state, and the second state is an order cancellation state.

[0013] In addition, in one embodiment of the present disclosure, a message delivery method may be provided in which, when the first state is a state preceding the second state, the first state is an order allocation state and the second state is one of an order acceptance state, a delivery person arrival state, a receipt completion state, and a delivery completion state; when the first state is the order acceptance state and the second state is one of the delivery person arrival state, the receipt completion state, and the delivery completion state; when the first state is the delivery person arrival state and the second state is one of the receipt completion state and the delivery completion state; and when the first state is the receipt completion state and the second state is one of the delivery completion states.

[0014] In addition, in one embodiment of the present disclosure, the message providing method may further include the steps of sending a confirmation request to the server as to whether the first state is up to date; receiving a response from the server regarding whether the first state is up to date; and providing the message based on the response.

[0015] In addition, in one embodiment of the present disclosure, a message providing method may be provided, wherein the step of providing the message based on the response includes a step of omitting providing the message if it is confirmed that the first status is not up to date or if it is confirmed that the order has been assigned to another user.

[0016] In addition, in one embodiment of the present disclosure, a message providing method may be provided, wherein the step of providing the message based on the response includes a step of providing the message if it is confirmed that the first state is the latest state.

[0017] In addition, in one embodiment of the present disclosure, a message providing method may be provided in which the first state includes an order allocation state, and if the server does not obtain user input regarding whether or not to accept the order within a set time, the order is treated as having been rejected by the user.

[0018] Additionally, in one embodiment of the present disclosure, a message delivery method may be provided in which rejections of the order are excluded when calculating acceptance and rejection rates for the user.

[0019] In addition, in one embodiment of the present disclosure, the message providing method may include the steps of receiving an additional message from the server, the additional message including information that the order has been assigned to another delivery person; and providing the additional message and omitting providing the message.

[0020] In addition, in one embodiment of the present disclosure, the message providing method may further include a step of activating an application related to the service that is in an inactive state for a set time period upon receiving the message.

[0021] In addition, in one embodiment of the present disclosure, a message delivery method may be provided in which information regarding the second status is received from the server through HTTP polling or websocket push and stored in the memory of the electronic device.

[0022] In addition, in one embodiment of the present disclosure, a method for providing a message may be provided, in which an application related to the service is in an active state when the information about the second state is received from the server.

[0023] Another aspect of the present disclosure may provide an electronic device including a communication unit, a memory, and a controller, wherein the controller receives a message from a server associated with a service, the message including identification information of an order and information regarding a first status of the order, and if a thread in which the message was received satisfies a set condition, checks information regarding a second status of the order stored in at least one of a memory of the electronic device or a database of the server based on the identification information of the order, and provides the message based on the information regarding the first status of the order and the information regarding the second status of the order.

[0024] Yet another aspect of the present disclosure may provide a computer-readable recording medium having a program recorded thereon for implementing a method performed by an electronic device.

[0025] Specific details of other embodiments are included in the detailed description and drawings. [Effects of the Invention]

[0026] According to the proposed embodiment, one or more of the following advantages can be expected:

[0027] According to embodiments herein, the electronic device may provide the user with only information regarding the current status of the order.

[0028] The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims. [Brief explanation of the drawings]

[0029] [Figure 1]1 illustrates a system according to one embodiment. [Figure 2] 1 illustrates information regarding the status of an order according to one embodiment. [Figure 3] FIG. 10 is a diagram illustrating how an electronic device receives a message according to one embodiment. [Figure 4] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 5] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 6] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 7] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 8] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 9] 10A and 10B are diagrams illustrating a process in which an electronic device provides a message according to an embodiment. [Figure 10] 1 illustrates a flowchart of a method for providing a message in an electronic device according to one embodiment. [Figure 11] 1 illustrates a block diagram of an electronic device according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0030] The terms used in the embodiments are currently commonly used and general terms that have been selected as much as possible while taking into consideration the functions of the present disclosure, but these may change depending on the intentions of engineers in the field, precedents, the emergence of new technologies, etc. In addition, in certain cases, the applicant may arbitrarily select terms, and in such cases, the meanings thereof will be described in detail in the relevant explanation section. Therefore, the terms used in the present disclosure should be defined based on the meanings of the terms and the overall content of the present disclosure, rather than simply by the names of the terms.

[0031] Throughout the specification, when a part "comprises" a certain element, this does not mean that it excludes other elements, but that it may further include other elements, unless otherwise specified.

[0032] Throughout the specification, the expression "at least one of a, b, and c" can encompass "a alone," "b alone," "c alone," "a and b," "a and c," "b and c," or "all of a, b, and c."

[0033] The "terminal" referred to below may be embodied as a computer or a portable terminal that can connect to a server or other terminals via a network. Here, the computer may include, for example, a notebook computer, desktop computer, or laptop computer equipped with a web browser, and the portable terminal may include, for example, a wireless communication device that ensures portability and mobility, such as communication-based terminals like IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), and LTE (Long Term Evolution), as well as all kinds of handheld-based wireless communication devices like smartphones and tablet PCs.

[0034] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0023] The present disclosure will be described in detail below with reference to the accompanying drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be embodied in many different forms and is not limited to the embodiments set forth herein.

[0035] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings.

[0036] FIG. 1 illustrates a system according to one embodiment.

[0037] 1, the system may include at least one of an electronic device 100, a server 120, a message providing server 140, a customer terminal 160, and a network 180. Meanwhile, the system illustrated in FIG. 1 only shows components relevant to the present embodiment. Therefore, it will be understood by those skilled in the art that the system may further include other general components in addition to the components illustrated in FIG. 1.

[0038] The electronic device 100 is a terminal used by a user or a delivery person, and the delivery person can check necessary information from order to delivery using an application installed on the electronic device 100. For example, the delivery person can use the electronic device 100 to check information on the delivery destination of the order assigned to them and route information from the store to the delivery destination, and can input information such as completion of delivery of the assigned order or rejection of the order.

[0039] According to one embodiment, electronic device 100 may provide a message to a delivery person including information about the status of an order. For example, electronic device 100 may receive a message from server 120 including identification information of an order associated with a service and information about a first status of the order. If the thread in which the message was received meets a set condition, electronic device 100 may check information about a second status of the order stored in at least one of a memory of electronic device 100 or a database of server 120 based on the identification information of the order. Electronic device 100 may then provide a message to a delivery person based on the information about the first status of the order and the information about the second status of the order.

[0040] Meanwhile, in the present disclosure, a user who uses the electronic device 100 may be interchangeably referred to as a delivery person who performs delivery work using the electronic device 100, but the term referring to a user is not limited to the above.

[0041] The server 120 is a device that compiles and provides various information, and may provide the compiled information as a web page or application screen, or in a format that can be displayed on a provided terminal as a web page or application screen. For example, the server 120 may receive a delivery request for an ordered item from the customer terminal 160 and assign the order to a delivery person. Alternatively, the server 120 may send a message containing information about the status of the order to the electronic device 100 used by the delivery person to whom the order is assigned, whenever the status of the order changes.

[0042] The message providing server 140 is a device that provides a push notification message service, and when an application related to a specific service in the electronic device 100 is running in the background or in an inactive state, the message providing server 140 may receive a message from the server 120 related to the service and transmit the received message to the electronic device 100. Depending on the type of operating system used in the electronic device 100, the message providing server 140 may include at least one of an APNS (Apple push notification service) server, an SPP (Samsung push platform) server, a C2DM (cloud to device messaging framework) server, an AOM (always on management) server, an MPNS (Microsoft push notification service) server, and a WNS (Windows push notification service) server, but is not limited to the above.

[0043] The customer terminal 160 is a terminal used by each customer, and the customer can access the services provided by the network 180 using their own customer terminal 160. For example, the customer can use a platform or application installed on their own customer terminal 160 to order items, cancel orders, and check the delivery status of the order.

[0044] The server 120, the message providing server 140, the customer terminal 160, and the electronic device 100 can communicate with each other within a network 180. The network 180 is a comprehensive data communication network that enables smooth communication between the network components shown in FIG. 1, including a local area network (LAN), a wide area network (WAN), a value-added network (VAN), a mobile radio communication network, a satellite communication network, and combinations thereof. It may include wired internet, wireless internet, and a mobile wireless communication network. Examples of wireless communication networks include, but are not limited to, wireless LAN (Wi-Fi), Bluetooth, Bluetooth low energy, ZigBee, Wi-Fi Direct (WFD), ultra wideband (UWB), infrared data association (IrDA), and near field communication (NFC).

[0045] FIG. 2 illustrates information regarding the status of an order according to one embodiment.

[0046] In one embodiment, the status of an order may include an order assigned state 200, an order rejected state 210, an order accepted state 220, a delivery person arrived state 230, a receipt completed state 240, an order canceled state 250, and a delivery completed state 260. For example, the order assigned state 200 may represent a state in which an order is assigned to a delivery person after information about the order is generated by a customer ordering an item, and the order rejected state 210 may represent a state in which the delivery person has refused to deliver the assigned order. The order accepted state 220 may represent a state in which the delivery person has accepted delivery of the assigned order, the delivery person arrived state 230 may represent a state in which the delivery person has arrived at the store, and the receipt completed state 240 may represent a state in which the delivery person has received the item at the store. The order canceled state 250 may represent a state in which a customer has canceled an order for an item, and the delivery completed state 260 may represent a state in which the delivery person has delivered the item ordered by the customer to the customer. Meanwhile, the specific examples of the number of order states and the names of each order state described above are merely one embodiment, and it will be obvious to those skilled in the art to which the present disclosure pertains that the present disclosure may be embodied with a number of order states and names of each order state different from those described above.

[0047] According to one embodiment, there may be a progression sequence between the states of an order, and the state of the order may be triggered by a message received from the electronic device 100 or a customer terminal and changed to the next state corresponding to the message.

[0048] For example, if the server receives a message from the electronic device 100 that the delivery person refuses to deliver the assigned order, the state of the order may be changed from the order assigned state 200 to the order rejected state 210, and if the server receives a message from the electronic device 100 that the delivery person accepts delivery of the assigned order, the state of the order may be changed from the order assigned state 200 to the order accepted state 220.

[0049] Further, for example, if the server receives a message from the electronic device 100 that the delivery person has arrived at the store, the state of the order may be changed from the order accepted state 220 to the delivery person arrived state 230, and if the server receives a message from the electronic device 100 that the delivery person has received the item at the store, the state of the order may be changed from the delivery person arrived state 230 to the received state 240.

[0050] Further, for example, if the server receives a message from the customer terminal that the customer is canceling the order for an item, the state of the order may be changed from any of the order accepted state 220, the delivery person arrived state 230, and the receipt completed state 240 to the order canceled state 250, and if the server receives a message from the electronic device 100 that the delivery person has delivered the item the customer ordered to the customer, the state of the order may be changed from the receipt completed state 240 to the delivery completed state 260.

[0051] However, the progression order between multiple states related to an order and the sender and type of message that triggers a state change are merely one embodiment, and it will be obvious to one skilled in the art to which this disclosure pertains that the present disclosure may be embodied differently from the above.

[0052] FIG. 3 is a diagram illustrating how the electronic device 100 receives a message according to one embodiment.

[0053] According to one embodiment, the delivery person's status is information indicating whether the delivery person using the electronic device 100 is available to perform delivery duties, and may include an on-duty status 300 and an off-duty status 310. The on-duty status 300 of the delivery person indicates the state in which the delivery person is available to perform delivery duties, and may include a state in which the delivery person is available after arriving at work but not yet assigned an order, or a state in which the delivery person is delivering an assigned order, etc. The off-duty status 310 of the delivery person indicates the state in which the delivery person is unavailable to perform orders, and may include a state in which the delivery person is available before arriving at work, a state in which the delivery person has left work, or a state in which the delivery person has requested to be removed from work assignments, etc.

[0054] According to one embodiment, the application status is information indicating whether an application related to a service installed in the electronic device 100 is active or inactive, and may include an active status 320 and an inactive status 330. For example, the active status 320 of an application indicates whether the application is running in the foreground or background, and the inactive status 330 of an application indicates that the application is not running (killed).

[0055] According to one embodiment, the electronic device 100 may receive messages in a manner determined based on the state of the application and the state of the delivery person. For example, if the delivery person's state is on-duty 300 and the service-related application is active 320, the electronic device 100 may receive messages related to the service from the server using HTTP polling 340 or websocket push 350. Alternatively, if the delivery person's state is on-duty 300 and the service-related application is inactive 330, the electronic device 100 may receive messages related to the service from the server using a push notification message service 360. If the delivery person's state is off-duty 310, the electronic device 100 may not receive messages related to the service, regardless of the state of the application.

[0056] According to one embodiment, when the electronic device 100 receives a message using HTTP polling 340 or WebSocket push 350, the electronic device 100 may receive the message directly from the server, whereas when the electronic device 100 receives a message using a push notification message service 360, the electronic device 100 may receive the message from a message providing server located between the server and the electronic device 100.

[0057] In this case, the electronic device 100 may receive messages in different threads depending on the method of receiving the messages. For example, the electronic device 100 may receive messages in threads corresponding to HTTP polling 340, WebSocket push 350, or push notification message service 360.

[0058] Meanwhile, the process of determining a method for receiving a message based on the state of the application and the state of the delivery person may be implemented differently from that illustrated in Fig. 3. For example, Fig. 3 illustrates that when the state of the delivery person is on duty 300 and the application related to the service is running in the background, the electronic device 100 receives a message related to the service from the server using HTTP polling 340 or WebSocket push 350, but differently, the electronic device 100 may receive a message related to the service from the server using a push notification message service 360.

[0059] FIG. 4 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment.

[0060] In step S400, according to one embodiment, the electronic device 100 may receive a message including the order identification information and information about the first status of the order from a server associated with the service. For example, the electronic device 100 may use HTTP polling or WebSocket push to directly receive the message including the order identification information and information about the first status of the order from the server associated with the item delivery service. Alternatively, the electronic device 100 may use a push notification message service to receive the message including the order identification information and information about the first status of the order from the server associated with the item delivery service via a message providing server.

[0061] In step S420, according to an embodiment, if the thread in which the message was received satisfies a set condition, the electronic device 100 may check information about the second status of the order stored in the memory of the electronic device or the database of the server. For example, the electronic device 100 may check information about the second status corresponding to the order identification information among the information stored in the memory of the electronic device 100. Alternatively, if the electronic device 100 and the server can communicate via a network, the electronic device 100 may send a message to the server including the order identification information and a request to send information about the second status corresponding to the order identification information. The server then checks the information about the second status stored in the database and sends it to the electronic device 100, so that the electronic device 100 can check the information about the second status of the order.

[0062] In this case, if the thread in which the message is received satisfies the set condition, it may include a case in which the thread in which the message is received corresponds to a server related to the message providing service, excluding a server related to the service. For example, if the thread in which the message is received satisfies the set condition, it may include a case in which the electronic device 100 receives a message from a message providing server using a push notification message service.

[0063] In step S440, the electronic device 100 may check whether the first state of the order is a state subsequent to the second state of the order, according to one embodiment. If it is determined that the first state of the order is a state subsequent to the second state of the order, the electronic device 100 may perform step S460, and if it is determined that the first state of the order is not a state subsequent to the second state of the order, the electronic device 100 may perform step S480.

[0064] In step S460, if it is determined that the first status of the order is a status subsequent to the second status of the order, the electronic device 100 may provide a message. For example, if the first status is an order cancellation status and the second status is one of an order acceptance status, a delivery person arrival status, and a receipt completion status, the electronic device 100 may display a message including information about the first status on the display. Alternatively, if the first status is an order acceptance status and the second status is an order allocation status, the electronic device 100 may display a message including information about the first status on the display.

[0065] In step S480, if it is determined that the first status of the order is a status before the second status or is the same status as the second status, the electronic device 100 may omit providing the message. For example, if the first status is an order allocation status and the second status is an order rejection status, the electronic device 100 may delete the message including information about the first status. Alternatively, if the first status is a delivery person arrival status and the second status is either a receipt completion status or a delivery completion status, the electronic device 100 may delete the message including information about the first status.

[0066] Meanwhile, in FIG. 4, the second state of the order may include, but is not limited to, a latest state.

[0067] 5 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment. Content that overlaps with that in FIG. 4 will be briefly described or omitted.

[0068] In step S500, the electronic device 100 may receive a message from a server associated with the service, the message including identification information of the order and information regarding a first status of the order, according to one embodiment.

[0069] In step S510, according to one embodiment, the electronic device 100 may check information about the second status of the order stored in the memory of the electronic device 100. For example, the electronic device 100 may check information about the second status corresponding to the order identification information from the information stored in the memory of the electronic device 100.

[0070] In step S530, the electronic device 100 may check whether the first state of the order is a state subsequent to the second state of the order, according to one embodiment. If it is determined that the first state of the order is a state subsequent to the second state of the order, the electronic device 100 may perform step S530, and if it is determined that the first state of the order is not a state subsequent to the second state of the order, the electronic device 100 may perform step S590.

[0071] In step S530, the electronic device 100 may check whether the electronic device 100 and the server are connected via a network, according to an embodiment. If it is determined that the electronic device 100 and the server can communicate via the network, the electronic device 100 may perform step S540. If it is determined that the electronic device 100 and the server cannot communicate via the network, the electronic device 100 may perform step S580.

[0072] In step S540, according to one embodiment, the electronic device 100 may transmit a confirmation request regarding the first status of the order to a server associated with the service. For example, if it is confirmed that the electronic device 100 and the server can communicate via a network, the electronic device 100 may transmit identification information of the order, information regarding the first status of the order, and a confirmation request regarding the first status of the order to the server.

[0073] In step S550, according to an embodiment, the electronic device 100 may receive a response to the confirmation request regarding the first status of the order from a server associated with the service. For example, the electronic device 100 may receive a response from the server including information regarding whether the first status is up to date or whether the order has been assigned to another delivery person.

[0074] In step S560, the electronic device 100 may check whether the first state is the latest state, according to an embodiment. For example, the electronic device 100 may check whether the first state is the latest state based on a response received from the server. If it is determined that the first state is the latest state, the electronic device 100 may perform step S570. If it is determined that the first state is not the latest state, the electronic device 100 may perform step S590.

[0075] In step S570, the electronic device 100 may determine whether the order has been assigned to another delivery person, according to an embodiment. For example, the electronic device 100 may determine whether the order has been assigned to another delivery person based on a response received from the server. If it is determined that the order has been assigned to another delivery person, the electronic device 100 may perform step S590. If it is determined that the order has not been assigned to another delivery person, the electronic device 100 may perform step S580.

[0076] In step S580, the electronic device 100 may provide a message according to an embodiment. For example, if it is determined that the electronic device 100 and the server cannot communicate over the network, the electronic device 100 may display a message including information about the first status on the display. Alternatively, if it is determined that the first status is the latest status and the order has not been assigned to another delivery person, the electronic device 100 may display a message including information about the first status on the display.

[0077] In step S590, the electronic device 100 may omit providing a message according to an embodiment. For example, if it is determined that the first status of the order is not a status subsequent to the second status of the order, the electronic device 100 may delete the message including information about the first status. Alternatively, if it is determined that the first status is not the latest status or that the order has been assigned to another delivery person, the electronic device 100 may delete the message including information about the first status.

[0078] 6 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment. Contents that overlap with those in FIGS. 4 and 5 will be briefly described or omitted.

[0079] In step S600, according to one embodiment, the server 120 may send a first message including identification information of the order and information about a first status of the order to the message providing server 140. For example, if an application related to a service installed in the electronic device 100 is running in the background or is inactive, the server 120 may send a first message including identification information of the order and information about a first status of the order to the message providing server 140.

[0080] In step S620, if the server 120 does not receive a user input regarding whether to accept the order within the set time 610, the server 120 may process the order as having been rejected by the user, according to one embodiment. For example, if the server 120 does not receive a user input regarding whether to accept the order from the delivery person who assigned the order or the electronic device 100 used by the user within the set time 610, the server 120 may process the order as having been rejected by the user.

[0081] According to one embodiment, if server 120 is unable to obtain user input regarding whether to accept an order for a set period of time 610, and therefore treats the order as having been rejected by the user, the rejection of the order may be excluded from the calculation of the acceptance and rejection rates for the user or delivery person. For example, if server 120 is unable to obtain user input regarding whether to accept an order for a set period of time 610, and therefore treats the order as having been rejected by the user, server 120 may calculate the acceptance and rejection rates for the user or delivery person without including the case of rejection of the order in the case of user rejection.

[0082] In step S630, the server 120 may allocate the order to another user according to an embodiment. For example, if the server 120 does not receive a user input regarding whether to accept the order during a set time 610, the server 120 may treat the order as if the user had rejected it and allocate the order to another user.

[0083] In step S640, according to an embodiment, the electronic device 100 may receive a second message from the server 120, the second message including information that the order has been assigned to another delivery person. For example, if a service-related application installed in the electronic device 100 is changed from an inactive state to an active state, the server 120 may directly send the second message to the electronic device 100, the second message including information that the order has been assigned to another delivery person.

[0084] In step S650, according to an embodiment, the electronic device 100 may provide the user with a second message including information that the order has been assigned to another delivery person. For example, the electronic device 100 may display the second message including information that the order has been assigned to another delivery person by treating the order as if the user had rejected it.

[0085] In step S660, according to an embodiment, the electronic device 100 may receive a first message including identification information of the order and information about a first status of the order from the message providing server 140. For example, the electronic device 100 may receive the first message after receiving the second message due to a delay in a push notification message service, etc.

[0086] In step S670, the electronic device 100 may omit providing the first message including the order identification information and information about the first status of the order, according to an embodiment. For example, the electronic device 100 may delete the first message including the order identification information and information about the first status of the order by confirming that the order has been assigned to another delivery person.

[0087] 6 illustrates electronic device 100 performing steps S660 and S670 after performing step S650, but this is merely one embodiment. For example, electronic device 100 may perform step S660, step S650, and then step S670. Alternatively, electronic device 100 may perform step S660, step S650, and step S670 in parallel.

[0088] 7 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment. Content that overlaps with that in FIG. 4 will be briefly described or omitted.

[0089] In step S700, the electronic device 100 may receive a message including identification information of the order and information regarding a first status of the order from a server related to the service, according to an embodiment. At this time, an application related to the service installed on the electronic device 100 may be in an inactive state.

[0090] In step S710, according to an embodiment, the electronic device 100 may activate a service-related application for a set time period. For example, the electronic device 100 may change a service-related application that has been in an inactive state to an active state for a set time period by receiving a message from the server.

[0091] In step S720, according to an embodiment, if the thread in which the message was received satisfies a set condition, the electronic device 100 may check information about the second status of the order stored in the memory of the electronic device or the database of the server. For example, if the thread in which the message was received corresponds to a server related to a message providing service, excluding a server related to the service, the electronic device 100 may check information about the second status of the order stored in the memory of the electronic device or the database of the server.

[0092] In step S730, the electronic device 100 may check whether the first state of the order is a state subsequent to the second state of the order, according to one embodiment. If it is determined that the first state of the order is a state subsequent to the second state of the order, the electronic device 100 may perform step S740, and if it is determined that the first state of the order is not a state subsequent to the second state of the order, the electronic device 100 may perform step S750.

[0093] In step S740, if it is determined that the first state of the order is a state subsequent to the second state of the order, the electronic device 100 may provide a message. For example, if it is determined that the first state of the order is a state subsequent to the second state of the order, the electronic device 100 may display a message including information about the first state on the display.

[0094] In step S750, if it is determined that the first state of the order is a state preceding the second state or is the same state as the second state, the electronic device 100 may omit providing the message. For example, if it is determined that the first state of the order is a state preceding the second state of the order or is the same state as the second state, the electronic device 100 may delete the message including information about the first state.

[0095] 8 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment. Contents that overlap with those in FIGS. 4 and 6 will be briefly described or omitted.

[0096] In step S800, according to an embodiment, the server 120 may send a first message including information about the identification information of the order and a first status of the order to the message providing server 140. For example, if an application related to a service installed in the electronic device 100 is running in the background or is inactive, the server 120 may send a first message including information about the identification information of the order and a first status of the order to the message providing server 140. In this case, the first status of the order may be any one of an order acceptance status, a delivery person arrival status, and a receipt completion status.

[0097] In step S810, according to one embodiment, the customer terminal 160 may transmit order cancellation information to the server 120. For example, the customer terminal 160 may obtain a customer input to cancel an order for an item and transmit information to the server 120 that the order for the item is canceled.

[0098] In step S820, the server 120 may change the status of the order to an order cancellation status according to an embodiment. For example, upon receiving information from the customer terminal 160 that an order for an item is to be canceled, the server 120 may change the status of the order from any of an order acceptance status, a delivery person arrival status, and a receipt completion status to an order cancellation status.

[0099] In step S830, according to an embodiment, the electronic device 100 may receive a second message including identification information of the order and information about a second status of the order from the server 120. For example, if an application related to a service installed in the electronic device 100 is changed from an inactive state to an active state, the server 120 may directly send a second message including identification information of the order and information about the order cancellation status to the electronic device 100.

[0100] In step S840, according to an embodiment, the electronic device 100 may receive a first message including identification information of the order and information regarding a first status of the order from the message providing server 140. For example, the electronic device 100 may receive the first message after receiving the second message due to a delay in a push notification message service, etc.

[0101] In step S850, the electronic device 100 may provide a second message to the user, including information about the order's identification information and the second status of the order, according to an embodiment. For example, the electronic device 100 may determine that the second status, which is the order cancellation status, is a status subsequent to the first status, which is any one of the order acceptance status, delivery person arrival status, and receipt completion status. Thereafter, the electronic device 100 may display the second message, including the order's identification information and the information about the order cancellation status, on the display.

[0102] In step S860, the electronic device 100 may omit providing the first message including the order identification information and information about the first status of the order, according to an embodiment. For example, the electronic device 100 may determine that the first status, which is one of the order acceptance status, delivery person arrival status, and receipt completion status, is an earlier status than the second status, which is the order cancellation status. Then, the electronic device 100 may delete the first message including the order identification information and information about the first status of the order.

[0103] 8 illustrates the electronic device 100 performing step S860 after performing step S850, but this is merely an example embodiment. For example, the electronic device 100 may perform step S850 after performing step S860. Alternatively, the electronic device 100 may perform steps S850 and S860 in parallel.

[0104] 9 is a diagram illustrating a process in which the electronic device 100 provides a message according to an embodiment. Contents that overlap with those in FIGS. 4 and 6 will be briefly described or omitted.

[0105] In step S900, according to an embodiment, the server 120 may send a first message including identification information of the order and information about a first status of the order to the message providing server 140. For example, if an application related to a service installed in the electronic device 100 is running in the background or is inactive, the server 120 may send a first message including identification information of the order and information about a first status of the order to the message providing server 140.

[0106] In step S910, the electronic device 100 may activate an application related to a service according to an embodiment. For example, the electronic device 100 may activate an application related to a service that was in an inactive state based on a user input. Alternatively, the electronic device 100 may activate an application that was running in the background based on a user input.

[0107] In step S920, according to an embodiment, the electronic device 100 may transmit information about the order to the server 120. For example, the electronic device 100 may receive user input indicating that the electronic device 100 has arrived at the store or received an item at the store, and transmit information about the order to the server 120. Alternatively, the electronic device 100 may receive user input indicating that the electronic device 100 has completed delivery of the item, and transmit information about the order to the server 120.

[0108] In step S930, in one embodiment, the server 120 may change the status of the order based on information about the order received from the electronic device 100. For example, the server 120 may receive information from the electronic device 100 that the user has arrived at the store and, based on this, change the status of the order from an order accepted state to a delivery person arrived state. Alternatively, the server 120 may receive information from the electronic device 100 that the user has received an item at the store and, based on this, change the status of the order from a delivery person arrived state to a receipt completed state. The server 120 may receive information from the electronic device 100 that the user has completed delivery of the item and, based on this, change the status of the order from a receipt completed state to an order completed state.

[0109] In step S940, according to one embodiment, the electronic device 100 may receive a second message including the identification information of the order and information about the second status of the order from the server 120. For example, by activating an application, the electronic device 100 may directly receive the second message including the identification information of the order and information about the changed second status from the server 120.

[0110] In step S950, according to an embodiment, the electronic device 100 may receive a first message including identification information of the order and information regarding a first status of the order from the message providing server 140. For example, the electronic device 100 may receive the first message after receiving the second message due to a delay in a push notification message service, etc.

[0111] In step S960, the electronic device 100 may provide the user with a second message including the order identification information and information about the second status of the order, according to an embodiment. For example, the electronic device 100 may determine that the second status is a next level up from the first status and display the second message including the order identification information and information about the second status of the order on the display.

[0112] In step S970, the electronic device 100 may omit providing the first message including the order identification information and information about the first status of the order, according to one embodiment. For example, the electronic device 100 may determine that the first status is an earlier status than the second status and delete the first message including the order identification information and information about the first status of the order.

[0113] 9 illustrates the electronic device 100 performing step S960 and then step S970, but this is merely an example embodiment. For example, the electronic device 100 may perform step S970 after performing step S960. Alternatively, the electronic device 100 may perform steps S960 and S970 in parallel.

[0114] 10 shows a flowchart of a method for providing a message in an electronic device according to one embodiment. The above description of overlapping content may apply.

[0115] In step S1000, the electronic device may receive a message from a server associated with the service, the message including identification information of the order and information regarding a first status of the order.

[0116] In one embodiment, the first state may include an order allocation state, and if the server does not receive user input regarding whether to accept the order for a set period of time, the order may be treated as having been rejected by the user, and the rejection of the order may be excluded from calculations of the acceptance and rejection rates for the user.

[0117] According to one embodiment, the electronic device may receive a message to activate an application associated with a service that is in an inactive state for a set period of time.

[0118] In step S1020, if the thread in which the message was received satisfies the set condition, the electronic device may check information regarding the second status of the order stored in at least one of the memory of the electronic device or the database of the server based on the identification information of the order.

[0119] According to one embodiment, the set conditions may include a case where the thread in which the message is received corresponds to a server associated with the message providing service, excluding the server.

[0120] According to one embodiment, the information about the second state may be received from the server through HTTP polling or websocket push and stored in the memory of the electronic device, and the application related to the service may be in an active state when the information about the second state is received from the server.

[0121] In step S1040, the electronic device may provide a message based on the information regarding the first status of the order and the information regarding the second status of the order.

[0122] According to one embodiment, if the first state is a state preceding the second state or is the same state as the second state, the electronic device may omit providing a message, or if the first state is a state following the second state, the electronic device may provide a message.

[0123] In one embodiment, when the first state is a state preceding the second state, the first state may be one of an order accepted state, a delivery person arrived state, and a receipt completed state, and the second state may be an order canceled state.

[0124] In one embodiment, when the first state is a state preceding the second state, it may include when the first state is an order assigned state and the second state is one of an order accepted state, a delivery person arrived state, a receipt completed state, and a delivery completed state; when the first state is an order accepted state and the second state is one of a delivery person arrived state, a receipt completed state, and a delivery completed state; when the first state is a delivery person arrived state and the second state is one of a receipt completed state and a delivery completed state; and when the first state is a receipt completed state and the second state is one of a delivery completed state.

[0125] According to one embodiment, the electronic device may send a request to the server to confirm whether the first status is up to date, receive a response from the server regarding whether the first status is up to date, and provide a message based on the response. At this time, if the first status is confirmed to be out of date or if the order is confirmed to have been assigned to another user, the electronic device may omit providing the message. Alternatively, if the first status is confirmed to be up to date, the electronic device may provide the message.

[0126] According to one embodiment, if the user is treated as having rejected the order, the electronic device may receive an additional message from the server containing information that the order has been assigned to another delivery person, provide the additional message, or omit providing the message.

[0127] FIG. 11 shows a block diagram of an electronic device 100 according to one embodiment.

[0128] According to an embodiment, the electronic device 100 may include a communication device 1120, a memory 1140, and a controller 1160. The electronic device 100 illustrated in FIG. 11 only includes components relevant to this embodiment. Therefore, those skilled in the art will understand that the electronic device 100 may further include other general components in addition to the components illustrated in FIG. 11. Because the electronic device 100 may include the details of the server described above, redundant descriptions will be omitted. In an embodiment, the communication device may include one or more transceivers. Furthermore, in an embodiment, the controller may include one or more processors.

[0129] The communication unit 1120 is a device for performing wired / wireless communication and can communicate with an external electronic device. The external electronic device can be a terminal or a server. Communication technologies used by the communication unit 1120 can include GSM (Global System for Mobile communication), CDMA (Code Division Multi Access), LTE (Long Term Evolution), 5G, WLAN (Wireless LAN), Wi-Fi (Wireless Fidelity), Bluetooth, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), ZigBee, NFC (Near Field Communication), etc.

[0130] The control unit 1160 may control the overall operation of the electronic device 100 and process data and signals. The control unit 1160 may be configured with at least one hardware unit. The control unit 1160 may also operate by one or more software modules generated by executing program code stored in the memory 1140. The control unit 1160 may include a processor and a memory, so that the processor executes the program code stored in the memory to control the overall operation of the electronic device 100 and process data and signals. In an embodiment, the control unit 1160 may also include at least one processor.

[0131] The control unit 1160 may receive a message from a server associated with the service, including identification information of an order and information regarding a first status of the order, and if the thread in which the message was received satisfies a set condition, check information regarding a second status of the order stored in at least one of the memory of the electronic device or the database of the server based on the identification information of the order, and provide a message based on the information regarding the first status of the order and the information regarding the second status of the order.

[0132] The electronic device according to the above-described embodiments may include a processor, memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with external devices, and user interface devices such as a touch panel, keys, buttons, etc. Methods embodied as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable code or program instructions executable on the processor. Examples of computer-readable recording media include magnetic storage media (e.g., read-only memory (ROM), random-access memory (RAM), floppy disks, hard disks, etc.) and optically readable media (e.g., CD-ROMs, DVDs, etc.). The computer-readable recording media may be distributed across network-connected computer systems to store and execute the computer-readable code in a distributed manner. The medium is computer-readable, can be stored in memory, and can be executed by a processor.

[0133] The present embodiments may be illustrated as functional blocks and various processing steps. These functional blocks may be embodied as various hardware and / or software components that perform specific functions. For example, the embodiments may employ direct circuitry, such as memory, processing, logic, look-up tables, and the like, that can perform various functions under the control of one or more microprocessors or other control devices. While components may be implemented in software programming or software elements, the present embodiments include various algorithms embodied as a combination of data structures, processes, routines, or other programming components, and may be implemented in programming or scripting languages ​​such as C, C++, Java, assembler, and the like. Functional aspects may be embodied as algorithms executed by one or more processors. The present embodiments may also employ conventional techniques for electronic configuration, signal processing, and / or data processing. Terms such as "mechanism," "element," "means," and "component" may be used broadly and are not limited to mechanical or physical components. These terms may include a series of software routines in cooperation with a processor or the like.

[0134] The above-described embodiments are merely examples, and other embodiments may be implemented within the scope of the following claims.

Claims

1. 1. A method for providing service-related messages in an electronic device, comprising: receiving a message from a server associated with the service, the message including an identification of an order and information regarding a first status of the order; If the thread in which the message is received satisfies a set condition, checking information about a second status of the order stored in at least one of a memory of the electronic device or a database of the server based on identification information of the order; providing the message based on information regarding a first status of the order and information regarding a second status of the order.

2. The step of providing the message comprises: The method of claim 1 , further comprising: omitting providing the message if the first state is a state preceding the second state or is the same state as the second state.

3. The step of providing the message comprises: The method of claim 1 , further comprising: providing the message when the first state is a state subsequent to the second state.

4. The set conditions are: The message providing method of claim 1 , including a case where the thread in which the message is received corresponds to a server related to a message providing service other than the server.

5. If the first state is a state preceding the second state, The message providing method according to claim 2 , wherein the first state is one of an order accepted state, a delivery person arrival state, and a receipt completed state, and the second state is an order canceled state.

6. If the first state is a state preceding the second state, The first state is an order allocation state, and the second state is one of an order acceptance state, a delivery person arrival state, a receipt completion state, and a delivery completion state; The first state is the order acceptance state, and the second state is one of the delivery person arrival state, the receipt completion state, and the delivery completion state; The first state is the delivery person arrival state, and the second state is either the receipt completion state or the delivery completion state; The method of claim 2 , wherein the first state is the received state and the second state is the delivered state.

7. The message providing method includes: sending a request to the server to confirm whether the first state is the latest state; receiving a response from the server regarding whether the first state is up to date; The method of claim 1 , further comprising: providing the message based on the response.

8. providing the message based on the response, The method of claim 7, further comprising: omitting providing the message if it is determined that the first status is not up-to-date or if it is determined that the order has been assigned to another user.

9. providing the message based on the response, The method of claim 7 , further comprising: providing the message if the first state is confirmed to be the latest state.

10. the first state includes an order allocation state; 2. The method of claim 1, wherein if the server does not obtain a user input regarding whether or not to accept the order within a set time, the server processes the order as if the user has rejected the order.

11. The method of claim 10 , wherein rejections of the order are excluded when calculating acceptance and rejection rates for the user.

12. The message providing method includes: receiving an additional message from the server containing information that the order has been assigned to another delivery person; providing the additional message and omitting providing the message.

13. The message providing method includes: The method of claim 1 , further comprising: activating an application related to the service that is in an inactive state for a set time period upon receiving the message.

14. The information about the second state includes: The method of claim 1 , wherein the message is received from the server through HTTP polling or websocket push and stored in the memory of the electronic device.

15. The method of claim 14, wherein an application related to the service is in an active state when the information about the second state is received from the server.

16. A non-transitory computer-readable recording medium having a program recorded thereon for causing a computer to execute the method of claim 1.

17. 1. An electronic device comprising: The Communications Department and Memory and a controller, the controller comprising: receiving a message from a server associated with the service, the message including an identification of the order and information regarding a first status of the order; If the thread in which the message was received satisfies the set condition, check information about a second status of the order stored in at least one of the memory of the electronic device or the database of the server based on the identification information of the order; An electronic device that provides the message based on information about a first status of the order and information about a second status of the order.

Citation Information

Patent Citations

  • An application programming interface for structuring distributed systems.

    JP2021509193A

  • System and method for interconnecting network devices based on response queuing and servicing - Patent Application 20070122999

    JP2023516512A

  • Systems and methods for interconnecting network devices based on queuing and servicing responses

    US11010707B1