Method and electronic device for providing push notifications

By classifying tokens into valid and invalid groups for targeted notification delivery, the electronic device optimizes user engagement and reduces costs by ensuring only relevant messages are transmitted, addressing inefficiencies in existing push notification systems.

JP2026509037APending Publication Date: 2026-03-17COUPANG CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-04-26
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Existing push notification systems transmit messages to both valid and invalid tokens, leading to reduced user engagement and increased operational costs due to unnecessary message delivery.

Method used

An electronic device classifies token groups into valid and invalid categories based on filtering information, transmitting notifications only to valid tokens, thereby optimizing message delivery and reducing operational load.

Benefits of technology

This approach enhances user engagement by ensuring that only relevant notifications are delivered, thereby improving the view rate of application-related messages and minimizing operational costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026509037000001_ABST
    Figure 2026509037000001_ABST
Patent Text Reader

Abstract

A method for providing push notifications in an electronic device is disclosed. Specifically, the method for providing push notifications may include the steps of: confirming a token group associated with an application; confirming filtering information regarding tokens within the token group; classifying the token group into a valid token group and an invalid token group based on the filtering information; and transmitting a push notification regarding a valid token within the valid token group to a server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of this specification relate to a method for providing push notifications and an electronic device. More specifically, embodiments of this specification relate to a method for transmitting, to a server, a push notification regarding a valid token included in a valid token group among tokens in a token group based on filtering information, and an apparatus related thereto.

Background Art

[0002] A push message can be a short message that is displayed in a pop-up on a desktop browser, a mobile home screen, etc. In particular, by appropriately providing application-related push messages to a user's device periodically, the application-related user experience and the user's application usage time can be significantly improved. When an electronic device related to an application transmits push messages to a plurality of users related to the application, a token corresponding to a device, which is an identifier for distinguishing a plurality of user-specific devices, can be used.

Summary of the Invention

Problems to be Solved by the Invention

[0003] This disclosure is proposed to solve the above-described problems, and is to provide a method for providing push notifications and an apparatus related thereto. The technical problems to be achieved by the present embodiment are not limited to the technical problems as described above, and further technical problems can be inferred from the following embodiments.

Means for Solving the Problems

[0004] As a technical means to achieve the aforementioned objectives, a method for providing push notifications in an electronic device according to the first aspect of this disclosure may include the steps of: identifying a token group associated with an application; identifying filtering information regarding tokens within the token group; classifying the token group into valid token groups and invalid token groups based on the filtering information; and transmitting push notifications regarding valid tokens within the valid token group to a server.

[0005] According to one embodiment, the filtering information includes at least one of first filtering information, second filtering information, and third filtering information, wherein the first filtering information includes the number of times a push notification corresponding to each token was transmitted from the electronic device to the server during a set first period, the second filtering information includes information on whether push notifications related to the application of each device corresponding to the token are permitted, and the third filtering information may include history information of push messages received by the device corresponding to the token during a set second period.

[0006] According to one embodiment, the step of classifying token groups into valid token groups and invalid token groups may include, based on first filtering information, identifying a first token group that includes tokens that satisfy the condition that the number of times push notifications have been transmitted from an electronic device to a server during a set first period is equal to or greater than a set number.

[0007] According to one embodiment, the step of classifying token groups into valid token groups and invalid token groups may include the step of identifying a second token group, based on second filtering information, that contains tokens corresponding to devices to which push notifications related to the application are permitted.

[0008] According to one embodiment, the step of classifying token groups into valid token groups and invalid token groups may include the step of identifying a third token group containing tokens corresponding to devices that received push messages, based on third filtering information.

[0009] According to one embodiment, the steps of classifying a token group into valid token groups and invalid token groups include: identifying the first token group from the token group based on first filtering information; identifying the second token group from the first token group based on second filtering information; and identifying the invalid token group from the second token group based on third filtering information, wherein the valid token group may include tokens within the token group that are not included in the invalid token group.

[0010] According to one embodiment, the step of classifying a token group into valid token groups and invalid token groups may include storing at least one of the following in an invalid token database: invalid tokens within the invalid token group, device identification information corresponding to the invalid tokens, and device-specific operating system information corresponding to the invalid tokens.

[0011] According to one embodiment, a method for providing a push notification may further include the steps of: identifying a first invalid token among invalid tokens in an invalid token group that corresponds to a first device on which the application is running; and changing the first invalid token from the invalid token group to an valid token group.

[0012] According to one embodiment, the second filtering information and the third filtering information may be at least a part of the log data of the device associated with the application.

[0013] According to one embodiment, the push notification includes information about the valid token and information about the operating system for each valid token, and the server may be a proxy server that transmits information about the valid token to the operating system corresponding to the valid token based on the information about the operating system for each valid token.

[0014] An electronic device for providing push notifications according to the second aspect of this disclosure includes a transceiver; one or more processors; and storage for storing one or more instructions executed by the one or more processors, the one or more processors by executing one or more instructions to verify a token group associated with an application, verify filtering information regarding tokens within the token group, classify the token group into a valid token group and an invalid token group, and transmit a push notification to a server regarding a valid token within the valid token group.

[0015] A recording medium according to the third aspect of this disclosure may be a computer-readable non-temporary recording medium containing a program for causing a computer to perform a method performed by an electronic device. [Effects of the Invention]

[0016] According to embodiments of this specification, an electronic device can classify token groups into valid token groups containing valid tokens and invalid token groups containing invalid tokens, based on filtering information. The electronic device can transmit only push notifications concerning valid tokens within the valid token group to the server. That is, by not transmitting push notifications concerning invalid tokens within the invalid token group to the server, the electronic device can improve the view rate of users of application-related devices to check push messages.

[0017] The effects of the invention are not limited to those mentioned above, and any further effects not mentioned should be clearly understood by those skilled in the art from the description of the claims. [Brief explanation of the drawing]

[0018] [Figure 1] This diagram illustrates a system in which various embodiments of electronic devices can provide push notifications. [Figure 2] This diagram provides a more detailed explanation of a system in which a method for electronic devices to provide push notifications in various embodiments can be realized. [Figure 3] This is a flowchart illustrating how electronic devices provide push notifications. [Figure 4] This flowchart illustrates how an electronic device according to one embodiment classifies tokens within a token group into invalid token groups and valid token groups based on filtering information. [Figure 5] This flowchart illustrates how an electronic device reclassifies at least some of the invalid tokens within an invalid token group into a valid token group. [Figure 6] This is a block diagram illustrating an electronic device for providing push notifications according to one embodiment. [Modes for carrying out the invention]

[0019] The terminology used in the embodiments has been selected, to the extent possible, to be widely used and common terminology, taking into account the function described herein, although this may change depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. In certain cases, the applicant has arbitrarily selected some terms, in which case their meanings will be described in detail in the relevant explanatory sections. Therefore, the terminology used in this disclosure must be defined not merely as names of terms, but based on the meaning of the term and the overall content of this disclosure.

[0020] Throughout the specification, when a part states that a certain component "includes" something, this means that, unless otherwise stated to the contrary, it does not exclude other components and may further include other components. Also, terms such as "… part" and "… module" described in the specification mean units that process at least one function or operation, and these can be implemented in hardware or software, or in a combination of hardware and software.

[0021] The expression "at least one of a, b, and c" described throughout the specification can include "a alone", "b alone", "c alone", "a and b", "a and c", "b and c", or "all of a, b, c".

[0022] The "terminal" mentioned below can be implemented as a computer or a portable terminal that can connect to a server or other terminals through a network. Here, the computer can include, for example, a notebook computer, a desktop, a laptop, etc. equipped with a web browser (WEB Browser), and the portable terminal can include, for example, a wireless communication device that guarantees portability and mobility, including all types of handheld-based wireless communication devices such as communication base terminals like IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), LTE (Long Term Evolution), smartphones, tablet PCs, etc.

[0023] Hereinafter, with reference to the accompanying drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art to which the present disclosure pertains can easily implement them. However, the present disclosure can be embodied in several different forms and is not limited to the embodiments described herein.

[0024] In describing the embodiments, technical content that is widely known in the art to which the present invention belongs and is not directly related to the present invention will be omitted. This is to convey the gist of the present invention more clearly without obscuring it by omitting unnecessary explanations.

[0025] For similar reasons, some components in the attached drawings are exaggerated, omitted, or shown schematically. Furthermore, the dimensions of each component do not fully reflect their actual size. In each drawing, identical or corresponding components are given the same reference number.

[0026] The advantages and features of the present invention, and the methods for achieving them, should become clear by referring to the embodiments described in detail below with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and can be embodied in a variety of different forms, and these embodiments are provided merely to complete the disclosure of the present invention and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined only by the scope of the claims. The same reference numerals throughout the specification refer to the same components.

[0027] At this point, it should be understood that each block of the processing flowchart and the combination of the flowchart can be performed by computer program instructions. Since these computer program instructions can be implemented in the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, the instructions, performed through the processor of the computer or other programmable data processing equipment, will generate means for performing the functions described in the flowchart blocks(et). Since these computer program instructions can also be stored in computer-available or computer-readable memory that can be directed to the computer or other programmable data processing equipment in order to embody the functions in a particular manner, the instructions stored in that computer-available or computer-readable memory can also produce manufactured items that contain instruction means for performing the functions described in the flowchart blocks(et). Since computer program instructions can also be implemented on a computer or other programmable data processing equipment, a series of operational steps can be performed on the computer or other programmable data processing equipment to generate a process to be executed on the computer, and instructions to perform on the computer or other programmable data processing equipment can also provide steps for performing the functions described in the flowchart blocks(et).

[0028] Furthermore, each block may represent a module, segment, or portion of code containing one or more executable instructions for performing a specified logical function. It should also be noted that in some alternative execution examples, the functions mentioned in a block may occur out of order. For example, two blocks illustrated successively may actually be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order by the functions in question.

[0029] Embodiments of the present invention will be described in detail below with reference to the accompanying drawings.

[0030] Figure 1 is a diagram illustrating a system in which various embodiments of electronic devices can provide push notifications.

[0031] Referring to Figure 1, the push notification-related system 10 in various embodiments can be embodied by various types of devices. For example, the system 10 may include an electronic device 100 and a server 110. The system 10 shown in Figure 1 only illustrates the components relevant to this embodiment. Therefore, those skilled in the art related to this embodiment will understand that other general-purpose components may be included in addition to those shown in Figure 1.

[0032] Each of the electronic device 100 and the server 110 may include a transceiver, storage, and a processor. Furthermore, each of the electronic device 100 and the server 110 represents a unit that processes at least one function or operation, which can be embodied in hardware, software, or a combination of hardware and software. On the other hand, throughout the embodiments, each of the electronic device 100 and the server 110 is referred to as a separate device or server, which can be a logically separated structure, with at least a portion of these embodied by a function separated from a single device or server.

[0033] According to one embodiment, the electronic device 100 and server 110 may include a plurality of computer systems or computer software that are embodied in a network server. For example, at least a portion of the electronic device 100 and server 110 may refer to computer systems and computer software that are connected to subordinate devices that can communicate with other network servers through a computer network such as an intranet or the internet, receive work requests, perform the work in response to them, and provide the results. In addition, at least a portion of the electronic device 100 and server 110 may be understood as a broader concept that includes a set of application programs that can run on the network server and various databases built internally or on other connected nodes. For example, at least a portion of the electronic device 100 and server 110 may be embodied using network server programs that are provided in various ways by operating systems such as DOS, Windows, Linux®, UNIX®, or MacOS.

[0034] The electronic device 100 and the server 110 can communicate with each other via a network (not shown). The network is a comprehensive data communication network that includes local area networks (LANs), wide area networks (WANs), value-added networks (VANs), mobile radio communication networks, satellite communication networks, and combinations thereof, enabling each network component shown in Figure 1 to communicate smoothly with each other, and may include wired internet, wireless internet, and mobile wireless communication networks. Wireless communication may include, but is not limited to, wireless LAN (Wi-Fi), Bluetooth (registered trademark, same hereinafter), Bluetooth low energy, Zigbee, WFD (Wi-Fi Direct), UWB (ultra wideband), infrared communication (IrDA, infrared Data Association), NFC (Near Field Communication), etc.

[0035] According to one embodiment, the electronic device 100 can verify a token group related to an application, verify filtering information regarding tokens within the token group, classify the token group into a valid token group and an invalid token group, and transmit a push notification regarding valid tokens within the valid token group to the server 110.

[0036] Here, the electronic device 100 is an application server that manages application-related services and may be an application server that hosts applications or software through a communication protocol. The electronic device may be a provider that transmits push notifications and may be an application-related backend server.

[0037] A token is a unique address used by the operating system to correctly send push messages to a user's device, and can be a set number of string values. For example, a token can be called a device token and may consist of 64 hexadecimal characters. More specifically, a token can be a unique key individually assigned to a device associated with an application by the operating system's push notification gateway or push notification service. For example, a token can be an identifier used to identify a corresponding device among several devices associated with an application. In addition, a token can be an identifier for the device itself, and the tokens for multiple applications installed on a device may all be the same. The token associated with the application and the device may be regenerated when the user installs an application on the device, the user restores the device, the user reinstalls the operating system, or other system-defined events occur.

[0038] A token group can contain tokens that are candidates for sending push notifications related to an application. More specifically, while push notifications may be sent at application-specific times, a token group can contain daily push tokens corresponding to daily push notifications that are sent every day.

[0039] However, if a user logs out of the application, deletes the application, or does not use the application for a set period of time, even if application-related push messages are provided to the user's device, the probability of the push messages being seen through the device may be low. Furthermore, providing push notifications on the electronic device 100 may actually detract from the user's experience. Therefore, the application-related electronic device 100 may need to divide token groups into valid token groups to which push notifications are transmitted and invalid token groups to which push notifications are not transmitted, based on filtering information.

[0040] Filtering information is data acquired during the process of transmitting push notifications related to an application and can be used to classify token groups into valid token groups and invalid token groups. More specifically, filtering information may include not only first filtering information acquired when electronic device 100 transmits push notifications to server 110, but also second filtering information and third filtering information. The first filtering information may include the number of times a push notification corresponding to each token was transmitted from electronic device 100 to server 110 during a set first period. The second filtering information may include information regarding whether push notifications related to the application of each device corresponding to a token are permitted. The third filtering information may include history information of push messages received by devices corresponding to tokens during a set second period. The second and third filtering information may be at least part of the log data of the device related to the application.

[0041] Server 110 is a proxy server that can transmit information about the token to the operating system corresponding to the token based on a push notification received from the electronic device 100. Server 110 can perform the role of relaying the push notification to the operating system corresponding to the token.

[0042] Figure 2 is a diagram illustrating in more detail a system in which a method by which an electronic device provides push notifications in various embodiments can be realized.

[0043] The push notification-related system 10 may further include not only the electronic device 100 and the server 110, but also an operating system, a user device, a log data-related database, and a platform. System 10 according to one embodiment may include the electronic device 100, the server 110, a first operating system 201, a second operating system 202, a first device 211, a second device 212, a first log DB 221, a second log DB 222, a first platform 231, and a second platform 232.

[0044] According to one embodiment, when an application is installed on a user's device and a system-defined event occurs, the user's device can transmit a token generation-related request to a push notification service within the operating system. The push notification service can generate a token to identify the device's application based on information present in the device's certificate. The push notification service can encrypt the generated token using a token key and then transmit it to the user's device in a response. Here, the information regarding the encrypted token may be a value in Nsdata format. The device can transmit identification information about the device and information regarding the token to the electronic device 100. Here, the identification information about the device may be a PCID, which is the device identifier. The information regarding the token may be information regarding the token encrypted by the push notification service. Referring to Figure 2, the electronic device 100 can receive identification information about the first device 211 and information regarding the first token from the first device 211. The electronic device 100 can also receive identification information about the second device 212 and information regarding the second token from the second device 212. That is, the electronic device 100 can receive information regarding a token to identify the device's application from the device on which the application is installed.

[0045] According to one embodiment, the electronic device 100 can classify token groups into valid token groups and invalid token groups based on filtering information. More specifically, the processor 103 of the electronic device 100 can classify token groups into valid token groups and invalid token groups based on filtering information.

[0046] For example, the electronic device 100 can store information related to invalid tokens included in the invalid token group within the token group in the invalid token DB. For example, the information related to invalid tokens may include at least one of the following: the invalid token, the identification information of the device corresponding to the invalid token, and information about the operating system for each device corresponding to the invalid token. Here, the device identification information may be a PCID, which is a device identifier used as device identification information in addition to the token.

[0047] Furthermore, the electronic device 100 can transmit push notifications to the server 110 regarding tokens within the valid token group, excluding tokens stored in the invalid token database. More specifically, the electronic device 100 can transmit valid tokens and data related to valid tokens to the server 110 via the transceiver 101. Here, valid token-related data may be stored in a payload, and the payload related to the push notification may include information about the push message to be transmitted to the device corresponding to the valid token. For example, the information about the push message may be, but is not limited to, an application-related notification message or an advertising message.

[0048] By transmitting only push notifications regarding valid tokens to the server 110, the electronic device 100 can significantly increase the percentage of users who check push messages through their devices compared to transmitting push notifications regarding invalid tokens to the server 110 as well. This allows the electronic device 100 to optimize the costs required to transmit push notifications. Furthermore, by transmitting only push notifications regarding valid tokens to the server 110, the electronic device 100 can minimize its load. In addition, by classifying tokens into valid and invalid tokens in the application-related electronic device 100 rather than the operating system, decision-making regarding application-related promotions can be made more efficiently by utilizing the classified information.

[0049] According to one embodiment, when the electronic device 100 transmits a push notification to the server 110, it can update the number of times a push notification regarding the token has been transmitted to the server 110 during a set first period. That is, when the electronic device 100 transmits a push notification to the server 110, it can update the first filtering information stored in the storage 102 of the electronic device 100.

[0050] According to one embodiment, since the device associated with the application may be operated on a variety of operating systems, the server 110 needs to transmit the received push notification to the operating system of the device corresponding to the token. In this regard, the data structure of the token generated for each operating system (e.g., the length of the token) may differ. Alternatively, the push notification may further include information about the operating system of the device corresponding to the token. This allows the server 110 to identify the operating system corresponding to the token based on the information about the token's data structure or the operating system, and to transmit the token and token-related data to the identified operating system. For example, the server 110 can transmit a first push notification regarding a first token to a first operating system 201. The server 110 can also transmit a second push notification regarding a second token to a second operating system 202.

[0051] According to one embodiment, the operating system may include a push notification service. For example, the push notification-related service may include APNS (Apple Push Notification Service) or FCM (Firebase Cloud Messaging). The operating system can transmit received push notifications to the push notification service within the operating system. This allows the push notification service to decrypt the token through the token key corresponding to the token. The token key used to decrypt the token may be a private key. For example, when the push notification service decrypts the token using the token key, the push notification service may determine a server response code of 200 and transmit a response to the operating system indicating that the processing was successful. This allows the operating system to confirm that the decrypted token is a valid token. Conversely, when a system error occurs, such as when the push notification service cannot decrypt the token using the token key, the push notification service may determine a server response code of 400 and transmit a response to the operating system indicating that an error occurred.

[0052] According to one embodiment, the operating system can determine which device corresponds to a token that has been successfully processed among the valid tokens in the valid token group is the target of the final transmission of the push message. The operating system can transmit a push message containing the token and data associated with the token to the device corresponding to the token. For example, the first operating system 201 can transmit a first push message to the first device 211 corresponding to the first token. The second operating system 202 can transmit a second push message to the second device 212 corresponding to the second token.

[0053] According to one embodiment, a device that receives a push message can transmit identification information about the device and log data related to the push message to a log DB that stores log data. Here, the log data related to the push message may include history information of when the device received the push message. For example, a first device 211 of a first operating system 201 can transmit first log data, including identification information about the first device 211 and history information of when it received the first push message, to a first log DB 221. Also, for example, a first device 212 of a second operating system 202 can transmit second log data, including identification information about the first device 212 and history information of when it received the second push message, to a second log DB 222.

[0054] According to one embodiment, identification information about a device and log data related to push messages can be transmitted to the electronic device 100 via a platform. Here, the platform is an application monitoring platform and may be a logging system platform. The application monitoring platform may be, but is not limited to, a lumberjack platform. For example, the platform can transmit log data to the application-related electronic device 100. Referring to Figure 2, the first platform 231 can transmit identification information about the first device 211 and first log data obtained from the first log DB 221 to the electronic device 100. The second platform 232 can transmit identification information about the second device 212 and second log data obtained from the second log DB 222 to the electronic device 100.

[0055] Figure 3 is a flowchart illustrating how an electronic device provides push notifications.

[0056] Referring to Figure 3, it is obvious that each operation in which the electronic device 100 provides a push notification may be modified, replaced, or have some of its operations changed, to the extent that is clearly understood by those skilled in the art to which the present invention belongs.

[0057] In step S310, the electronic device can identify the token group associated with the application.

[0058] According to one embodiment, the electronic device 100 can identify a token group consisting of tokens that are candidates for transmitting push notifications related to an application. When an application is installed on a user's device, the user's device can transmit a token generation-related request to the push notification service within the operating system. The push notification service can encrypt the generated token using the token key and then transmit it to the user's device. The device that receives the token can transmit identification information about the device and information about the token to the electronic device 100. At this time, the token group stored in the storage 102 of the electronic device 100 may be updated to include the received token.

[0059] In step S320, the electronic device can verify filtering information relating to the tokens in the token group. The filtering information may include at least one of the first filtering information, the second filtering information, and the third filtering information.

[0060] For example, the first filtering information may include the number of times a push notification corresponding to each token was transmitted from the electronic device 100 to the server 110 during the configured first period. For example, when the electronic device 100 transmits a push notification to the server 110, it can update the number of times a push notification regarding a token was transmitted to the server 110 during the configured first period. This allows the first filtering information to be updated based on the transmitted push notifications before the electronic device 100 next performs the operation of classifying the token group into invalid token groups and valid token groups. The configured first period may be, but is not limited to, seven days.

[0061] The second filtering information may include information regarding whether push notifications are allowed for each device corresponding to the token and its application. For example, when an application is installed on a device, the device user can choose whether or not to allow push notifications. If the device user does not allow push notifications, the electronic device 100 may not receive the token corresponding to the device, and the electronic device 100 may not provide push notifications corresponding to the device. Conversely, if the device user allows push notifications, the electronic device 100 can receive a token from the user's device. That is, the electronic device 100 receiving a token from the user's device can mean that the device user has allowed push notifications. In another example, if the device user allows push notifications, the electronic device 100 may also receive a signal from the user's device regarding the allowance of push notifications. In other words, the electronic device 100 can obtain information regarding the allowance of push notifications related to the application in a variety of ways.

[0062] The third filtering information may include historical information about when a device corresponding to a token received a push message during a configured second period. More specifically, the electronic device 100 can receive identification information and log data about the device stored in the log DB via the platform of the logging system infrastructure. Here, the log data may correspond to push messages and information about the history of when a device received a push message.

[0063] In step S330, the electronic device can classify the token group into a valid token group and an invalid token group based on the filtering information.

[0064] According to one embodiment, the electronic device 100 can classify token groups into valid token groups or invalid token groups based on at least one of the first filtering information, second filtering information, and third filtering information. The electronic device 100 can periodically update the valid and invalid token groups by classifying the token groups into valid and invalid token groups periodically at set times based on the filtering information. For example, the electronic device 100 can classify token groups into valid and invalid token groups based on the filtering information at 10 p.m. every day, but is not limited to this.

[0065] An embodiment in which the electronic device 100 classifies token groups into valid token groups or invalid token groups based on filtering information will be examined in detail in Figure 4.

[0066] In step S340, the electronic device can transmit a push notification to the server regarding the valid tokens within the valid token group.

[0067] For example, the electronic device 100 can store information related to invalid tokens included in the invalid token group within the token group in an invalid token database. Here, the information related to invalid tokens may include at least one of the following: the invalid token, identification information of the device corresponding to the invalid token, and information about the operating system for each device corresponding to the invalid token.

[0068] Furthermore, the electronic device 100 can transmit push notifications to the server 110 regarding valid tokens within the valid token group, excluding invalid tokens stored in the invalid token database. More specifically, the electronic device 100 can transmit tokens and token-related data to the server 110 via the transceiver 101. Here, token-related data may be stored in a payload, and the payload related to the push notification may include information about the push message to be transmitted to the device corresponding to the token. Here, the server 110 is a proxy server that can transmit information about the token to the corresponding operating system based on the push notification received from the electronic device 100.

[0069] Figure 4 is a flowchart illustrating how an electronic device according to one embodiment classifies tokens within a token group into invalid token groups and valid token groups based on filtering information.

[0070] In step S400, the electronic device 1000 can verify the tokens within the token group.

[0071] According to one embodiment, the electronic device 100 can first verify the tokens within a token group before classifying them into invalid token groups and valid token groups. More specifically, the electronic device 100 can verify the updated tokens in the token group by adding tokens received before a predetermined time each day (e.g., 10 p.m.). The operation by the electronic device 100 to classify the token group into invalid token groups and valid token groups may be performed at a predetermined time each day (e.g., 10 p.m.).

[0072] In step S410, the electronic device 100 can determine, based on the first filtering information, whether the condition that the number of times a push notification has been transmitted from the electronic device 100 to the server 110 is equal to or greater than the set number is met.

[0073] According to one embodiment, the electronic device 100 can determine whether the number of times each token in the token group has been transmitted from the electronic device 100 to the server 110 during the first period in which push notifications are set is equal to or greater than a set number.

[0074] Here, the configured first period and the configured number of times must be set appropriately, taking into account the characteristics of the application, the frequency of push notifications, and technical issues such as the inability of the electronic device 100 to provide push notifications due to network problems. In particular, when the token group consists of daily push tokens, the value of the configured first period versus the configured number of times must be set relatively large. For example, for a token group containing daily push tokens, the configured first period may be one week and the configured number of times may be three, but is not limited to this.

[0075] For example, based on first filtering information, the electronic device 100 can identify tokens that satisfy the condition that the number of times a push notification has been transmitted from the electronic device 100 to the server 110 is equal to or greater than a set number, and can identify a first token group composed of the identified tokens. Tokens in the first token group may be tokens that are subject to the operation of step S420. Tokens included in the first token group can satisfy the condition that a push notification has been transmitted a set number of times or more during the first period in which it is set. For example, tokens included in the first token group may be tokens that satisfy the condition that a push notification has been transmitted three or more times in a week.

[0076] Furthermore, for example, based on the first filtering information, the electronic device 100 can identify tokens that do not satisfy the condition that the number of times a push notification has been transmitted from the electronic device 100 to the server 110 is equal to or greater than a set number, and classify the tokens into the valid token group (step S440). In other words, tokens classified into the valid token group may not satisfy the condition that the push notification has been transmitted a set number of times or more during the first period in which it is set. For example, a token classified into the valid token group may be a token that does not satisfy the condition that the push notification has been transmitted three or more times in a week.

[0077] In step S420, the electronic device 100 can determine whether or not the push notification was permitted based on the second filtering information.

[0078] According to one embodiment, the electronic device 100 can identify whether a push notification is permitted for each token in a first token group, based on second filtering information. Here, the second filtering information may include information regarding the permission of push notifications related to the application of each device corresponding to the token. For example, when an application is installed on a device, the device user can set whether or not to allow push notifications. If the device user allows push notifications, the electronic device 100 can receive a token from the user's device. That is, the electronic device 100 receiving a token from the user's device can mean that the device user has allowed push notifications. According to another example, in response to the device user allowing push notifications, the electronic device 100 can receive a signal from the user's device regarding the permission of push notifications.

[0079] For example, the electronic device 100 can identify a second token group, which includes tokens corresponding to devices that are allowed to receive application-related push notifications, based on the second filtering information. Tokens in the second token group may be tokens that are subject to the operation of step S430. The second token group may consist of tokens that satisfy both the condition that the push notification was transmitted at least a set number of times during the first period in which the push notification was set, and the condition that the device is allowed to receive application-related push notifications. For example, a token included in the second token group may satisfy both the condition that the push notification was transmitted at least three times in a week, and the condition that the device is allowed to receive application-related push notifications.

[0080] Furthermore, for example, the electronic device 100 can classify tokens corresponding to devices for which application-related push notifications are not permitted into a valid token group based on the second filtering information (step S440). That is, tokens within the valid token group may include tokens corresponding to devices for which application-related push notifications are not permitted.

[0081] In step S430, the electronic device 100 can identify, based on the third filtering information, whether or not the push message is a token corresponding to the device that received it.

[0082] According to one embodiment, the electronic device 100 can identify, based on third filtering information, whether each token in the second token group corresponds to the token of the device that received the push message.

[0083] Even if the electronic device 100 transmits a push notification regarding a valid token to the server 110, policy and technical reasons may arise, such as the valid token being classified as an invalid token by an internal process of the operating system, or an error occurring in the transmission of the push message from the operating system to the device corresponding to the valid token. As a result, the device corresponding to the valid token may not receive the push message. In this regard, the electronic device 100 can confirm whether the device has received the push message by receiving push message-related history data via the logging system infrastructure platform. In this regard, the third filtering information may include history information of when the device corresponding to the token received a push message during the configured second period. Here, the configured second period may, but is not limited to, the first period in step S410.

[0084] For example, based on the third filtering information, the electronic device 100 can classify the tokens in the second token group that correspond to devices that received push messages within a set second period into an active token group (step S440). Here, the tokens in the second token group that correspond to devices that received push messages within a set second period may be a third token group, which is a subgroup within the active token group.

[0085] Furthermore, for example, based on the third filtering information, the electronic device 100 can classify tokens in the second token group into an invalid token group, excluding tokens corresponding to devices that received push messages within a set second period (step S450). If the electronic device 100 has transmitted push notifications regarding tokens to the server 110 several times, but there is no history of a device corresponding to the token receiving a push message, the push notification may be deemed unnecessary and may need to be filtered. In this regard, tokens included in the invalid token group may consist of tokens that do not satisfy the conditions that push notifications were transmitted three or more times in a week, that satisfy the conditions regarding whether the device is allowed to receive application-related push notifications, and that do not satisfy the conditions that the token corresponds to a device that received a push message.

[0086] In step S460, the electronic device 100 can store information about the tokens in the invalid token group in the invalid token DB.

[0087] According to one embodiment, the electronic device 100 can store at least one of the following in the invalid token DB: invalid tokens in an invalid token group, device identification information corresponding to an invalid token, and information about a device-specific operating system corresponding to an invalid token. Information about tokens in an invalid token group may include at least one of the following: invalid tokens in an invalid token group, device identification information corresponding to an invalid token, and information about a device-specific operating system corresponding to an invalid token.

[0088] According to one embodiment, the electronic device 100 can transmit tokens classified into invalid token groups to a distributed data streaming platform. Here, the distributed data streaming platform is a distributed data streaming platform in which a publisher that transmits messages and a consumer that receives messages are distinguished, and may be Kafka according to one embodiment. More specifically, the electronic device 100 can store the tokens included in the invalid token group, the identification information of the device corresponding to the token, and information about the operating system of the device corresponding to the token in a token-specific Kafka topic. Furthermore, the customer account API within the electronic device 100 is a Kafka consumer and can subscribe to or read the tokens, the identification information of the device corresponding to the token, and the information about the operating system of the device corresponding to the token stored in the Kafka topic. As a result, the customer account API can store the tokens, the identification information of the device corresponding to the token, and the information about the operating system of the device corresponding to the token in the invalid token DB in the storage 102 of the electronic device 100.

[0089] Referring to Figure 4, it is obvious that, in each operation of the electronic device 100 classifying tokens within a token group into invalid token groups and valid token groups based on filtering information, some operations may be modified, replaced, or some order of operations may be changed, to the extent that is clearly understood by those skilled in the art to which the present invention belongs. In this regard, in order to minimize the amount of computation consumed in the electronic device 100 for classifying token groups into invalid token groups and valid token groups based on filtering information, it may be appropriate to place filtering conditions with a higher filtering rate earlier in the order of multiple filtering conditions. For example, identifying the first token group from a token group based on first filtering information may be a filtering condition with a high filtering rate. That is, when the electronic device 100 identifies the first token group from a token group based on first filtering information, identifies the second token group from the first token group based on second filtering information, and identifies the invalid token group from the second token group based on third filtering information, the amount of computation consumed in classifying token groups into valid token groups and invalid token groups may be the smallest. A valid token group may consist of tokens within a token group that are not included in an invalid token group.

[0090] Figure 5 is a flowchart illustrating how an electronic device reclassifies at least some of the invalid tokens within an invalid token group into a valid token group.

[0091] Some tokens classified as invalid tokens need to be reclassified as valid tokens within the valid token group. For example, a token may need to be reclassified as a valid token if 1) a token is misclassified as an invalid token, or 2) a token is classified as an invalid token, but an action related to the application on the device corresponds to a trigger point defined in the system. In particular, if the push notification service in the operating system has not regenerated a token corresponding to the device, the electronic device 100 needs to reuse tokens stored in the invalid token database to transmit push messages to the server 110.

[0092] In step S510, the electronic device can identify the first invalid token among the invalid tokens in the invalid token group that corresponds to the first device on which the application was executed.

[0093] According to one embodiment, a trigger point defined in the system may be the execution of an application. In this regard, the electronic device 100 can identify a first invalid token from among the invalid tokens in the invalid token group that corresponds to the first device on which the application was executed. More specifically, when an application is executed on the first device, the first device can transmit to the electronic device 100 information that the application has been executed and the first invalid token corresponding to the first device, and the electronic device 100 can identify the first invalid token. However, a trigger point defined in the system is not limited to the execution of an application. For example, a trigger point may be an update of an application.

[0094] In step S520, the electronic device can change the first invalid token from the invalid token group to the valid token group.

[0095] According to one embodiment, the electronic device 100 can change the first invalid token from the invalid token group to the valid token group by deleting the first invalid token from the invalid token database. As a result, when the electronic device 100 transmits a push notification regarding a valid token in the valid token group to the server 110, a push notification regarding the first invalid token can also be transmitted to the server 110.

[0096] Figure 6 is a block diagram illustrating an electronic device for providing push notifications according to one embodiment.

[0097] The electronic device 100 in Figure 6 may correspond to the electronic device of this specification. In one embodiment, the electronic device 100 may include a transceiver 101, storage 102, and one or more processors 103. The electronic device 100 shown in Figure 6 only illustrates components relevant to this embodiment. Therefore, a person skilled in the art related to this embodiment will understand that other general-purpose components may be included in addition to those shown in Figure 6.

[0098] For example, in one embodiment, the electronic device 100 may include a transceiver 101. The transceiver 101 is a device for performing wired / wireless communication and can communicate with an external electronic device. The external electronic device may be a server 110, an operating system, a device, a log database, or a platform. The communication technologies used by the transceiver 101 may 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, and NFC (near field communication).

[0099] In one embodiment, the transceiver 101 can receive information about tokens corresponding to the device and information about the device from a device on which the application is installed. The transceiver 101 can also transmit a push notification regarding a valid token to the server 110.

[0100] The storage 102 can store information for carrying out at least one of the methods described above through Figures 1 to 6. The storage 102 can store one or more instructions executed by one or more processors 103. The storage 102 can be called memory and may be volatile memory or non-volatile memory. The storage 102 can store token groups associated with the application and filtering information about tokens within the token groups. The storage 102 can store log data received from application-related devices.

[0101] One or more processors 103 can control the overall operation of the electronic device 100 and process data and signals. One or more processors 103 can perform one of the methods described above through Figures 1 to 6. One or more processors 103 may consist of at least one hardware unit. Alternatively, one or more processors 103 can operate by one or more software modules generated by executing one or more instructions stored in the storage 102. One or more processors 103 can control embodiments performed by the electronic device 100 through interaction with the transceiver 1910 and the storage 102, and further with components that the electronic device 100 may further include.

[0102] According to one embodiment, the processor 103 can identify a first token group that includes tokens that satisfy the condition that the number of times is greater than or equal to a set number, based on first filtering information, by executing one or more instructions.

[0103] According to one embodiment, the processor 103 can identify a second token group, which includes tokens corresponding to devices that are allowed to receive push notifications related to the application, by executing one or more instructions, based on the second filtering information.

[0104] According to one embodiment, the processor 103 can identify a third token group, which includes a token corresponding to a device that received a push message, based on third filtering information, by executing one or more instructions.

[0105] According to one embodiment, the processor 103 can, by executing one or more instructions, identify a first token group from a token group based on first filtering information, identify a second token group from the first token group based on second filtering information, and identify an invalid token group from the second token group based on third filtering information.

[0106] According to one embodiment, the processor 103 can store at least one of the following in the invalid token database by executing one or more instructions: invalid tokens in an invalid token group, device identification information corresponding to an invalid token, and device-specific operating system information corresponding to an invalid token.

[0107] According to one embodiment, the processor 103 can, by executing one or more instructions, identify a first invalid token among the invalid tokens in the invalid token group that corresponds to the first device on which the application is executed, and change the first invalid token from the invalid token group to the valid token group.

[0108] On the other hand, while this specification and drawings disclose preferred embodiments of the present invention, any specific terms used are merely general in nature to facilitate the explanation of the technical content of the invention and to aid in its understanding, and are not intended to limit the scope of the invention. It will be obvious to those skilled in the art to which the present invention pertains that other modifications based on the technical idea of ​​the present invention are also possible, in addition to the embodiments disclosed herein.

[0109] The electronic device or terminal according to the embodiments described above 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, and icons. Methods embodied in software modules or algorithms may be stored on a computer-readable recording medium as computer-readable code or program instructions executable on the aforementioned processor. Examples of computer-readable recording media include magnetic storage media (e.g., ROM (read-only memory), RAM (random-access memory), floppy disks, hard disks, etc.) and optical reading media (e.g., CD-ROM, DVD (Digital Versatile Disc)). Computer-readable recording media may be distributed across a network of computer systems, allowing computer-readable code to be stored and executed in a distributed manner. The medium is computer-readable, can be stored in memory, and can be executed on a processor.

[0110] This embodiment may be represented by a functional block configuration and various processing stages. Such a functional block may be embodied by a variety of hardware and / or software configurations that perform a particular function. For example, the embodiment may employ an integrated circuit configuration such as memory, processing, logic, look-up tables, etc., which can perform a variety of functions under the control of one or more microprocessors or other control devices. Just as the components may be executed by software programming or software elements, this embodiment may be embodied in a programming or scripting language such as C, C++, Java, assembler, Python, etc., including a variety of algorithms embodied in a combination of data structures, processes, routines, or other programming configurations. The functional aspects may be embodied in algorithms executed on one or more processors. Furthermore, this embodiment may employ prior art for electronic environment configuration, signal processing, and / or data processing, etc. Terms such as “mechanism,” “element,” “means,” and “configuration” can be used broadly and are not limited to mechanical and physical configurations. The aforementioned terms may also include the meaning of a series of software processes (routines) in conjunction with a processor, etc.

[0111] The embodiments described above are merely examples, and other embodiments may be embodied within the scope of the claims described later.

Claims

1. A method for providing push notifications in an electronic device, The step of verifying the token group associated with the application, The step of checking the filtering information regarding the tokens within the aforementioned token group, A step of classifying the token group into a valid token group and an invalid token group based on the filtering information, The process includes the step of transmitting a push notification to the server regarding an active token within the active token group, How to provide push notifications.

2. The filtering information mentioned above is It includes at least one of the first filtering information, the second filtering information, and the third filtering information, and The first filtering information is, This includes the number of times a push notification corresponding to each of the tokens was transmitted from the electronic device to the server during the configured first period. The second filtering information is, This includes information regarding whether push notifications related to the application are allowed for each device corresponding to the token, and The third filtering information is, This includes historical information of push messages received by the device corresponding to the token during the configured second period, A method for providing a push notification as described in claim 1.

3. The step of classifying the token group into the valid token group and the invalid token group is: The process includes identifying a first token group based on the first filtering information, which includes a token that satisfies the condition that the number of times is equal to or greater than a set number. A method for providing push notifications according to claim 2.

4. The step of classifying the token group into the valid token group and the invalid token group is: The process includes the step of identifying a second token group, which includes tokens corresponding to devices that are allowed to receive push notifications related to the application, based on the second filtering information. A method for providing push notifications according to claim 2.

5. The step of classifying the token group into the valid token group and the invalid token group is: The process includes the step of identifying a third token group, which includes a token corresponding to a device that received a push message, based on the third filtering information, A method for providing push notifications according to claim 2.

6. The step of classifying the token group into the valid token group and the invalid token group is: A step of identifying a first token group from the token group based on the first filtering information, A step of identifying the second token group from the first token group based on the second filtering information, The process includes the step of identifying an invalid token group from the second token group based on the third filtering information, The aforementioned valid token group is Among the tokens in the aforementioned token group, including tokens that are not included in the aforementioned invalid token group, A method for providing push notifications according to claim 2.

7. The step of classifying the token group into the valid token group and the invalid token group is: The step includes storing at least one of the following in an invalid token database: invalid tokens within the invalid token group, device identification information corresponding to the invalid token, and device-specific operating system information corresponding to the invalid token. A method for providing a push notification as described in claim 1.

8. The steps include identifying the first invalid token among the invalid tokens in the invalid token group that corresponds to the first device on which the application was executed, The step of changing the first invalid token from the invalid token group to the valid token group further includes: A method for providing push notifications according to claim 7.

9. The second filtering information and the third filtering information are, At least a portion of the log data of the device related to the aforementioned application, A method for providing push notifications according to claim 2.

10. The aforementioned push notification is This includes information regarding the valid token and information regarding the operating system for each valid token, and The aforementioned server, Based on the information about the operating system for each valid token, the operating system corresponding to the valid token is a proxy server that transmits information about the valid token. A method for providing a push notification as described in claim 1.

11. An electronic device for providing push notifications, A walkie-talkie and One or more processors, Includes storage for storing one or more instructions executed by the one or more processors, The one or more processors execute the one or more instructions, Check the token group associated with the application. Check the filtering information regarding the tokens within the aforementioned token group. Based on the filtering information, the token group is classified into a valid token group and an invalid token group, and A push notification regarding the valid tokens within the valid token group is transmitted to the server. An electronic device for providing push notifications.

12. A computer-readable non-temporary recording medium that stores a program for causing a computer to execute the method of claim 1.