Article donation system, article donation method, device, equipment and medium
By identifying donation needs in the live stream, automatically matching donated items and storing donation records, the problem of cumbersome and wasteful online donation processes has been solved, achieving an efficient and transparent donation process.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2020-04-28
- Publication Date
- 2026-06-16
AI Technical Summary
In existing technologies, the online donation process is cumbersome and prone to waste due to the different needs of the recipients.
By identifying donation demand information in the live stream, the information recognition model automatically matches the donation index information and searches for donations on the e-commerce platform. After the recipient confirms the donation, the second client donates the items, and the donation record is stored in the blockchain.
It simplifies the donation process, avoids unnecessary waste of donated goods, and improves the efficiency and transparency of the donation process.
Smart Images

Figure CN122222700A_ABST
Abstract
Description
[0001] Case Analysis This application is a divisional application of Chinese invention patent application filed on April 28, 2020, with application number 202010350823.2 and title "Goods Donation System, Method, Apparatus, Equipment and Medium for Donating Goods". Technical Field
[0002] This application relates to the field of human-computer interaction, and in particular to a donation system, donation method, device, equipment and medium for donated goods. Background Technology
[0003] With the development of internet technology, traditional offline charitable donation activities are gradually being shifted online, allowing donors to donate goods to recipients through online donations.
[0004] Taking live streaming as an example of conducting charity activities, donors show their love by donating virtual items provided in the live stream to the recipients. The live streaming platform calculates the cash amount represented by the virtual items donated by the donors, uses the cash amount to purchase the items needed by the recipients, and then distributes the items to the corresponding recipients.
[0005] Based on the above, relevant platforms need to pre-set virtual items corresponding to the items needed by the recipients. Since the needs of different recipients vary, the donation process becomes quite cumbersome. Summary of the Invention
[0006] This application provides a donation system, donation method, apparatus, equipment, and medium. By identifying recipients in a live stream, it automatically matches appropriate donations to the recipients, simplifying the donation process. The technical solution is as follows: According to one aspect of this application, a goods donation system is provided, the system comprising: a first client, a server, and a second client, wherein the server is connected to the first client and the second client respectively via a network; The first client is used to collect the live stream corresponding to the live donation process, and the live stream includes donation request information in audio and video format; The server is used to call the information recognition model to identify the donation index information corresponding to the donation demand information, and send a search request to the e-commerce platform based on the donation index information. The information recognition model is a machine learning model with donation index information recognition function. The server is configured to generate a first donation list based on the search results of the e-commerce platform, the first donation list including purchase links for at least one donation found based on the donation index information; The server is used to send the first donation list to the first client; The server is configured to, in response to receiving a confirmation request sent by the first client, send a second donation list to at least one second client, wherein the second donation list is a subset of the first donation list; The second client is configured to select at least one purchase link for the donated item from the second donation list and donate the donated item to the first client.
[0007] According to another aspect of this application, a method for donating items is provided, the method being applied to a first client, the method comprising: The live stream is displayed, which is captured during the live donation process. The live stream includes the recipient of the donation and includes audio and video donation request information. In response to receiving the first donation list sent by the server, at least one donation that matches the donation request information is displayed; In response to receiving a confirmation operation on the first donation list, a second donation list is displayed, which includes the confirmed donations. In response to receiving a receipt operation, feedback information is generated, which includes at least one of text information, video information, audio information, and image information. The receipt operation is used to receive the donated items donated by the second client.
[0008] According to another aspect of this application, a method for donating items is provided, the method being applied to a second client, the method comprising: The live stream is displayed, which is collected during the live donation process and corresponds to the recipient. The live stream includes donation request information in audio and video format. In response to the first client confirming the donation matching the donation request information, a second donation list is displayed, the second donation list including at least one purchase link for the donation; In response to receiving a donation operation from the second donation list, the donated item is donated to the first client.
[0009] According to another aspect of this application, a donation device for articles is provided, the device comprising: The first display module is used to display the live stream collected during the live donation process. The live stream includes the recipient of the donation and includes donation request information in audio and video format. The first display module is configured to display at least one donation that matches the donation request information in response to receiving a first donation list sent by the server. The first display module is configured to display a second donation list in response to receiving a confirmation operation on the first donation list, the second donation list including the confirmed donations; A generation module is used to generate feedback information in response to receiving a receiving operation. The feedback information includes at least one of text information, video information, audio information, and image information. The receiving operation is used to receive the donated items donated by the second client.
[0010] According to another aspect of this application, a donation device for articles is provided, the device comprising: The second display module is used to display the live stream corresponding to the recipient collected during the live donation process. The live stream includes donation request information in audio and video format. The second display module is used to display a second donation list in response to the first client's confirmation of the donation request information matching the donation items. The second donation list includes at least one purchase link for the donation items. The sending module is used to send the donated items to the first client in response to receiving a donation operation from the second donation list.
[0011] According to another aspect of this application, a computer device is provided, the computer device comprising: a processor and a memory, the memory storing at least one instruction, at least one program, a code set or an instruction set, the at least one instruction, the at least one program, the code set or instruction set being loaded and executed by the processor to implement the item donation method as described above.
[0012] According to another aspect of this application, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the method for donating items as described above.
[0013] The beneficial effects of the technical solutions provided in this application include at least the following: By identifying the donation index information corresponding to the live stream of the first client (the recipient client) during the live donation process, the system automatically searches for relevant donations on the e-commerce platform based on this index. Only when the first client confirms that the donation is the item they need can the second client donate it. The donations change according to different donation needs, eliminating the need for technicians to set up donations corresponding to specific needs before the live donation begins, thus simplifying the donation process. Furthermore, the requirement that the first client confirms the donation before it can proceed avoids waste caused by donating unnecessary items to the recipient. Attached Figure Description
[0014] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0015] Figure 1 This is a schematic diagram of the framework of an exemplary embodiment of the donation method for items provided in this application; Figure 2 This is a block diagram of a computer system provided in an exemplary embodiment of this application; Figure 3 This is a schematic diagram of an exemplary embodiment of the goods donation system provided in this application; Figure 4 This is a flowchart illustrating an exemplary embodiment of the method for donating items provided in this application; Figure 5 This is a flowchart of a method for donating items provided in another exemplary embodiment of this application; Figure 6 This is a schematic diagram of a live streaming interface provided in an exemplary embodiment of this application; Figure 7 This is a schematic diagram of a live streaming interface provided in another exemplary embodiment of this application; Figure 8 This is a schematic diagram of the interface for the donation amount provided in an exemplary embodiment of this application; Figure 9 This is a schematic diagram illustrating the information recognition model for identifying donation request information of audio type provided in an exemplary embodiment of this application; Figure 10 This is a schematic diagram of audio frame segmentation provided in an exemplary embodiment of this application; Figure 11 This is a schematic diagram of the interface for feedback information sent by a recipient of donations, provided in an exemplary embodiment of this application. Figure 12 This is a schematic diagram of the structure of a distributed system applied to a blockchain system, provided by an exemplary embodiment of this application; Figure 13 This is a schematic diagram of a block structure provided in an exemplary embodiment of this application; Figure 14 This is a flowchart illustrating an exemplary embodiment of the present application of a method for donating items in conjunction with a first client; Figure 15 This is a schematic diagram of a live streaming interface incorporating scene recognition, provided in an exemplary embodiment of this application. Figure 16This is a flowchart illustrating an exemplary embodiment of the present application of a method for donating items in conjunction with a second client; Figure 17 This is a flowchart illustrating the process of identifying donation demand information of audio type, provided in an exemplary embodiment of this application. Figure 18 This is a block diagram illustrating the process for identifying donation demand information of an image type, provided in an exemplary embodiment of this application. Figure 19 This is a block diagram of an article donation device provided in an exemplary embodiment of this application; Figure 20 This is a block diagram of an article donation device provided in another exemplary embodiment of this application; Figure 21 This is a block diagram of an item donation device combined with a server, provided in an exemplary embodiment of this application; Figure 22 This is a block diagram of a server provided in an exemplary embodiment of this application; Figure 23 This is a block diagram of a computer device provided in an exemplary embodiment of this application. Detailed Implementation
[0016] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0017] First, let's introduce the terms used in the embodiments of this application: Blockchain is an intelligent peer-to-peer network that uses a distributed database to identify, disseminate, and record information. Blockchain technology is based on a decentralized peer-to-peer network, combining cryptographic principles, time-series data, and consensus mechanisms using open-source programs. This ensures the continuity and consistency of each node in the distributed database, making information instantly verifiable, traceable, difficult to tamper with, and impossible to shield, thus forming a highly private, efficient, and secure sharing system. Each data block in a blockchain contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include an underlying platform, platform product services, and application service layers.
[0018] Figure 1 This application illustrates a donation process framework diagram of donated goods according to an exemplary embodiment. The process is described using an example where the recipient corresponds to a first client and the donor corresponds to a second client. The process includes the following steps: Step 111: The charity live stream begins.
[0019] When the recipient starts a live stream in the charity live stream room, the server obtains the live stream from the first client and identifies the donation request information in the time frame.
[0020] Donation request information includes two types: 1. When the recipient is a single person, the recipient states the donation request information, that is, the recipient states the items they need; 2. When the recipient is an organization or unit (such as a school), the donation request information is determined by the context in which the recipient is located.
[0021] Explain the situation where donations are made based on two types of donation demand information.
[0022] 1. The recipient states their donation needs.
[0023] Step 112a: The recipient introduces and states their donation needs.
[0024] Step 113a: The recipient's speech is converted into text, and the donation index information is filtered.
[0025] The server retrieves the recipient's voice message and uses an information recognition model to identify the corresponding donation index information, such as keywords for the donated items. Understandably, multiple recipients can exist within a single live stream.
[0026] 2. Determine donation needs based on the context in which the recipient is located.
[0027] Step 112b: Identify the scene in which the recipient of the donation is located.
[0028] The server obtains scene images from the live stream and calls a convolutional neural network to identify the scene corresponding to the scene image.
[0029] Step 113b: Identify the scene and match the donation index information corresponding to the scene.
[0030] The server matches the donation index information corresponding to the scene. For example, if the scene image corresponds to an outdoor scene, the server automatically matches the donation index information corresponding to the outdoor scene, and this donation index information is a keyword about sports equipment.
[0031] Step 114: Search for donations on the e-commerce platform using the donation index information.
[0032] When the server obtains the donation index information, it searches for physical items to be donated on the e-commerce platform based on the donation index information.
[0033] Step 115: Make recommendations based on the various attributes of the donated items.
[0034] After receiving search results from the e-commerce platform, the physical items are sorted according to their attributes, such as sales volume, positive review rate, and merchant reputation. For illustration, the donation index information consists of keywords.
[0035] Step 116: The recipient confirms the information of the donated items.
[0036] The server sends the first donation list to the first client. Once the first client confirms that the donated items in the first donation list are what it needs, it binds the purchase link of the donated item to the recipient's identifier. When the server recognizes that the live stream corresponding to the second client contains the recipient's identifier, it automatically sends the corresponding purchase link of the donated item to the second client.
[0037] Step 117: Extract key images of the donated items and convert them into donations for the live stream.
[0038] The server extracts key images of physical items and generates corresponding icons for donated items in the live stream, as well as the first donation list.
[0039] Step 118: Identify the recipient's facial information or live stream scene, and bind the donation request information with the recipient.
[0040] When a user on the second client watches a live stream featuring a recipient, the server automatically recommends donations that match the recipient based on the binding relationship.
[0041] Step 119: The donor donates the donated goods.
[0042] The second client can donate items to the first client by selecting a purchase link for the donated items.
[0043] The donation process is as follows: Step 121: When the value of the donated goods reaches the benchmark value, the server automatically places an order.
[0044] Step 122: Notify the e-commerce platform to ship and deliver the goods.
[0045] When the value of the donated items from the second client reaches the benchmark value, the server automatically sends a purchase request to the e-commerce platform to purchase the donated items.
[0046] After a donation is completed, the process of storing the donation record is as follows: Step 123: The recipient receives the donated goods and provides feedback.
[0047] When the first client receives the physical item, it can provide feedback on the donation process, such as creating a thank-you video, recording a thank-you voice message, or writing a thank-you card or letter.
[0048] Step 124: Generate blocks from the donation records.
[0049] In some embodiments, the server generates donation records based on feedback information from the first client, and generates blocks based on the donation records.
[0050] Step 125: Store the block containing the donation records on the blockchain.
[0051] By storing the blocks containing donation records in the blockchain, multiple live streaming platforms can store the donation records of recipients, thus avoiding the problem of resource waste caused by recipients receiving the same donations at the same time.
[0052] The donation process framework provided in this embodiment can automatically identify donation needs based on the recipient's voice or the scene in which they are located. When the recipient changes, it automatically switches to the items needed by the recipient, simplifying the donation process and avoiding waste caused by donating items that the recipient does not need. At the same time, the donation records are stored in the blockchain to ensure the openness and transparency of the donation process.
[0053] Figure 2 A structural block diagram of a computer system provided in an exemplary embodiment of this application is shown. The computer system 100 includes: a first terminal 120, a server 140, and a second terminal 160.
[0054] The first terminal 120 has an application that supports video playback installed and running. This application can be either a live streaming application or a social application. The first terminal 120 is the terminal used by the recipient, and it has a corresponding first client. The first client collects the live stream corresponding to the recipient. The first client is also used to send the item information of the items to be donated to the server 140 when it receives confirmation from the recipient. For example, if the recipient confirms that they need 20 backpacks, the first client sends the item information (20 backpacks) to the server 140.
[0055] The first terminal 120 is connected to the server 140 via a wireless network or a wired network.
[0056] Server 140 includes at least one of a single server, multiple servers, a cloud computing platform, and a virtualization center. Schematic, server 140 includes a processor 144 and a memory 142. Memory 142 further includes a receiving module 1421, a control module 1422, and a sending module 1423. The receiving module 1421 receives requests from terminals, such as a confirmation request from a first terminal 120 or a donation request from a second terminal 160. The control module 1422 identifies the donation index information corresponding to the donation request information in the live stream and searches for purchase links for the donations based on the donation index information. The sending module 1423 sends item information to terminals, such as sending purchase links for the searched donations to the first terminal 120 or sending a second donation list to the second terminal 160. Server 140 provides background services for video playback applications, such as providing screen rendering services for the applications. Optionally, server 140 undertakes the primary computing task, while the first terminal 120 and the second terminal 160 undertake secondary computing tasks; alternatively, server 140 undertakes secondary computing tasks, while the first terminal 120 and the second terminal 160 undertake the primary computing tasks; or, server 140, first terminal 120, and second terminal 160 collaborate on computing using a distributed computing architecture. In some embodiments, server 140 is connected to the server of an e-commerce platform via a wired or wireless network, and the e-commerce platform can be any one of a shopping platform, a second-hand trading platform, or a group-buying platform.
[0057] The second terminal 160 is connected to the server 140 via a wireless network or a wired network.
[0058] The second terminal 160 has an application that supports video playback installed and running. This application can be either a live streaming application or a social application. The second terminal 160 is the terminal used by the donor, and it corresponds to a second client. The second client displays the live stream corresponding to the recipient, and it is also used to receive a second donation list sent by the server 140. The second donation list is a donation list confirmed by the first client. When the second client receives a donation operation, it donates at least one item from the second donation list to the first client.
[0059] Optionally, the user accounts of the recipient and the recipient can be non-friends in the application, or they can be friends, or they can have temporary communication permissions.
[0060] Optionally, the applications installed on the first terminal 120 and the second terminal 160 are the same, or the applications installed on the two terminals are the same type of application on different operating system platforms. The first terminal 120 can refer to one of multiple terminals, and the second terminal 160 can refer to one of multiple terminals; this embodiment only uses the first terminal 120 and the second terminal 160 as examples. The device types of the first terminal 120 and the second terminal 160 may be the same or different, and these device types include at least one of: smartphones, tablets, e-book readers, MP3 players, MP4 players, laptops, and desktop computers. The following embodiment uses smartphones as an example.
[0061] Those skilled in the art will understand that the number of terminals described above can be more or less. For example, there may be only one terminal, or there may be dozens or hundreds of terminals, or even more. This application does not limit the number of terminals or the type of device.
[0062] Figure 3 This application illustrates a framework diagram of an exemplary embodiment of a donation system for goods. The system 10 includes a first client 101, a server 102, and a second client 103. The server 102 is connected to both the first client 101 and the second client 103 via a network. The server can be, for example... Figure 2 The server shown is 140.
[0063] The first client 101 is the client corresponding to the recipient of the donation. The first client 101 is used to collect the live stream corresponding to the recipient of the donation. The live stream includes donation request information in audio / video format. In some embodiments, the first client 101 is also used to record feedback information, such as a thank-you voice message or thank-you video message, after receiving the donation, to express gratitude to the second client 103 that donated the donation.
[0064] Server 102 is used to invoke an information recognition model to identify the donation request information corresponding to the first client, obtain the donation item index information corresponding to the donation information, and then use the donation item index information to search for donations on the e-commerce platform. This information recognition model is a machine learning model with donation item index information recognition capabilities. For illustrative purposes, the e-commerce platform includes any one of the following: a shopping platform, a second-hand trading platform, or a group-buying platform.
[0065] Server 102 generates a first donation list based on the searched product information. The first donation list includes a purchase link for at least one donated item. Server 102 sends the purchase link to a first client 101. Once the recipient confirms that the donated item in the first donation list is what they need, server 102 sends a second donation list to at least one second client 103 based on the confirmation result from the first client. The second donation list is a subset of the first donation list.
[0066] The second client 103 is used to select a purchase link for at least one donation from the second donation list and donate the donation to the first client 101. In some embodiments, the donations made by the various second clients 103 to the first client 101 may be the same or different, or may be different donations of the same type.
[0067] The item donation system provided in this embodiment identifies the donation index information contained in the live stream corresponding to the recipient through the server, and matches the corresponding donation for the recipient. This eliminates the need for technicians to set the corresponding donation for the recipient before the live stream, simplifying the donation process. At the same time, with the recipient's confirmation, users on the second client can donate the necessary items to the recipient, avoiding the waste problem caused by donating unnecessary items.
[0068] Figure 4 A flowchart illustrating a method for donating items according to an exemplary embodiment of this application is shown. This method is applied to, for example... Figure 2 In the computer system 100 shown, the method includes the following steps: Step 401: The first client collects the live stream corresponding to the live donation process. The live stream includes donation request information in audio and video formats. The first client is the client corresponding to the recipient. The recipient communicates with the donor through live streaming. The donation request information in the live stream can be video donation information, audio donation information, or a combination of audio and video donation information.
[0069] Step 402: The server calls the information recognition model to identify the donation index information corresponding to the donation demand information, and sends a search request to the e-commerce platform based on the donation index information. The information recognition model is a machine learning model with the function of identifying donation index information.
[0070] The server acquires the live stream from the first client and uses an information recognition model to identify donation request information within the stream. This donation request information can be spoken audio from the recipient or contextual information related to the recipient's situation. For example, if the recipient is a student in a poor mountainous area who needs a schoolbag, the server recognizes the donation request information as spoken audio. Similarly, if the recipient is a school in a remote mountainous area, and the live stream shows many students playing on the playground, the server identifies the playground as the corresponding context, and the donation request information is based on that context. Furthermore, when the recipient is a person with disabilities, the donation request information can be sign language or lip-reading. For instance, if a deaf student uses sign language to represent a book, the server recognizes the donation request information as the sign language gesture.
[0071] The server invokes an information recognition model with donation index information recognition capabilities to identify donation request information and obtain donation index information corresponding to the donation request information. In some embodiments, donation index information may be keywords, codes representing information, or images.
[0072] Indicatively, keywords can be key fields mentioned by the recipient regarding a particular item, such as the recipient saying "stationery" or "pencil".
[0073] In a illustrative sense, the encoding representing information could be a product's barcode. For example, if a recipient holds a book with a barcode, the server can identify the barcode and use it to search for the book's name on an e-commerce platform.
[0074] In illustrative terms, the image is one that contains product characteristic information, such as a recipient holding a pen. The server recognizes that the object held by the recipient is a pen and searches for pens on the e-commerce platform.
[0075] Taking the donation index information as a keyword as an example, if the recipient says "I need a backpack", the server calls the information recognition model to identify the donation index information as the keyword "backpack"; or, if the scene information corresponding to the recipient is a playground, the server calls the information recognition model to identify the donation index information as the keyword "sports shoes", or "sports clothes", or "sports equipment", etc.
[0076] The server sends a search request to the e-commerce platform based on the identified donation index information. This search request carries the donation index information, which is used to search for purchase links for the donations.
[0077] Step 403: The server generates a first donation list based on the search results of the e-commerce platform. The first donation list includes purchase links for at least one donation found based on the donation index information.
[0078] E-commerce platforms send search results to servers. In some embodiments, the servers process the search results, or the e-commerce platform sends processed search results to the servers. Search results may include links to purchase donated items.
[0079] As an example, the server organizes the search results and sorts the purchase links of donated items based on factors such as sales volume, positive review rate, delivery speed, and price, thereby generating the first donation list.
[0080] Step 404: The server sends the first donation list to the first client.
[0081] The server sends the generated first donation list to the first client corresponding to the recipient.
[0082] Step 405: In response to receiving the confirmation request sent by the first client, the server sends a second donation list to at least one second client, the second donation list being a subset of the first donation list.
[0083] The recipient confirms the required donations through a first client. Illustratively, the first donation list is displayed on the recipient's terminal, and the recipient confirms the required donations by clicking on them. In some embodiments, when the recipient's terminal is a computer device connected to an external input device, the recipient confirms the required donations through the external input device, such as a desktop computer connected to a mouse, by clicking the mouse. In other embodiments, the recipient can also confirm donations via voice commands. For example, if the recipient is using a smartphone for live streaming, and the first donation list is displayed on the smartphone screen, the recipient speaks the name of the desired donation, and the smartphone captures and recognizes the recipient's voice to obtain the confirmation command.
[0084] The donations selected by the recipients constitute a second donation list. The server sends this second donation list to the second client corresponding to the user watching the live stream on the first client.
[0085] Step 406: The second client selects at least one purchase link for a donation from the second donation list and donates the donation to the first client.
[0086] In some embodiments, the server generates a second donation list based on the donations selected by the first client. When the second client receives the second donation list, the user selects donations to donate to the first client through the second client.
[0087] Users can select one or more donations. In some embodiments, donations in the live stream require purchase; users need to pay real-world currency to buy virtual resources, and then use those virtual resources to purchase donations.
[0088] In some embodiments, users can pay part or all of the price of a donated item based on its price in the live stream. In one example, a backpack costs 100 gold coins in the live stream. Users can choose to pay any amount less than 100 gold coins, such as one user paying 50 gold coins and other users paying the remaining amount, with multiple users completing the payment process together. Alternatively, users can choose to pay the full amount.
[0089] In summary, the method provided in this embodiment identifies the donation index information corresponding to the live stream of the first client (the recipient client) during the live donation process. Based on this index information, it automatically searches for relevant donations on an e-commerce platform. Only when the first client confirms that the donation is the item it needs can the second client donate it. The donation changes according to the donation demand information, eliminating the need for technicians to set donations corresponding to the donation demand information before the live donation begins, thus simplifying the donation process. Furthermore, the fact that donations can only be made after the first client's confirmation avoids waste caused by donating unnecessary items to the recipient.
[0090] The donation method for items is explained in conjunction with the user interface (UI).
[0091] Figure 5 A flowchart illustrating a method for donating items according to an exemplary embodiment of this application is shown. This method is applied to, for example... Figure 2 In the computer system 100 shown, the method includes the following steps: Step 501: The first client collects the live stream corresponding to the live donation process. The live stream includes donation request information in audio and video formats.
[0092] like Figure 6 As shown, the live streaming interface 20 of the first client collects the live stream, which includes the live stream corresponding to the recipient. The recipient can transmit donation request information to the second client through the live stream, which may include voice information or scene information corresponding to the recipient. In some embodiments, the live streaming interface 20 also displays comments from users watching the live stream.
[0093] Step 502: The server obtains the type of donation request information.
[0094] In some embodiments, the donation request information may be of at least one type, either audio or image.
[0095] Step 503: The server determines the information recognition model based on the type of donation demand information.
[0096] The server invokes different information recognition models to identify different types of donation request information. For illustration, the information recognition models invoked by the server include at least one of the following two models: an audio information recognition model for recognizing audio information and an image information recognition model for recognizing image information. The server determines the corresponding information recognition model based on the type of donation request information.
[0097] For example, if the donation request information is in audio format, the audio information recognition model called by the server can identify donation index information from the audio frame; or, the image information recognition model called by the server can identify donation index information from the image.
[0098] Step 504: The server calls the information recognition model to identify the donation demand information and obtains the donation index information corresponding to the donation demand information. The donation index information is used to search for purchase links for donations.
[0099] The server invokes the information recognition model corresponding to the type of donation request information.
[0100] Table 1 illustrates the relationship between the recipient identifier, the type of donation request information, and the donation index information.
[0101] Table 1
[0102] In one example, the donation request information includes audio types.
[0103] Step 504 can be replaced with the following steps: Step 504a: In response to the donation request information being of audio type, the server calls the information recognition model to process the audio frames in the live stream corresponding to the recipient identifier, and obtains the donation index information corresponding to the audio frames. The donation index information is used to search for purchase links for donations.
[0104] In some embodiments, the information recognition model is also named a speech-to-text model or an audio recognition model, which has the function of recognizing donation index information from audio frames. The name of the model is not limited in the embodiments of this application.
[0105] The recipient identifier is used to uniquely identify the recipient. The recipient identifier may include a string of at least one character among numbers, letters, and symbols.
[0106] The recipient identifier can be a live stream identifier, such as the live stream room number. It can also be a recipient user account, such as the live stream account used by the recipient during the live stream. This live stream account can be an account registered by the recipient on the application, or an account registered through another application. The recipient authorizes the live stream application to use the account from that other application. In some embodiments, when the live stream includes multiple recipients, the recipient identifier is each recipient's user account (live stream account). For example, if a teacher is conducting a charity donation live stream with two students, the server identifies each student's user account in the live stream when identifying the recipient identifier.
[0107] In some embodiments, the server invokes a feature extraction model to process the audio frame corresponding to the recipient identifier, obtaining the feature vector of the audio frame. This feature extraction model is a pre-trained model, a machine learning model with feature extraction capabilities. In other embodiments, the server invokes an information recognition model to extract features from the audio frame, obtaining the feature vector of the audio frame. In obtaining the feature vector of the audio frame, the audio frame can be segmented to obtain the feature vector of each segment, and then the feature vectors of each segment can be combined to obtain the feature vector of the entire audio frame, or the feature vector of the entire audio frame can be obtained directly.
[0108] The server calls the information recognition model to process the feature vector of the audio frame and obtain the donation index information corresponding to the audio frame.
[0109] like Figure 7 As shown in (a), the recipients are displayed on the live stream interface 24, illustratively, and their audio contains keywords such as backpack, stationery, clothes, and shoes. The server uses an information recognition model to identify the recipient's audio frames and generates a first donation list 25. The first donation list 25 displays purchase links for backpacks, pencil cases, clothes, and shoes. Recipient identifier 26 is the recipient's user account used during the live stream.
[0110] In one example, the donation request information includes image types, and the information recognition model includes a convolutional neural network.
[0111] Step 504 can be replaced with the following steps: Step 504b: In response to the donation request information being of image type, the server calls a convolutional neural network to identify the scene image in the live stream corresponding to the recipient's identifier, thereby obtaining the scene corresponding to the scene image. The scene image represents the scene in which the recipient is located.
[0112] The information recognition model can also be other machine learning models, which have the function of identifying donation index information from images. The information recognition model can be composed of other neural networks; this application embodiment only uses a convolutional neural network as an example for illustration.
[0113] Convolutional Neural Networks (CNNs) are a class of deep feedforward neural networks that incorporate convolutional computations. CNNs are modeled after biological vision mechanisms and can perform both supervised and unsupervised learning. A CNN consists of at least two neural network layers, each containing several neurons arranged hierarchically. Neurons within the same layer are not interconnected, and information is transmitted between layers in only one direction.
[0114] The recipient identifier is used to uniquely identify the recipient of the donation. The recipient identifier can be a string containing at least one of the following characters: numbers, letters, and symbols. In image-based donation request information, the recipient identifier can be a live stream identifier, such as the live stream room number, or the identifier of the organization that initiated the live stream. For example, if the organization that initiated the live stream is Elementary School X, then the recipient identifier is the official account corresponding to Elementary School X.
[0115] In some embodiments, the server invokes an image feature extraction model to process the scene image corresponding to the recipient identifier, obtaining a feature vector of the scene image, which is obtained from the live stream. The image feature extraction model is a pre-trained model, a machine learning model with image feature extraction capabilities. In other embodiments, the server invokes a convolutional neural network to extract features from the scene image, obtaining a feature vector of the scene image; alternatively, the server invokes an information recognition model constructed from other neural networks to extract features from the scene image, obtaining a feature vector of the scene image.
[0116] In some embodiments, before extracting the feature vector of the scene image, it is necessary to preprocess the scene image. Preprocessing refers to operations such as denoising and smoothing transformation of the image to enhance the important features of the image.
[0117] The server uses a convolutional neural network to process the feature vectors of the scene image, obtaining the scene corresponding to the scene image. This scene is the scene where the recipient is located. For example, the scene may be an indoor scene, where students are studying in a classroom in the live stream, or it may be an outdoor scene, where students are engaging in activities in the live stream.
[0118] Step 504c: The server matches the donation index information corresponding to the scenario. The donation index information is used to search for purchase links for donations.
[0119] As an illustration, the donation system has a matching scenario database. This database stores donation item index information for multiple scenarios. The server matches the scenario with the donation item index information to obtain the corresponding donation item index information. For example, if the scenario in the live stream is students learning in a classroom, the server could obtain matching donation item index information that includes keywords related to stationery or teaching aids (such as blackboards, chalk, etc.).
[0120] Step 505: The server generates a first donation list based on the search results of the e-commerce platform. The first donation list includes purchase links for at least one donation found based on the donation index information.
[0121] Step 505 can also be replaced by the following steps: Step 5051: The server retrieves the item information of the donated items based on the search results.
[0122] The server sends a search request to the e-commerce platform based on the donation index information. This search request carries the donation index information. The e-commerce platform searches for donations based on the donation index information and returns the search results to the server. The item information obtained by the server includes the item's price, sales volume, positive review rate, images, delivery range, and logistics speed. For illustration, the server can sort donations based on this item information.
[0123] Step 5052: The server extracts the key image corresponding to the donation from the item information. The key image represents the attributes of the donation.
[0124] Key images are images that characterize the attributes of donated items and possess their features, enabling users to identify the item's name based on the image. Illustratively, the server can invoke an image extraction model to extract the key image corresponding to the donated item from the item information. This image extraction model is a machine learning model with key image extraction capabilities, and it can be a pre-trained model.
[0125] In step 5053, the server binds the key image to the purchase link of the donated item, thus obtaining the first binding relationship.
[0126] The server creates donations (or charitable gifts) from key images and purchase links for donated items for the live stream. These donations are displayed as icons in the donation list within the live stream. These icons can be extracted key images or item icons generated based on the key images, such as simple line drawings corresponding to physical items.
[0127] Step 5054: The server generates the first donation list based on the first binding relationship.
[0128] The server associates the first binding relationship with the first donation list, and the first donation list displays a purchase link for at least one donated item corresponding to the recipient.
[0129] like Figure 7 As shown in (b), the live stream interface 27 displays multiple students engaging in outdoor activities. The server uses an information recognition model to identify that the scene image corresponding to the donation recipient identifier is an outdoor scene, generating a first donation list 28. The first donation list 28 displays purchase links for sports shoes, roller skates, jump ropes, and soccer balls. The donation recipient identifier 29 is either the room number of the live stream room or the official account of X Elementary School.
[0130] Step 506: The server sends the first donation list to the first client.
[0131] Step 507: In response to receiving the confirmation request sent by the first client, the server sends a second donation list to at least one second client, the second donation list being a subset of the first donation list.
[0132] Step 507 can be replaced with the following steps: Step 5071: In response to receiving a confirmation request from the first client, the server obtains the recipient identifier corresponding to the live stream. The confirmation request carries at least one item identifier of the donated item. The recipient identifier includes at least one of the recipient user account and the live stream identifier.
[0133] The recipient confirms the required donation through the first client. The server obtains the recipient's identifier, which can be the recipient's user account, such as the user account used during the live stream, or the user account of the recipient on other applications. By authorizing the live stream application, the recipient can use the user account on other applications to conduct the live stream.
[0134] like Figure 6 As shown, the live stream interface 20 is the live stream interface of the first client. After the first client selects the required donations, a "check mark" 22 is marked on the donations. The shoes and backpack are donations that the first client has confirmed as needed.
[0135] Step 5072: The server binds the recipient identifier with the item identifier of the donated item to obtain a second binding relationship.
[0136] For illustrative purposes, when the recipient identifier is a recipient user account, the second binding relationship could be that recipient A needs two pairs of sneakers. When the recipient identifier is a live stream identifier, the second binding relationship could be that Elementary School X needs 20 desks.
[0137] Step 5073: In response to the second client displaying the live stream corresponding to the recipient identifier, the server sends the second donation list to the second client according to the second binding relationship. The second donation list includes a purchase link for at least one donated item.
[0138] When the server detects that a second client is watching a live stream corresponding to the recipient identifier, it sends a second donation list to the second client based on the second binding relationship. It can be understood that the server sends a second donation list to at least one second client.
[0139] Step 5074: The second client displays the second donation list.
[0140] The second client displays a second donation list that has been confirmed by the first client. This second donation list is a subset of the first donation list. In some embodiments, the donations selected by the first client constitute the second donation list, or the server generates another list based on the second client's selection and names that list the second donation list.
[0141] Step 508: The second client selects at least one purchase link for a donation from the second donation list and donates the donation to the first client.
[0142] like Figure 8 As shown in (a), the live streaming interface 30 is the live streaming interface on the second client. A second donation list 31 is displayed on the live streaming interface 30; this second donation list 31 is a list obtained after confirmation by the first client. Illustratively, when a user clicks a UI control on the second donation list 31, the amount that can be donated is displayed. For example, UI control 32 represents a backpack as a donation; when the user clicks UI control 32, the donation amount is displayed. Taking the user's payment of virtual resources circulating in the live streaming room as an example, the donation amount is 88 gold coins. The user can also click a random amount control 33, such as... Figure 8 As shown in (b), the donation amount can be switched from 88 gold coins to 666 gold coins or 188 gold coins. The donation amount is random, and users can also choose to donate the full value of the item, such as a backpack, where the full donation amount is 860 gold coins. In some embodiments, users can select the donation amount by manually entering the amount.
[0143] When a user clicks the donation control 34, the selected amount is donated to the first client. It is understood that when a user donates, they need to purchase virtual resources circulating in the live stream, and the donation amount is calculated using virtual resources. In some embodiments, the donated currency can also be real-world currency; this application does not limit this.
[0144] When users on the second client donate, the amount is calculated based on the monetary value of the donation. Therefore, the donation process also includes the following steps: Step 5081: In response to the value of the donated items donated by the second client reaching the benchmark value, the server sends a purchase request to the e-commerce platform. The purchase request carries the recipient's identifier, the item identifier of the donated items, and the delivery address corresponding to the recipient.
[0145] When the total value of donations from at least one second client reaches the benchmark value, the server sends a purchase request to the e-commerce platform. The purchase request includes the recipient's identifier, the item identifier of the donation, and the recipient's corresponding delivery address.
[0146] Indicative, such as Figure 8 As shown, the backpack is valued at 860 gold coins. User A selects the backpack and donates 88 gold coins, user B selects the backpack and donates 300 gold coins, user C selects the backpack and donates 12 gold coins, and user D selects the backpack and donates 460 gold coins. After user D's donation, the donated value reaches the backpack's listed value, and the server sends a purchase request to the e-commerce platform. Figure 8 As shown in (c), the UI control 35 corresponding to the schoolbag in the second donation list 31 displayed on the second client shows the words "order placed", indicating that the schoolbag has been purchased on the e-commerce platform.
[0147] In some embodiments, the purchase request may also include the quantity of the donated items and the brand of the donated items.
[0148] Step 5082: In response to receiving the payment amount corresponding to the donation sent by the e-commerce platform, the server transfers the payment currency from the account corresponding to the second client to the account corresponding to the e-commerce platform. The payment amount is calculated by the e-commerce platform based on the purchase request.
[0149] In response to receiving a payment amount corresponding to a donation from the e-commerce platform, the server transfers the payment currency from the account of at least one second client to the account of the e-commerce platform. The payment amount is calculated by the e-commerce platform based on the purchase request.
[0150] The e-commerce platform calculates the monetary amount to be paid for the donated items based on the unit price and quantity of the donated items requested in the purchase request. In some embodiments, the server may also calculate the monetary amount to be paid for the donated items. The server then performs the currency transfer operation.
[0151] Step 5083: After the payment transfer is successful, the server receives the purchase order corresponding to the donated goods sent by the e-commerce platform. The purchase order is used by the e-commerce platform to deliver the donated goods to the first client.
[0152] The e-commerce platform sends the payment result back to the server. After the server successfully completes the payment, the e-commerce platform sends the purchase order corresponding to the donated items to the server. The e-commerce platform then delivers the purchased donated items to the first client according to the purchase order.
[0153] In summary, the method provided in this embodiment involves the server acquiring the live stream of a first client (the recipient client) during a live donation process. It then identifies the donation request information by calling an information recognition model corresponding to the donation request information type, thereby obtaining the corresponding donation item index information. Based on this index information, the server automatically searches for relevant donations on an e-commerce platform. Once the first client confirms that the donation item is what it needs, the second client donates that item to the first client. Even in different live donation processes, the system can accurately obtain the items needed by the recipient, eliminating the need for technicians to set up donation items corresponding to the donation request information before the live donation begins, thus simplifying the donation process. Furthermore, the requirement that the first client confirms the donation before it can proceed avoids waste caused by donating unnecessary items to the recipient.
[0154] When the donation request information is in audio format, the system recognizes the recipient's voice to obtain the corresponding donation index information. The server can then automatically search based on the donation index information to obtain purchase links for the items needed by the recipient, thus accurately matching the recipient with the appropriate donation.
[0155] When the donation request information is in the form of an image, the convolutional neural network and classifier are used to identify the scene in which the recipient is located in the live stream and obtain the corresponding donation index information. The server can then automatically search based on the donation index information to obtain the purchase links for the items needed by the recipient, thus accurately matching the recipient with the corresponding donation.
[0156] By extracting key images of donated items, charitable gifts are generated in the live stream, enabling the server to intelligently recommend items needed by the first client. The first client then displays the server-recommended items (the first donation list) in a more intuitive way.
[0157] Once the first client confirms, the recipient identifier is bound to the donation request information. When the server recognizes that the live stream displayed on the second client corresponds to the recipient identifier, it automatically displays the second donation list corresponding to the recipient on the second client, allowing the second client to more intuitively select the donations to donate.
[0158] When the value of the donated items from the second client reaches the benchmark value, the server automatically sends a purchase request to the e-commerce platform to directly purchase the items needed by the recipient, thus simplifying the donation process.
[0159] The above embodiments involve identifying donation index information based on two types of donation demand information, including: 1. Obtaining donation index information based on audio-type donation demand information; 2. Obtaining donation index information based on image-type donation demand information.
[0160] The first scenario is explained as follows: Donation index information is obtained based on donation request information of audio type.
[0161] In one example, the information recognition model includes an acoustic model and a language model. The process of obtaining and recognizing donation index information includes the following steps: Step 1: The server matches the audio frame with the reference speech template to obtain the speech information corresponding to the audio frame.
[0162] Before speech recognition begins, Voice Activity Detection (VAD) is used to analyze audio frames. The purpose is to identify and eliminate long periods of silence from the audio signal stream, thereby saving call resources without reducing service quality.
[0163] The purpose of speech recognition is to convert speech into text. That is, when given a speech signal (i.e., an audio frame), a text sequence (composed of words or characters) is to be determined such that the text sequence matches the speech signal to the highest degree. This degree of matching is represented by probability.
[0164] The framework for the recognition process that combines acoustic and language models, such as Figure 9 As shown, the acoustic model is first trained using a speech database containing a large number of reference speech templates. Similarly, the language model is trained using a text database containing a large number of word strings. This application does not limit the training method of the model.
[0165] To illustrate, the server matches audio frames with a reference speech template until a matching speech information is found, representing what the recipient said in the audio frame. This speech information represents the server's conversion of the audio signal into a digital signal that can be recognized by a computer.
[0166] Step 2: The server calls the language model to process the speech information and obtain the text sequence corresponding to the speech information.
[0167] Language models are used to convert speech information into text sequences, that is, what the text corresponds to the speech information.
[0168] Step 3: The server calls the acoustic model to process the feature vector of the audio frame and the text sequence to obtain the similarity probability between the audio frame and the text sequence.
[0169] Acoustic models are used to identify the similarity probability between an audio frame and a text sequence based on the feature vector of the audio frame and the text sequence; that is, what text information the audio frame corresponds to. An acoustic model calculates the probability of a speech signal given a text sequence, i.e., how likely that sentence is to be pronounced as that sequence of sounds.
[0170] When calculating the probability of a speech signal following a given text sequence, an acoustic model needs to know the pronunciation of each character. It uses a dictionary model (Lexicon) to convert individual characters (or words) into corresponding phonemes (i.e., elements representing the pronunciation of the text). The acoustic model also needs to know the start and end times of each phoneme. This requires dividing the audio frames, including the following steps: S1. The server divides the audio frames to obtain the segmented audio frames.
[0171] The Dynamic Time Warping (DTW) algorithm is used to determine the phoneme boundary points. DTW is an algorithm used to solve the matching problem of templates with varying pronunciation lengths. When comparing the differences between two audio segments (e.g., comparing the audio frames of this embodiment with a reference speech template), the same person pronouncing the same sound at different times will not be exactly the same, and each person's pronunciation speed for different phonemes of the same word will also be different. It is necessary to solve for the similarity between the two audio segments in the time series. The DTW algorithm warps one segment of the two audio segments in the time series, aligning the two audio segments in the time series, thereby enabling accurate calculation of the similarity between the two audio segments.
[0172] In some embodiments, the audio frame is divided into many segments, and then transformed into corresponding feature vectors through a series of operations such as Fourier transform. For example... Figure 10 As shown, each frame is 25 milliseconds long, and there is a 15-millisecond overlap between every two frames (25-10=15).
[0173] S2. The server processes each audio segment to obtain the feature vector corresponding to each audio frame.
[0174] In some embodiments, a feature extraction model is invoked to extract feature vectors for each audio frame segment.
[0175] S3. The server obtains the feature vector of the audio frame based on the feature vector of each audio frame segment.
[0176] Based on the physiological characteristics of the human ear, the feature vectors of each audio frame are concatenated to obtain the feature vector of the audio frame.
[0177] Step 4: The server determines the donation index information corresponding to the audio based on the similarity probability. The donation index information is used to search for purchase links for donations.
[0178] To illustrate, if the similarity probability between an audio frame and a text sequence is 90%, then it can be determined that the audio frame and the text sequence are a match, and the text sequence is output, i.e., the text output. This output text is the donation index information.
[0179] In summary, identifying the donation index information corresponding to the donation request information involves calling relevant models to convert the speech of the recipient into text corresponding to the donation index information. By segmenting the audio frames, calling language and acoustic models, and matching the audio frames with text sequences, the text corresponding to the recipient's speech is obtained, enabling the server to accurately search for the purchase link of the donation based on the text.
[0180] In one example, a convolutional neural network includes a feature extractor and a classifier. The process of obtaining and identifying donation index information includes the following steps: Step 11: In response to the donation request information being of image type, the server calls the feature extractor to preprocess the scene image and obtain the joint vector of the scene image.
[0181] In some embodiments, the feature extractor includes convolutional layers and convergence layers. Step 11 can be replaced by the following steps: S11. The server calls the convolutional layer to preprocess the scene image and obtain the pixel block corresponding to the scene image. The pixel block includes the height, width and color of the scene image.
[0182] The convolutional layer disperses the scene image of the live broadcast room into a 3*3 or 5*5 pixel block, and then arranges these output values in the image group, using numbers to represent the content of each area in the photo. The number axis represents the height, width and color respectively, thus obtaining the three-dimensional numerical representation of each image block.
[0183] S12. The server calls the convergence layer to combine the pixel blocks with the sampling function to obtain the joint vector of the scene image.
[0184] The convergence layer combines the spatial dimensions of this 3D (or 4D) image with the sampling function to output a joint array that contains only the relatively important parts of the image.
[0185] Step 12: The server calls the classifier to classify the joint vector and obtain the scene corresponding to the scene image.
[0186] A classifier is a recognition rule developed through training. This rule allows for feature classification, enabling image recognition technology to achieve high recognition rates. It then generates relevant labels and categories, leading to classification decisions and the identification of the scene category in the live stream.
[0187] In summary, a convolutional neural network includes a feature extractor and a classifier. The feature extractor obtains a joint vector of the scene image, and the classifier classifies the joint vector to obtain the scene corresponding to the scene image, enabling the convolutional neural network to accurately identify the scene corresponding to the scene image.
[0188] The feature extractor includes convolutional layers and pooling layers. The convolutional layers preprocess the scene image to obtain pixel blocks of the scene image. The pooling layers combine the pixel blocks with the sampling function to obtain the joint vector of the scene image, enabling the classifier to accurately classify the joint vector and ensuring the accuracy of the output results.
[0189] based on Figure 5 In an optional embodiment, after receiving the donation, the first client can send feedback information to the server, and the server generates a donation record accordingly. This process includes the following steps: Step 509: Upon receiving the donation, the first client sends feedback information to the server. The feedback information includes at least one of text information, video information, audio information, and image information.
[0190] like Figure 11 As shown in (a), the user of the second client can view their completed donation records. Multiple donation records are displayed on the donation record interface 40. These donation records are feedback information sent to the server by the first client after receiving the donated item. Illustratively, when the user of the second client clicks on the donation record 41 corresponding to the backpack, the following is displayed: Figure 11 The feedback information interface 42 shown in (b) includes a thank-you video recorded by the recipient of the donation from the first client and a thank-you text written by the recipient.
[0191] Step 510: In response to receiving feedback information, the server generates a donation record, which includes at least one of the following: live streaming platform identifier, recipient identifier, and item identifier of the donated item.
[0192] In some embodiments, the donation record may also include the recipient's name, the quantity of the donated item, the donation date, and the donor's name (and other information). In one example, the server-generated donation record states: Donor A donated twenty desks to X Elementary School (recipient b) on April 10, 2020. In some embodiments, the donated item is jointly donated by multiple donors, and the donation record records the names (and other information) of all donors who donated the item.
[0193] In summary, after the recipient receives the physical goods, the server generates a donation record by receiving feedback information sent by the first client, making it convenient for both the first and second clients to query the donation record.
[0194] based on Figure 5 In an alternative embodiment, the server may store the generated donation records to a blockchain. This process includes the following steps: Step 511: The server generates target data based on the donation record. The target data includes at least one of the following: live streaming platform identifier, recipient identifier, and item identifier of the donated item.
[0195] The server can associate local live streaming platform identifiers, recipient identifiers, and donation records to generate target data. The target data is in key-value (KV) format. The server can generate key elements in key-value pairs based on the local platform identifier and value elements based on the recipient identifier and donation records. By associating the key elements and value elements, the target data can be generated.
[0196] Step 512: The server sends the target data to the blockchain nodes in the blockchain network.
[0197] Taking a distributed system as an example, blockchain system Figure 12 This is a schematic diagram illustrating the structure of a distributed system 300 applied to a blockchain system, provided by an exemplary embodiment of this application. It consists of multiple nodes 400 (any form of computing device connected to the network, such as servers or user terminals) and clients 500. The nodes form a peer-to-peer network, and the peer-to-peer protocol is an application layer protocol running on top of the Transmission Control Protocol (TCP). In the distributed system, any machine, such as a server or terminal, can join and become a node. A node includes a hardware layer, a middleware layer, an operating system layer, and an application layer.
[0198] See Figure 12 The functions of each node in the blockchain system shown include: 1) Routing: A basic function of nodes used to support communication between nodes.
[0199] In addition to routing capabilities, nodes can also have the following functions: 2) Applications are deployed in the blockchain to implement specific business needs. They record data related to the implementation of functions to form record data, carry digital signatures in the record data to indicate the source of the task data, and send the record data to other nodes in the blockchain system. When other nodes successfully verify the source and integrity of the record data, they add the record data to a temporary block.
[0200] For example, the business logic implemented by the application includes: 2.1) A wallet provides the function of conducting electronic currency transactions, including initiating transactions. This involves sending the transaction record of the current transaction to other nodes in the blockchain system. After successful verification by other nodes, the transaction record data is stored in a temporary block of the blockchain as a response acknowledging the validity of the transaction. The wallet also supports querying the remaining electronic currency in an electronic currency address. For example, when adding target data (donation records) to the blockchain system, other nodes in the blockchain system verify the transaction (i.e., the target data to be added to the blockchain). Only after successful verification by other nodes can the transaction be stored in the blockchain.
[0201] 2.2) Shared ledger: This provides functions for storing, querying, and modifying account data. It sends records of operations on account data to other nodes in the blockchain system. After verification by other nodes, the records are stored in a temporary block as a response acknowledging the validity of the account data. Confirmation can also be sent to the node that initiated the operation. For example, after a donation record is verified by other nodes, it is written into the shared ledger, i.e., stored in the blockchain. 2.3) Smart contracts are computerized protocols that can execute the terms of a contract. They are implemented through code deployed on a shared ledger that executes when certain conditions are met. Based on actual business needs, the code is used to automate transactions, such as querying the logistics status of goods purchased by a buyer and transferring the buyer's electronic funds to the merchant's address after the buyer signs for the goods. Of course, smart contracts are not limited to executing contracts for transactions; they can also execute contracts that process received information. For example, after receiving a transfer from the server, an e-commerce platform will trigger a smart contract to execute the delivery and distribution process of donated goods according to the contract's stipulations, delivering the donated goods to the recipient.
[0202] 3) A blockchain consists of a series of blocks sequentially ordered by their creation time. Once a new block is added to the blockchain, it cannot be removed. Each block records the data submitted by nodes within the blockchain system. The blockchain in this application is an equity blockchain; for example, in a donation process, each donation record is stored in the blockchain.
[0203] See Figure 2 , Figure 2 This is a schematic diagram of a block structure provided in an exemplary embodiment of this application. Each block includes the hash value of the transaction records stored in this block (the hash value of this block) and the hash value of the previous block. The blocks are connected through their hash values to form a blockchain. Additionally, the block may include information such as a timestamp when it was generated. A blockchain, essentially a decentralized database, is a chain of data blocks linked together using cryptographic methods. Each data block contains relevant information used to verify the validity of the information (anti-counterfeiting) and to generate the next block.
[0204] Step 513: In response to the consensus nodes in the blockchain network reaching a consensus on the target data, the target data is stored in the blockchain.
[0205] Blockchain nodes broadcast target data to be uploaded to the blockchain network. Consensus nodes in the network, upon receiving the broadcast, can perform consensus operations. Once the target data passes consensus, the blockchain nodes can generate data blocks based on the corresponding chained hash table. The primary purpose of these consensus nodes is to verify the authenticity of the content being uploaded, preventing the same recipient from receiving multiple donations simultaneously on multiple platforms.
[0206] It is understood that the above embodiments can be implemented individually or in combination.
[0207] In conclusion, storing donation records on the blockchain makes the donation process transparent and open, and difficult to tamper with. It also avoids the problem of waste of resources caused by recipients launching multiple fundraising campaigns on multiple platforms within a certain period of time. The following explains the method of donating items from the perspective of the first client. Figure 14 A flowchart illustrating a method for donating items according to an exemplary embodiment of this application is shown. This method can be applied to, for example... Figure 2 In the computer system 100 shown, in the first terminal 120 or the second terminal 160, or in other terminals of the computer system 100, the method is applied to the first client, and the method includes the following steps: Step 1401: Display the live stream collected during the live donation process. The live stream includes the recipient and audio / video donation request information.
[0208] The first client corresponds to the recipient of the donation. This is illustrative; the recipient is a single individual, and the first client displays as shown below. Figure 6The live stream interface 20 shown here allows the recipient to state their donation request in audio format, such as needing a schoolbag. This is illustrative; the recipient is Elementary School X. The first client can also display other information such as... Figure 15 The live streaming interface shown in (a) 50 and as shown in (a) Figure 15 The live streaming interface 53 shown in (b) identifies the recipient as the live streaming account 51 and live streaming account 54 corresponding to X Elementary School. The live streaming interface 50 shows two students playing ping-pong, and the donation request information is an image type. The server calls a convolutional neural network to identify the scene corresponding to the image as a ping-pong scene (outdoor scene). The live streaming interface 53 shows a teacher giving a lesson, and the donation request information is an image type. The server calls a convolutional neural network to identify the scene corresponding to the image as a classroom scene (indoor scene).
[0209] Step 1402: In response to receiving the first donation list sent by the server, display at least one donation that matches the donation request information.
[0210] When the donation request information is in audio format, the server uses an information recognition model to interpret the recipient's speech as a text sequence. Based on this text sequence, the server obtains the donation index information and searches for donations on the e-commerce platform. Finally, it generates a list of donation requests based on the search results. Figure 6 The first donation list 21 is shown. The first donation list 21 displays multiple donations that match the donation demand information.
[0211] Step 1403: In response to receiving a confirmation operation on the first donation list, a second donation list is displayed, which includes the confirmed donations.
[0212] The confirmation operation allows the recipient to select the donations they need. For example, the recipient selected a backpack and shoes, which are marked with selection marker 22 to indicate which donations have been selected. The selected donations constitute the second donation list. The second donation list is a subset of the first donation list. In some embodiments, the second donation list is displayed as a part of the first donation list; in other embodiments, the second donation list is displayed separately in the live streaming interface.
[0213] Step 1404: In response to receiving the receiving operation, generate feedback information, which includes at least one of text information, video information, audio information and image information. The receiving operation is used to receive the donated items donated by the second client.
[0214] After receiving the donated items, recipients can record a thank-you video or voice message, or fill out a thank-you card or letter as feedback.
[0215] In summary, the method provided in this embodiment helps recipients confirm the donations they need by displaying a first donation list on the first client, enabling recipients to participate in the donation process in a more intuitive way.
[0216] The following explains the method of donating items from the perspective of the second client. Figure 16 A flowchart illustrating a method for donating items according to an exemplary embodiment of this application is shown. This method can be applied to, for example... Figure 2 In the computer system 100 shown, in the first terminal 120 or the second terminal 160, or in other terminals of the computer system 100, the method is applied to the second client, and the method includes the following steps: Step 1601: Display the live stream corresponding to the recipient collected during the live donation process. The live stream includes donation request information in audio and video format.
[0217] It is understandable that the above Figure 6 , Figure 15 The corresponding live stream interface can also be the live stream interface of the second client.
[0218] Step 1602: In response to the first client confirming the donations that match the donation request information, a second donation list is displayed, which includes a purchase link for at least one donation.
[0219] As an example, after the first client confirms, the following will be displayed: Figure 15 As shown in (a), the second donation list 52 is generated by the server using a convolutional neural network to identify the scene as a table tennis scene. The index information of the donation items matching this scene is the keyword "sports equipment". The server generates a first donation list based on the search results. After confirmation by the first client, the second donation list 52 is sent to the second client. Similarly, as... Figure 15 As shown in (b), when the server identifies the scene as a classroom scene, it matches the donation index information for the scene with the keyword "classroom supplies", and finally the second client displays the second donation list 55.
[0220] Step 1603: In response to receiving a donation operation from the second donation list, donate the donated items to the first client.
[0221] As an illustration, a user on the second client clicks the UI control corresponding to the chalk to donate chalk to the first client. This donation process is described in steps 5081 to 5083 and will not be repeated here.
[0222] It is understood that embodiments of the item donation method described from the client's perspective and from the server's perspective can be implemented in combination, and when implemented in combination, the embodiments described from each perspective are related to each other.
[0223] In summary, the method provided in this embodiment, by displaying a second donation list on a second client, enables donors to quickly identify the donated items to be donated to the recipients, allowing donors to participate in the donation process in a more intuitive way.
[0224] The donation method for goods is explained below. In one example, the process of identifying the index information corresponding to the donation request information is as follows: 1. The donation request information is in audio format.
[0225] Taking the recipient of the donation as an example, such as Figure 17 As shown, it illustrates a framework diagram of an item donation process provided by an exemplary embodiment of this application, the method including the following steps: Step 1701: Introduction of the recipient, stating the donation needs.
[0226] Once the charity live stream begins, the recipient can interact with the audience in the live stream room, introduce their situation and needs, and the donation system will automatically identify and extract the user's donation needs information to obtain the corresponding donation index information (such as the keywords of the items).
[0227] Step 1702: Facial recognition to record recipient information.
[0228] When the recipient's speech is detected, the donation system's hardware sends the collected audio and video to the server. Upon receiving the audio frames, the server decompresses and transcodes them, then matches them against a language model library for similarity matching. Finally, the extracted audio data is processed into text using acoustic, dictionary, and language models.
[0229] Step 1703, Donation Search.
[0230] After the text is output, the first client requests Content Delivery Network (CDN) data from the server. The server pulls big data from the cloud storage, uses AI technology to query online donation-related content and match it with the generated text content, thereby filtering out donation index information such as keywords in the voice message, and then performing a search based on the donation index information.
[0231] Step 1704: Confirmation of donated items.
[0232] Once the recipient confirms the donation, a donation list is sent to the second client. The donation list includes a purchase link for at least one donated item.
[0233] 2. The donation request information is image-based donation request information.
[0234] Taking a school as an example, such as Figure 18 As shown, it illustrates a framework diagram of an item donation process provided by an exemplary embodiment of this application, the method including the following steps: Step 1801: The environment in which the recipient lives.
[0235] When the live stream scene is identified as an outdoor scene, it will automatically be configured to match the outdoor sports scene. For example, if it is identified as a jump rope, the donated items will be automatically configured as jump rope-related items, such as "electronic jump rope" or "jump rope". When the live stream scene is switched to a table tennis scene, the donated items will be automatically configured as table tennis-related items, such as "table tennis table", "table tennis ball", or "table tennis racket". Similarly, when the live stream scene is identified as a classroom scene, the corresponding donated items will be learning or classroom-related items, such as "chalk", "desk", or "blackboard".
[0236] Step 1802, scene image recognition.
[0237] Scene recognition is mainly achieved through convolutional neural networks. It utilizes the principle of "strong correlation and strong similarity between adjacent pixels in the same image". Two adjacent pixels in an image are more related than two separate pixels in the image. The process of scene recognition technology consists of the following steps: information acquisition, preprocessing, feature extraction and selection, classifier design and classification decision.
[0238] Information acquisition refers to converting information such as light or sound into electrical information through sensors. In other words, it involves acquiring basic information about the live broadcast scene and transforming it into information that machines can understand through convolutional neural networks.
[0239] Preprocessing mainly refers to operations such as denoising, smoothing, and transformation in image processing, thereby enhancing the important features (feature vectors) of the live broadcast image.
[0240] Feature extraction and selection refer to the extraction and selection of features required in pattern recognition. In practice, convolutional neural networks (CNNs) consist of two layers: a convolutional layer and a pooling layer. The convolutional layer breaks down the scene image in the live stream into 3x3 or 5x5 pixel blocks, then arranges these output values in a group of images, using numbers to represent the content of each region in the image, with the axes representing height, width, and color. This yields a three-dimensional numerical representation of each image block. The pooling layer combines the spatial dimensions of this three-dimensional (or four-dimensional) image group with a sampling function, outputting a joint array (joint vector) that only contains the relatively important parts of the image.
[0241] Classifier design refers to training a recognition rule to obtain a feature classification, enabling image recognition technology to achieve a high recognition rate. This leads to the formation of relevant labels and categories, and then classification decisions are made to identify the scene category of the live broadcast room.
[0242] Step 1803: Conversion and extraction of donation index information.
[0243] The server invokes a convolutional neural network to obtain the donation index information corresponding to the scene image.
[0244] Step 1804: Donation search and recommendation.
[0245] Based on the donation index information identified through the two methods described above, the server requests the servers of the relevant e-commerce platforms. For example, it performs a keyword search, and the search results are combined with the e-commerce platform's comprehensive recommendation ranking (such as price, sales volume, positive reviews, logistics, etc.) to recommend the items with the highest overall rating, returning purchase links and attribute fields to the server. The server then transmits this data back to the client, at which point the recipient can see the intelligently recommended items in the live stream. After seeing the recommended items, the recipient needs to confirm them before the item is generated as a donation in the live stream. If the recipient is not satisfied with the recommended items, they can choose again (by repeating the above steps).
[0246] Steps 1705 to 1711 and 1805 to 1811 operate on the same principle, as follows: Once the recipient confirms the donated goods, a binding relationship is established between the recipient's identification information and the corresponding donated goods based on facial recognition and scene recognition. That is, when the donation system identifies the recipient in the live stream, the donation list will display the corresponding donated goods. Alternatively, if a corresponding scene is identified, the donation list will prioritize matching donations for that scene.
[0247] The technical principle of scene recognition is the same as above, and the implementation principle of face recognition is as follows: After the recipient confirms the donated goods, the client monitors and performs facial recognition on the recipient's face in real time. (This is assuming the recipient is a person.)
[0248] Face recognition mainly consists of three processes: face detection (FD), feature extraction (FE), and face recognition (FR).
[0249] 1.1 Face Detection During the live donation process, the client (the first client) detects and extracts face images from the live video stream, employing Haar features and the AdaBoost algorithm. Haar features are features that reflect the grayscale changes of an image, calculating the difference between pixel modules, including edge features, linear features, center features, and diagonal features. The AdaBoost algorithm uses the entire training set to train a weak learning machine, learning from the errors of the previous weak learning machine to build a classifier with better classification performance. A cascaded classifier is trained to classify each pixel block in the image. If a rectangular region passes the cascaded classifier, it is identified as a face image. During detection, the position and scale of the detection window are continuously adjusted within an image to find faces.
[0250] 1.2 Feature Extraction After detecting the recipient's face, the process begins extracting features related to the recipient's facial expressions and body language. Feature extraction refers to representing facial information using numerical values; these numbers are the features to be extracted. Common facial features are divided into two categories: geometric features and representational features. Geometric features refer to the geometric relationships between facial features such as the eyes, nose, and mouth, such as distance, area, and angle. Representational features utilize the grayscale information of the facial image to extract global or local features using algorithms. A commonly used feature extraction algorithm is the Linear Binary Patterns (LBP) algorithm. The LBP algorithm first divides the image into several regions, and then thresholds the 640x960 pixel neighborhood of each region using the center value, treating the result as a binary number.
[0251] 1.3 Facial Recognition The client sends the recipient's facial features to the server. When the same face is detected again, the donated items associated with that face will be displayed first.
[0252] The donation process is as follows: When a donor (the user corresponding to the second client) wants to make a donation, they can click on the donation list to see the items that match the current recipient and the items they need to donate. They can then click to donate. Donors can donate the required amount of currency for the item at once, or they can donate a random amount. When the donation amount reaches the set price, the item donation system automatically places an order for the item on the e-commerce platform. The server will send the recipient's name, delivery address, order price, and order quantity to the e-commerce platform, which will then handle the subsequent logistics services. The order and logistics information will be recorded in the donation record, allowing both the donor and the recipient to obtain the relevant information in a timely manner.
[0253] The process after donation is as follows: When recipients receive donated items, they can record a thank-you video and upload it to the completed donation record. Donors can then view the donation history through the live stream.
[0254] Once the recipient confirms receipt, they will provide confirmation and feedback. Completed donation records (including livestream platform identifier, recipient identifier, recipient name, donated items, quantity, and donation time) will be generated and uploaded to the blockchain. After successful blockchain uploading, the recipient cannot initiate another fundraising campaign for a period of time, and donors can view historical fundraising information. This prevents the same recipient from receiving the same donations on multiple platforms or within the same period.
[0255] The rules for putting data on the blockchain are as follows: 1) Associate the live streaming platform identifier, the recipient identifier, and the donation record to generate target data. The live streaming platform identifier is used to uniquely identify a platform and can be a string containing at least one character from numbers, letters, and symbols.
[0256] The server can associate the local live streaming platform identifier, the recipient identifier, and the donation record to generate target data. The target data is in key-value format. The server can generate the key element in the key-value pair based on the live streaming platform identifier, and generate the value element in the key-value pair based on the recipient identifier and the donation record. By associating the key element and the value element, the target data can be generated.
[0257] 2) Upload the target data to a blockchain node in the blockchain network; the uploaded target data is used to instruct the blockchain node to write the target data into a data block.
[0258] In a blockchain network, a blockchain node is a data processing node that receives and processes externally transmitted data. After processing the target data, the blockchain node sends it to a consensus node for consensus calculation. Once consensus is reached, the target data is written into a data block. Servers can upload target data to blockchain nodes via network connections. A blockchain node can also write target data corresponding to multiple live streaming platform identifiers and donation recipient identifiers into a block within a preset time period.
[0259] 3) The uploaded target data instructs blockchain nodes to perform hash operations on the target data and, based on the hash result, store the target data in the hash chain corresponding to the live streaming platform identifier in the chained hash table. After consensus is reached in the chained hash table, a block of the target data is generated based on the chained hash table. The chained hash table includes hash chains corresponding to more than one live streaming platform identifier. Blockchain nodes can use a chained hash table to store the target data. The target data corresponding to each platform identifier can be stored on the same hash chain in the chained hash table. Blockchain nodes can pass the key element in the target data to a hash function. The hash function determines which hash chain the target data corresponds to and its specific position within the hash chain through hashing.
[0260] For example, define a hash function that maps the key value k to a position x in a linked hash table. x is called the hash code of k, expressed as a function: h(k) = x. The purpose of this hash function is to distribute the key elements as evenly and randomly as possible across the linked hash table.
[0261] 4) Blockchain nodes broadcast the target data to be uploaded to the blockchain network. Consensus nodes in the blockchain network execute consensus operations upon receiving the broadcast. Once the target data passes consensus, the blockchain nodes can generate data blocks based on the corresponding chained hash table. The main purpose of this consensus node is to verify the authenticity of the content being uploaded, preventing the same recipient from receiving multiple identical donations on multiple live streaming platforms simultaneously.
[0262] In summary, by using live streaming and leveraging voice recognition, facial recognition, image recognition, and blockchain technology, the system matches recipients with the donations they need. When a recipient changes, the system automatically identifies and updates the donations in the live stream, simplifying the donation process. Furthermore, completed donation records are stored on the blockchain to prevent recipients from receiving the same donations simultaneously, ensuring transparency and openness in charitable donation information.
[0263] The following are device embodiments of this application, which can be used to execute the method embodiments of this application. For details not disclosed in the device embodiments of this application, please refer to the method embodiments of this application.
[0264] Figure 19 A block diagram of a donation device for items according to an embodiment of this application is shown. The device includes: The first display module 1910 is used to display the live stream collected during the live donation process. The live stream includes the recipients of the donations and includes audio and video donation request information. The first display module 1910 is configured to display at least one donation that matches the donation request information in response to receiving a first donation list sent by the server; The first display module 1910 is configured to display a second donation list in response to receiving a confirmation operation on the first donation list, the second donation list including confirmed donations; The generation module 1920 is used to generate feedback information in response to receiving a receiving operation. The feedback information includes at least one of text information, video information, audio information, and image information. The receiving operation is used to receive donated items donated by the second client.
[0265] Figure 20 A block diagram of an item donation device provided in an exemplary embodiment of this application is shown, the device comprising: The second display module 2010 is used to display the live stream corresponding to the recipient collected during the live donation process. The live stream includes donation request information in audio and video format. The second display module 2010 is used to display a second donation list in response to the first client's confirmation of donations that match the donation request information. The second donation list includes a purchase link for at least one donation. The sending module 2020 is used to send donated items to the first client in response to receiving a donation operation from the second donation list.
[0266] Figure 21 A block diagram of an item donation device provided in an exemplary embodiment of this application is shown, the device comprising: Information recognition model 2110 is used to identify the donation index information corresponding to the donation demand information and send a search request to the e-commerce platform based on the donation index information. Information recognition model 2110 is a machine learning model with donation index information recognition function. The generation module 2120 is used to generate a first donation list based on the search results of the e-commerce platform. The first donation list includes a purchase link for at least one donation found based on the donation index information. Sending module 2130 is used to send the first donation list to the first client; The sending module 2130 is configured to send a second donation list to at least one second client in response to receiving a confirmation request from a first client. The second donation list is a subset of the first donation list.
[0267] In an optional embodiment, the device further includes an acquisition module 2140 and a processing module 2150; The acquisition module 2140 is used to acquire the type of donation demand information; The processing module 2150 is used to determine the information recognition model 2110 according to the type of donation demand information; call the information recognition model 2110 to recognize the donation demand information, and obtain the donation index information corresponding to the donation demand information. The donation index information is used to search for purchase links of donations.
[0268] In one optional embodiment, the type of donation request information includes audio type; The information recognition model 2110 is used to process the audio frames in the live stream corresponding to the recipient identifier in response to the donation request information being of the audio type, and obtain the donation index information corresponding to the audio frame. The donation index information is used to search for purchase links of donations.
[0269] In an optional embodiment, the information recognition model 2110 includes an acoustic model 21101 and a language model 21102, and the device includes a matching module 2160. The matching module 2160 is used to match the audio frame with the reference speech template to obtain the speech information corresponding to the audio frame; the processing module 2150 is used to call the language model 21102 to process the speech information to obtain the text sequence corresponding to the speech information; call the acoustic model 21101 to process the feature vector of the audio frame and the text sequence to obtain the similarity probability between the audio frame and the text sequence; determine the donation index information corresponding to the audio frame based on the similarity probability, and the donation index information is used to search for purchase links of donations.
[0270] In an optional embodiment, the processing module 2150 is used to divide the audio frames to obtain segmented audio frames; process each segmented audio frame to obtain the feature vector corresponding to each segmented audio frame; and obtain the feature vector of the audio frame based on the feature vector of each segmented audio frame.
[0271] In an optional embodiment, the type of donation demand information includes image type, and the information recognition model 2110 includes a convolutional neural network 21103; The processing module 2150 is used to respond to the fact that the donation request information is of the image type, and call the convolutional neural network 21103 to identify the scene image corresponding to the recipient identifier in the live stream, so as to obtain the scene corresponding to the scene image. The scene image represents the scene in which the recipient is located. The matching module 2160 is used to match the donation index information corresponding to the scene. The donation index information is used to search for the purchase link of the donation.
[0272] In an optional embodiment, the convolutional neural network 21103 includes a feature extractor and a classifier; The processing module 2150 is used to respond to the fact that the donation request information is of the image type, call the feature extractor to preprocess the scene image to obtain the joint vector of the scene image; and call the classifier to classify the joint vector to obtain the scene corresponding to the scene image.
[0273] In an optional embodiment, the feature extractor includes a convolutional layer and a pooling layer; The processing module 2150 is used to call the convolutional layer to preprocess the scene image to obtain the pixel block corresponding to the scene image. The pixel block includes the height, width and color of the scene image. The converging layer is called to combine the pixel block with the sampling function to obtain the joint vector of the scene image.
[0274] In an optional embodiment, the acquisition module 2140 is used to acquire item information of the donated items based on the search results; the processing module 2150 is used to extract key images corresponding to the donated items from the item information, the key images representing the attributes of the donated items; and bind the key images with the purchase links of the donated items to obtain a first binding relationship; the generation module 2120 is used to generate a first donation list based on the first binding relationship.
[0275] In an optional embodiment, the acquisition module 2140 is configured to, in response to receiving a confirmation request sent by the first client, acquire the recipient identifier corresponding to the live stream, wherein the confirmation request carries at least one item identifier of the donated item, and the recipient identifier includes at least one of the recipient user account and the live stream identifier; the processing module 2150 is configured to bind the recipient identifier with the item identifier of the donated item to obtain a second binding relationship; the sending module 2130 is configured to, in response to the second client displaying the live stream corresponding to the recipient identifier, send a second donation list to the second client according to the second binding relationship, wherein the second donation list includes at least one purchase link for the donated item; In an optional embodiment, the device includes a receiving module 2170; The sending module 2130 is used to send a purchase request to the e-commerce platform when the value of the donated items donated by the second client reaches the benchmark value. The purchase request carries the recipient identifier, the item identifier of the donated items, and the delivery address corresponding to the recipient. In response to receiving the payment amount corresponding to the donated items sent by the e-commerce platform, the payment currency is transferred from the account corresponding to the second client to the account corresponding to the e-commerce platform. The payment amount is calculated by the e-commerce platform based on the purchase request. The receiving module 2170 is used to receive the purchase order corresponding to the donated goods sent by the e-commerce platform after the payment currency transfer is successful. The purchase order is used by the e-commerce platform to deliver the donated goods to the first client.
[0276] In an optional embodiment, the generation module 2120 is configured to generate a donation record in response to receiving feedback information. The donation record includes at least one of a live streaming platform identifier, a recipient identifier, and an item identifier of the donated item.
[0277] In an optional embodiment, the device includes a storage module 2180; The generation module 2120 is used to generate target data based on donation records. The target data includes at least one of the following: live streaming platform identifier, recipient identifier, and item identifier of the donated item. The sending module 2130 is used to send the target data to blockchain nodes in the blockchain network. The storage module 2180 is used to store the target data in the blockchain in response to the consensus nodes in the blockchain network reaching a consensus on the target data.
[0278] Figure 22 This illustration shows a schematic diagram of a server provided in an exemplary embodiment of this application. The server may be as follows: Figure 2 Server 140 in the computer system 100 shown. Specifically: Server 2200 includes a central processing unit (CPU) 2201, a system memory 2204 including random access memory (RAM) 2202 and read-only memory (ROM) 2203, and a system bus 2205 connecting the system memory 2204 and the CPU 2201. Server 2200 also includes a basic input / output system (I / O system) 2206 that facilitates the transfer of information between various devices within the computer, and a mass storage device 2207 for storing the operating system 2213, application programs 2214, and other program modules 2215.
[0279] The basic input / output system 2206 includes a display 2208 for displaying information and an input device 2209 for user input, such as a mouse or keyboard. Both the display 2208 and the input device 2209 are connected to the central processing unit 2201 via an input / output controller 2210 connected to the system bus 2205. The basic input / output system 2206 may also include the input / output controller 2210 for receiving and processing input from multiple other devices such as a keyboard, mouse, or electronic stylus. Similarly, the input / output controller 2210 also provides output to a display screen, printer, or other types of output devices.
[0280] Mass storage device 2207 is connected to central processing unit 2201 via a mass storage controller (not shown) connected to system bus 2205. Mass storage device 2207 and its associated computer-readable media provide non-volatile storage for server 2200. That is, mass storage device 2207 may include computer-readable media (not shown) such as hard disk or compact disc read-only memory (CD-ROM) drives.
[0281] Computer-readable media can include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid-state storage technologies, CD-ROM, digital versatile optical disc (DVD), or solid-state drives (SSD), other optical storage, magnetic tape cassettes, magnetic tape, disk storage, or other magnetic storage devices. Random access memory can include resistive random access memory (ReRAM) and dynamic random access memory (DRAM). Of course, those skilled in the art will recognize that computer storage media are not limited to the above-mentioned types. The system memory 2204 and the mass storage device 2207 mentioned above can be collectively referred to as memory.
[0282] According to various embodiments of this application, server 2200 can also be connected to a remote computer on a network, such as the Internet. That is, server 2200 can be connected to network 2212 via network interface unit 2211 connected to system bus 2205, or network interface unit 2211 can be used to connect to other types of networks or remote computer systems (not shown).
[0283] The aforementioned memory also includes one or more programs, which are stored in the memory and configured to be executed by the CPU.
[0284] Figure 23 A structural block diagram of a computer device 2300 provided in an exemplary embodiment of this application is shown. The computer device 2300 may be a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP23 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. The computer device 2300 may also be referred to as a user device, portable computer device, laptop computer device, desktop computer device, or other names.
[0285] Typically, computer device 2300 includes a processor 2301 and a memory 2302.
[0286] Processor 2301 may include one or more processing cores, such as a 23-core processor, an 8-core processor, etc. Processor 2301 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 2301 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 2301 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 2301 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0287] The memory 2302 may include one or more computer-readable storage media, which may be non-transitory. The memory 2302 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 2302 are used to store at least one instruction, which is executed by the processor 2301 to implement the article donation method provided in the method embodiments of this application.
[0288] In some embodiments, the computer device 2300 may optionally include a peripheral device interface 2303 and at least one peripheral device. The processor 2301, memory 2302, and peripheral device interface 2303 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 2303 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 2304, a touch display screen 2305, a camera 2306, an audio circuit 2307, a positioning component 2308, and a power supply 2309.
[0289] Peripheral device interface 2303 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 2301 and memory 2302. In some embodiments, processor 2301, memory 2302 and peripheral device interface 2303 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 2301, memory 2302 and peripheral device interface 2303 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0290] The radio frequency (RF) circuit 2304 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 2304 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 2304 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 2304 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The RF circuit 2304 can communicate with other computer devices through at least one wireless communication protocol. This wireless communication protocol includes, but is not limited to: metropolitan area networks (MANs), various generations of mobile communication networks (2G, 3G, 23G, and 5G), wireless local area networks (WLANs), and / or Wi-Fi (Wireless-Fidelity) networks. In some embodiments, the RF circuit 2304 may also include circuitry related to NFC (Near Field Communication), which is not limited in this application.
[0291] Display screen 2305 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 2305 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 2301 for processing. In this case, display screen 2305 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 2305, which is located on the front panel of computer device 2300; in other embodiments, there may be at least two display screens 2305, respectively located on different surfaces of computer device 2300 or in a folded design; in still other embodiments, display screen 2305 may be a flexible display screen, located on a curved or folded surface of computer device 2300. Furthermore, display screen 2305 may also be configured as a non-rectangular, irregular shape, i.e., a non-rectangular screen. The display screen 2305 can be made of materials such as LCD (Liquid Crystal Display) and OLED (Organic Light-Emitting Diode).
[0292] The camera assembly 2306 is used to acquire images or videos. Optionally, the camera assembly 2306 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the computer device, and the rear-facing camera is located on the back of the computer device. In some embodiments, there are at least two rear-facing cameras, which are any one of a main camera, a depth-sensing camera, a wide-angle camera, and a telephoto camera, to achieve background blurring by fusion of the main camera and the depth-sensing camera, panoramic shooting by fusion of the main camera and the wide-angle camera, VR (Virtual Reality) shooting, or other fusion shooting functions. In some embodiments, the camera assembly 2306 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm-light flash and a cool-light flash, which can be used for light compensation at different color temperatures.
[0293] The audio circuit 2307 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, converting the sound waves into electrical signals that are input to the processor 2301 for processing, or input to the radio frequency circuit 2304 for voice communication. For stereo sound acquisition or noise reduction purposes, multiple microphones may be used, each located in a different part of the computer device 2300. The microphone may also be an array microphone or an omnidirectional microphone. The speaker is used to convert electrical signals from the processor 2301 or the radio frequency circuit 2304 into sound waves. The speaker may be a conventional diaphragm speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can convert electrical signals not only into audible sound waves but also into inaudible sound waves for purposes such as distance measurement. In some embodiments, the audio circuit 2307 may also include a headphone jack.
[0294] Positioning component 2308 is used to locate the current geographic location of computer device 2300 in order to enable navigation or LBS (Location Based Service). Positioning component 2308 can be a positioning component based on the US GPS (Global Positioning System), China's BeiDou system, Granas system, or Galileo system.
[0295] Power supply 2309 is used to supply power to the various components in computer device 2300. Power supply 2309 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 2309 includes a rechargeable battery, the rechargeable battery can support wired or wireless charging. The rechargeable battery can also be used to support fast charging technology.
[0296] In some embodiments, the computer device 2300 further includes one or more sensors 2310. The one or more sensors 2310 include, but are not limited to: an accelerometer 2311, a gyroscope 2312, a pressure sensor 2313, a fingerprint sensor 2314, an optical sensor 2315, and a proximity sensor 2316.
[0297] Accelerometer 2311 can detect the magnitude of acceleration along the three coordinate axes of a coordinate system established by computer device 2300. For example, accelerometer 2311 can be used to detect the components of gravitational acceleration along the three coordinate axes. Processor 2301 can control touchscreen 2305 to display the user interface in landscape or portrait view based on the gravitational acceleration signal acquired by accelerometer 2311. Accelerometer 2311 can also be used for games or for acquiring user motion data.
[0298] The gyroscope sensor 2312 can detect the orientation and rotation angle of the computer device 2300. The gyroscope sensor 2312 can work in conjunction with the accelerometer sensor 2311 to collect 3D motion data from the user on the computer device 2300. Based on the data collected by the gyroscope sensor 2312, the processor 2301 can perform the following functions: motion sensing (e.g., changing the UI based on the user's tilt), image stabilization during shooting, game control, and inertial navigation.
[0299] The pressure sensor 2313 can be disposed on the side bezel of the computer device 2300 and / or on the lower layer of the touch display screen 2305. When the pressure sensor 2313 is disposed on the side bezel of the computer device 2300, it can detect the user's grip signal on the computer device 2300, and the processor 2301 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 2313. When the pressure sensor 2313 is disposed on the lower layer of the touch display screen 2305, the processor 2301 can control the operable controls on the UI interface based on the user's pressure operation on the touch display screen 2305. The operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.
[0300] The fingerprint sensor 2314 is used to collect a user's fingerprint. The processor 2301 identifies the user based on the fingerprint collected by the fingerprint sensor 2314, or vice versa. When the user's identity is verified as trusted, the processor 2301 authorizes the user to perform relevant sensitive operations, including unlocking the screen, viewing encrypted information, downloading software, making payments, and changing settings. The fingerprint sensor 2314 can be located on the front, back, or side of the computer device 2300. When the computer device 2300 has physical buttons or a manufacturer's logo, the fingerprint sensor 2314 can be integrated with the physical buttons or the manufacturer's logo.
[0301] The optical sensor 2315 is used to collect ambient light intensity. In one embodiment, the processor 2301 can control the display brightness of the touch screen 2305 based on the ambient light intensity collected by the optical sensor 2315. Specifically, when the ambient light intensity is high, the display brightness of the touch screen 2305 is increased; when the ambient light intensity is low, the display brightness of the touch screen 2305 is decreased. In another embodiment, the processor 2301 can also dynamically adjust the shooting parameters of the camera assembly 2306 based on the ambient light intensity collected by the optical sensor 2315.
[0302] The proximity sensor 2316, also known as a distance sensor, is typically located on the front panel of the computer device 2300. The proximity sensor 2316 is used to detect the distance between the user and the front of the computer device 2300. In one embodiment, when the proximity sensor 2316 detects that the distance between the user and the front of the computer device 2300 is gradually decreasing, the processor 2301 controls the touch display screen 2305 to switch from a screen-on state to a screen-off state; when the proximity sensor 2316 detects that the distance between the user and the front of the computer device 2300 is gradually increasing, the processor 2301 controls the touch display screen 2305 to switch from a screen-off state to a screen-on state.
[0303] Those skilled in the art will understand that Figure 23 The structure shown does not constitute a limitation on the computer device 2300, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0304] Embodiments of this application also provide a computer device, which includes a processor and a memory. The memory stores at least one instruction, at least one program, code set, or instruction set, which is loaded and executed by the processor to implement the item donation method in the above embodiments.
[0305] Embodiments of this application also provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the item donation method described in the above embodiments.
[0306] It should be understood that "multiple" as used in this article refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0307] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0308] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A method for donating goods, characterized in that, Applied to a second client, the method includes: The live stream is displayed, which is collected during the live donation process and corresponds to the recipient. The live stream includes donation request information in audio and video format. In response to the first client of the recipient confirming the donations that match the donation request information, a second donation list is displayed; In response to receiving a donation operation for a target donation in the second donation list, a payment process is executed based on the donation amount for the target donation; In response to the total value of cumulative donations to the target donation reaching the nominal value of the target donation, a donation process is executed to donate the target donation to the recipient. The total value is the sum of donations made by at least one of the second clients for the target donation.
2. The method according to claim 1, characterized in that, The display of the second donation list includes: In the display interface of the live stream room to which the live stream belongs, at least one confirmed donation icon and purchase link are displayed in a list. The icon of the confirmed donation is extracted from the key image of the confirmed donation, or the icon of the confirmed donation is generated based on the key image of the confirmed donation.
3. The method according to claim 1, characterized in that, In response to receiving a donation operation for a target donation in the second donation list, the method further includes: In response to a selection operation for the target donation, the available donation amount for the target donation is displayed; In response to a confirmation operation for the amount that can be donated, the confirmation operation is identified as a donation operation for the target donation.
4. The method according to claim 3, characterized in that, The method further includes: When the available donation amount of the target donation is displayed, a random amount control is shown; In response to a trigger operation on the random amount control, the amount of donation is randomly switched and the new donation amount is displayed.
5. The method according to claim 1, characterized in that, After executing the donation process of donating the target donated goods to the recipient, the method further includes: In the second donation list, the status of the target donation is updated to "order placed".
6. The method according to claim 1, characterized in that, After executing the donation process of donating the target donated goods to the recipient, the method further includes: In response to the first client performing a receiving operation for the target donation, feedback information from the recipient regarding the target donation is displayed.
7. The method according to claim 1, characterized in that, After executing the donation process of donating the target donated goods to the recipient, the method further includes: The donation record corresponding to the target donated item is displayed. The donation record includes the live streaming platform identifier, the recipient identifier, and the item identifier of the target donated item. The donation records are stored in the blockchain network after consensus is reached by consensus nodes in the blockchain network.
8. A method for donating goods, characterized in that, The method includes: Displays the first donation list generated based on the live stream collected during the live donation process; The first donation list includes at least one donated item that matches the donation request information; the live stream includes the recipient of the donation and includes audio and video donation request information. In response to receiving a confirmation operation on the first donation list, a second donation list is displayed, the second donation list including the donations that have been confirmed in the first donation list; In response to the total value of cumulative donations for the target donation reaching the benchmark value of the target donation, the order information for the target donation is displayed. The target donation is the donation selected by the second client from the second donation list, and the total value is the sum of donations made by at least one of the second clients for the target donation.
9. The method according to claim 8, characterized in that, The method further includes: Upon receiving a receipt operation, the system displays the feedback information entered by the recipient. The feedback information includes at least one of text information, video information, audio information and image information, and the receiving operation is used to receive the donated items donated by the second client; The feedback information is sent to the second client to display the feedback information to the second client that participated in the donation.
10. The method according to claim 8, characterized in that, The first donation list is generated by searching the e-commerce platform based on the donation index information used to search for the purchase links of the donated items. When the donation request information is of the audio type, the donation index information is obtained by processing the audio frames in the live stream that correspond to the recipient identifier.
11. The method according to claim 8, characterized in that, The first donation list is generated by searching the e-commerce platform based on the donation index information used to search for the purchase link of the donated items. When the donation request information is an image type, the donation index information is obtained by matching the scene where the recipient is located. The scene where the recipient is located is obtained by identifying the scene image in the live stream that corresponds to the recipient's identifier.
12. The method according to claim 8, characterized in that, The first donation list, generated based on the live stream collected during the live donation process, includes: In the display interface of the live stream room to which the live stream belongs, at least one donation icon and purchase link are displayed in a list. The icon of the donated item is extracted from the key image of the donated item or the icon of the donated item is generated based on the key image of the donated item.
13. The method according to claim 8, characterized in that, Before displaying the first donation list generated from the live stream collected during the live donation process, the method further includes: Obtain item identifiers that have a second binding relationship with the recipient identifiers of the live stream; The first donation list is generated based on the obtained item identifiers.
14. The method according to claim 8, characterized in that, The display of order information corresponding to the target donation includes: Perform at least one of the following processes: In the second donation list, the display status of the target donation will be updated to "order placed"; This displays the logistics order information for the e-commerce platform to deliver the target donated goods to the corresponding delivery address of the recipient.
15. The method according to claim 8, characterized in that, The method further includes: The donation record corresponding to the target donated item is displayed. The donation record includes the live streaming platform identifier, the recipient identifier, and the item identifier of the target donated item. The donation records are stored in the blockchain network after consensus is reached by consensus nodes in the blockchain network.
16. A donation device for goods, characterized in that, The device includes: The second display module is used to display the live stream corresponding to the recipient collected during the live donation process. The live stream includes donation request information in audio and video format. The second display module is used to display a second donation list in response to the confirmation of the donation request information by the first client of the recipient. The second display module is used to respond to receiving a donation operation for a target donation in the second donation list and to execute a payment process based on the donation amount for the target donation; The second display module is used to execute a donation process to donate the target donation to the recipient in response to the total value of the cumulative donations to the target donation reaching the caliber value of the target donation. The total value is the sum of donations made by at least one second client for the target donation.
17. A donation device for goods, characterized in that, The device includes: The first display module is used to display the first donation list generated based on the live stream collected during the live donation process; The first donation list includes at least one donated item that matches the donation request information; the live stream includes the recipient of the donation and includes audio and video donation request information. A first display module is configured to display a second donation list in response to receiving a confirmation operation on the first donation list, the second donation list including the donations confirmed in the first donation list; The first display module is used to display the order information corresponding to the target donation in response to the total value of the cumulative donations for the target donation reaching the benchmark value of the target donation. The target donation is the donation selected by the second client from the second donation list, and the total value is the sum of donations made by at least one of the second clients for the target donation.
18. A computer device, characterized in that, The computer device includes a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set, or an instruction set, wherein the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the donation method of any one of claims 1 to 7 or the donation method of any one of claims 8 to 15.
19. A computer-readable storage medium storing a computer program that, when executed by a processor, implements the donation method of any one of claims 1 to 7 or the donation method of any one of claims 8 to 15.
20. A computer program product comprising computer-executable instructions, characterized in that, When the computer-executable instructions are executed by a processor, they implement the donation method of any one of claims 1 to 7 or the donation method of any one of claims 8 to 15.