Related processing method and related device of video message
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2024-12-17
- Publication Date
- 2026-06-19
Smart Images

Figure CN122247959A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of instant messaging technology, specifically to a method and device for processing video messages. Background Technology
[0002] With the development of instant messaging technology, using instant messaging applications to send video messages has greatly satisfied users' needs for real-time video transmission. However, in related technologies, after the sender sends a video message to the receiver, the receiver needs to download the video to their local machine before playing it. This process carries the risk of video leakage. Summary of the Invention
[0003] In view of this, embodiments of this application propose a method and device for processing video messages to address the risk of video messages being leaked in related technologies.
[0004] The embodiments of this application are implemented using the following technical solutions:
[0005] In a first aspect, embodiments of this application provide a method for processing video messages, applied to a client. The method includes: displaying a session interface of a target session, wherein the session messages displayed in the session interface include a first video message; sending a video request to an application server in response to a triggering operation on the first video message; receiving preview information returned by the application server; the preview information includes a first online preview address; the first online preview address includes an online preview credential for a first video requested by the application server from a file management server; the first video refers to the video pointed to by the first video message; sending an online video request to the file management server according to the first online preview address; receiving an online video corresponding to the first video returned by the file management server; the online video is returned by the file management server after verifying the validity of the online preview credential carried in the online video request; the online video is obtained by the file management server through online video conversion of the stored first video; and playing the online video corresponding to the first video in the video preview interface.
[0006] Secondly, embodiments of this application provide a method for sending video messages. The method includes: in response to a sending operation triggered for a first video in a session interface of a target session, uploading the first video to a file management server; receiving an upload success notification from the file management server, the upload success notification including a second identifier generated by the file management server for the first video; sending a video registration request to an application server based on the second identifier of the first video, so that the application server generates a first identifier of the first video in response to the video registration request and stores file information of the first video, the file information of the first video including the first identifier and the second identifier of the first video; receiving the first identifier of the first video returned by the application server; encapsulating a video message based on the first identifier of the first video to obtain a first video message; the first video message including the first identifier of the first video; and sending the first video message to the application server, so that the application server sends the first video message to a receiving client in the target session.
[0007] Thirdly, embodiments of this application provide a video message processing method applied to an application server, comprising: receiving a video request sent by a client; the video request being sent in response to a triggering operation of a first video message in a target session; requesting an online preview credential for a first video pointed to by the first video message from a file management server; generating a first online preview address based on the online preview credential, and generating preview information based on the first online preview address; sending the preview information to the client, so that the client obtains the online video corresponding to the first video based on the first online preview address in the preview information, and plays the online video corresponding to the first video in a video preview interface; the online video is obtained by the file management server converting the stored first video into an online video, and is returned to the client by the file management server after verifying the validity of the online preview credential carried by the first online preview address.
[0008] Fourthly, this application provides a video message processing apparatus applied to a client. The video message processing apparatus includes: a display module for displaying a session interface of a target session, wherein the session messages displayed in the session interface include a first video message; a first sending module for sending a video request to an application server in response to a triggering operation on the first video message; a first receiving module for receiving preview information returned by the application server, wherein the preview information includes a first online preview address; the first online preview address includes an online preview credential for the first video requested by the application server from a file management server; the first video refers to the video pointed to by the first video message; a second sending module for sending an online video request to the file management server according to the first online preview address; a second receiving module for receiving an online video corresponding to the first video returned by the file management server; the online video is returned by the file management server after verifying the validity of the online preview credential carried in the online video request; the online video is obtained by the file management server through online video conversion of the stored first video; and a playback module for playing the online video corresponding to the first video in the video preview interface.
[0009] In some embodiments, the video message processing apparatus further includes: a third sending module, configured to send a video download request to an application server in response to a download operation triggered by the first video message; the video download request includes a first identifier of the first video; a third receiving module, configured to receive a video download address of the first video returned by the application server; the video download address is obtained by the application server after obtaining a second identifier of the first video based on the first identifier, and then requesting an address from a file management server based on the second identifier of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; a request download module, configured to request the download of the second video from the file management server based on the video download address; and a video receiving module, configured to receive the second video returned by the file management server.
[0010] In some embodiments, the download operation is an operation triggered by a download control; the video message processing apparatus further includes: a fourth sending module, configured to send a file information request for the first video to the application server according to a first identifier of the first video in the first video message; a fourth receiving module, configured to receive file prompt information returned by the application server, the file prompt information including a download marker for the first video; and a download control display module, configured to display the download control for the first video if the download marker for the first video is a marker indicating that downloading is allowed; and to determine that the download marker for the first video is a marker indicating that downloading is allowed when the application server determines that the creation object of the first video is not in the restricted object list.
[0011] In some embodiments, the online preview certificate has an expiration date; the video message processing device further includes: an expiration reminder module, used to receive and display an expiration reminder message sent by the file management server; the expiration reminder message is returned by the file management server after verifying that the online preview certificate carried in the online video request has exceeded its corresponding expiration date.
[0012] In some embodiments, the first video is prohibited from downloading, and the video message processing device further includes at least one of the following: a prohibited download prompt module for displaying a prohibited download prompt message for the first video; and a blocking module for blocking the download control for the first video.
[0013] In some embodiments, the client is an enterprise instant messaging client with administrator privileges; the video message processing device further includes: a configuration interface display module for displaying a configuration interface; an adding module for adding the selected object to the restricted object list corresponding to the enterprise to which the client belongs in response to a restricted object selection operation triggered in the configuration interface; and a list sending module for sending the restricted object list corresponding to the enterprise to which the client belongs to the application server.
[0014] In some embodiments, the client is an enterprise instant messaging client with administrator privileges; the video message processing device further includes: a sixth sending module for sending a video operation record request to the application server; a sixth receiving module for receiving and displaying the video operation record data returned by the application server; the video operation records in the video operation record data are generated by the application server based on the operations triggered by each video message in the session with the enterprise to which the client belongs.
[0015] In some embodiments, the video preview interface includes a leak-proof marker.
[0016] Fifthly, embodiments of this application provide a video message sending apparatus, comprising: a video upload module, configured to upload the first video to a file management server in response to a sending operation triggered for a first video in a session interface of a target session; a first notification receiving module, configured to receive an upload success notification returned by the file management server, the upload success notification including a second identifier generated by the file management server for the first video; a fifth sending module, configured to send a video registration request to an application server based on the second identifier of the first video, so that the application server generates a first identifier of the first video in response to the video registration request and stores file information of the first video, the file information of the first video including the first identifier and the second identifier of the first video; a fifth receiving module, configured to receive the first identifier of the first video returned by the application server; a message encapsulation module, configured to encapsulate a video message based on the first identifier of the first video to obtain a first video message; the first video message including the first identifier of the first video; and a video message sending module, configured to send the first video message to the application server, so that the application server sends the first video message to a receiving client in the target session.
[0017] Sixthly, embodiments of this application provide a video message processing apparatus applied to an application server. The video message processing apparatus includes: a video request receiving module, configured to receive a video request sent by a client; the video request is sent in response to a triggering operation of a first video message in a target session; an online preview credential request module, configured to request an online preview credential for a first video pointed to by the first video message from the file management server; a preview information generation module, configured to generate a first online preview address based on the online preview credential, and generate preview information based on the first online preview address; and a preview information sending module, configured to send the preview information to the client, so that the client obtains the online video corresponding to the first video based on the first online preview address in the preview information, and plays the online video corresponding to the first video in a video preview interface; the online video is obtained by the file management server through online video conversion of the stored first video, and is returned to the client by the file management server after verifying the validity of the online preview credential carried by the first online preview address.
[0018] In some embodiments, the video request includes a first identifier of the first video; the online preview credential request module includes: a second identifier acquisition unit, configured to acquire a second identifier of the first video from the file information of the first video based on the first identifier of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; the first identifier of the first video is generated by the application server for the first video; and a credential request unit, configured to request an online preview credential for the first video from the file management server based on the second identifier of the first video.
[0019] In some embodiments, the video message processing apparatus further includes: a video download request receiving module, configured to receive a video download request sent by the client; the video download request includes a first identifier of the first video; a second identifier acquisition module, configured to acquire a second identifier of the first video from the file information of the first video based on the first identifier of the first video; a video download address request module, configured to request a video download address of the first video from the file management server based on the second identifier of the first video; and a video download address sending module, configured to send the video download address of the first video to the client, so that the client downloads the first video from the file management server based on the video download address.
[0020] In some embodiments, the video download request is sent by the client in response to a download operation triggered by the first video message; the download operation is an operation triggered by a download control displayed on the client for the first video; the video message processing apparatus further includes: a file information request receiving module, configured to receive a file information request sent by the client in response to the first video message; the file information request includes a first identifier of the first video; a video basic information acquisition module, configured to acquire video basic information of the first video based on the first identifier of the first video; the video basic information includes the creation object of the first video; a download marker determination module, configured to determine the download marker for the first video as a marker indicating that downloading is allowed if it is determined that the creation object of the first video is not in the restricted object list; a file prompt information generation module, configured to generate file prompt information for the first video based on the download marker for the first video; and a file prompt information sending module, configured to send the file prompt information for the first video to the client so that the client displays a download control for the first video when it is determined that the download marker for the first video is a marker indicating that downloading is allowed.
[0021] In some embodiments, the video message processing apparatus further includes: a video registration request receiving module, configured to receive a video registration request sent by a sending client; the video registration request is sent by the sending client after uploading a first video to be sent to the target session to the file management server, based on a second identifier generated by the file management server for the first video; a first identifier generation module, configured to generate a first identifier for the first video in response to the video registration request, and store file information of the first video, the file information of the first video including the first identifier and the second identifier of the first video; a first identifier sending module, configured to send the first identifier of the first video to the sending client; a video message receiving module, configured to receive a first video message sent by the sending client, the first video message being obtained by the sending client encapsulating a video message based on the first identifier of the first video; the first video message including the first identifier of the first video; and a video message forwarding module, configured to forward the first video message to the receiving client in the target session.
[0022] In a seventh aspect, embodiments of this application provide an electronic device, including: a processor; a memory, wherein computer instructions are stored in the memory, and when the computer instructions are executed by the processor, the above-described video message processing method or video message sending method is implemented.
[0023] Eighthly, embodiments of this application provide a computer-readable storage medium storing computer instructions, which, when executed by a processor, implement the above-described video message processing method or video message sending method.
[0024] Ninthly, embodiments of this application provide a computer program product, including computer instructions, which, when executed by a processor, implement the above-described video message processing method or video message sending method.
[0025] In this application, in response to a trigger operation on the first video message in the session interface, the online video corresponding to the first video pointed to by the first video message is played in the video preview interface. Since the online video of the first video is obtained by the file management server converting the first video stored on its own into an online video, and the first video is not downloaded to the client's local machine, the online preview of the video pointed to by the video message in the session is realized. This effectively solves the problem of the risk of video leakage caused by the need to download the video to the local machine before previewing. Moreover, since the video does not need to be downloaded to the local machine, the online video preview does not occupy local storage space, which can significantly reduce the storage space occupied by the client's terminal.
[0026] Furthermore, the video pointed to by the video message is uploaded to the file management server for storage. When the first video pointed to by the first video message needs to be played, the application server requests an online preview credential from the file management server. Moreover, when the client requests the online video corresponding to the first video from the file management server based on the first online preview address carrying the online preview credential, the file management server only returns the online video corresponding to the first video to the client after verifying the validity of the online preview credential. This can avoid the probability of obtaining the online video by using a forged online preview credential and ensure the security of the online video.
[0027] These or other aspects of this application will become more apparent in the following description of the embodiments. Attached Figure Description
[0028] 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.
[0029] Figure 1 This is a schematic diagram illustrating the implementation environment of the method of this application according to an embodiment of this application.
[0030] Figure 2 This is a flowchart illustrating a video message processing method according to an embodiment of this application.
[0031] Figure 3 This is a schematic diagram illustrating the interaction of video messages in a conversational interface according to an embodiment of this application.
[0032] Figure 4 This is a flowchart illustrating a video message processing method according to another embodiment of this application.
[0033] Figure 5 This is a schematic diagram illustrating the overlay of a control window on a video preview interface according to an embodiment of this application.
[0034] Figure 6 This is a flowchart illustrating a video message processing method according to another embodiment of this application.
[0035] Figure 7 This is a flowchart illustrating a video message processing method according to another embodiment of this application.
[0036] Figure 8 This is a schematic diagram of a configuration interface in an enterprise instant messaging application according to an embodiment of this application.
[0037] Figure 9 This is an interface diagram illustrating the viewing of video operation records according to an embodiment of this application.
[0038] Figure 10 This is a flowchart illustrating the implementation of video message transmission according to an embodiment of this application.
[0039] Figure 11 This is a flowchart illustrating an online video preview implementation according to an embodiment of this application.
[0040] Figure 12 This is a flowchart illustrating a video download process according to an embodiment of this application.
[0041] Figure 13 This is a flowchart illustrating the video operation recording process according to an embodiment of this application.
[0042] Figure 14 This is a block diagram of a video message processing apparatus according to an embodiment of this application.
[0043] Figure 15 This is a block diagram of a video message processing apparatus according to another embodiment of this application.
[0044] Figure 16 A schematic diagram of the structure of a computer system suitable for implementing the electronic device of the present application is shown. Detailed Implementation
[0045] The embodiments of this application are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.
[0046] In the following description, the terms "first" and "second" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first" and "second" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.
[0047] In this document, "multiple" refers to two or more. "And / or" describes the relationship between associated 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 associated objects are in an "or" relationship. In the following description, references to "some embodiments or some embodiment methods" describe a subset of all possible embodiments. However, it is understood that "some embodiments" can be the same subset or different subsets of all possible embodiments and can be combined with each other without conflict.
[0048] In instant messaging, when sending video, the sender typically uploads the video (let's say video A) to the server. The server stores video A and assigns an identifier to it. Then, the server returns the assigned identifier to the sender, who encapsulates the video message based on the identifier, resulting in video message B. This encapsulated video message B, containing the identifier assigned to video A, is then sent to the receiver. Upon receiving video message B, the receiver can request the video data of video A from the server based on the identifier within B. Since video message B does not contain the video data of video A, no video data needs to be transmitted during the message sending process, resulting in a short transmission time. The receiver, upon receiving the video message, requests the video data from the server as needed, ensuring the real-time nature of instant messaging.
[0049] In related technologies, after receiving a video message, the recipient typically requests and downloads the video specified in the video message from the server based on the video identifier within the message. The video is then downloaded to the recipient's local machine before playback. However, this process of downloading the video locally poses a risk of video leakage. This application proposes a solution to address this issue.
[0050] Figure 1 This is a schematic diagram illustrating the implementation environment of the method of this application according to an embodiment of this application, as shown below. Figure 1 As shown, the implementation environment includes a server 110 and a terminal 120. The terminal 120 communicates with the server 110 through a network, which can be a wide area network, a local area network, or a combination of both, using wireless or wired links to achieve data transmission.
[0051] Terminal 120 can run a client, such as an instant messaging client or an enterprise instant messaging client. In this application, server 110 includes at least an application server and a file management server. The file management server is used to manage files such as videos transmitted in the session. The application server provides related services to the client, such as message sending control service, account registration service, session management service, file management service, etc.
[0052] Terminal 120 may be a laptop, tablet, desktop computer, smartphone, smart voice interaction device (e.g., smart speaker), smart home appliance (e.g., smart TV), smartwatch, in-vehicle terminal, wearable device, virtual reality (VR) device, in-vehicle terminal, etc., but is not limited to these.
[0053] The client running on terminal 120 can display the session interface of the target session. In response to the triggering operation of the first video message in the session interface, the client can send a video request to server 110. In response to the video request, server 110 can perform online video conversion on the first video pointed to by the first video message stored on the file management server to obtain the online video of the first video, and transmit the online video of the first video to terminal 120. The client running on terminal 120 can play the online video of the first video in the video preview interface.
[0054] The application server and file management server can be physical servers or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms.
[0055] Figure 2 This is a flowchart illustrating a video message processing method according to an embodiment of this application, such as... Figure 2 As shown, the method includes steps 210-280:
[0056] Step 210: The client displays the session interface of the target session, and the session messages displayed in the session interface include the first video message.
[0057] The client can be any instant messaging client, which can be an instant messaging client for individual users, an instant messaging client for enterprises, or other application clients with instant messaging capabilities. The target session refers to any session the client joins, which can be a one-on-one chat session or a group chat session. In the case of an enterprise instant messaging client, the target session is a group chat or one-on-one chat session created by the enterprise to which the client belongs.
[0058] The session interface of the target session displayed on the client includes session messages that have been transmitted in the target session. For the current client, the transmitted session messages include at least one of the session messages that the current client has sent in the target session and the session messages that the current client has received in the target session.
[0059] A video message is a message that encapsulates the basic information of a video. This basic information may include a thumbnail of the video's cover image, the total duration of the video, and the video's identifier. The video message displayed in the chat interface can show a thumbnail of the video's cover image and the total duration of the video.
[0060] The first video message can refer to any video message in the target session, and the video pointed to by the first video message is restricted to online preview playback. The first video message can be a video message sent by the current client in the target session, or a video message received by the current client in the target session. That is to say, the current client can be the sending client of the first video message or the receiving client of the first video message; this application does not make specific limitations.
[0061] It is worth mentioning that, in addition to the first video message, the session messages displayed in the target session's session interface may also include one or more of the following: other video messages (such as video messages corresponding to videos that are allowed to be downloaded), text messages, image messages, audio messages, file messages, web link messages, etc.
[0062] Step 220: In response to the triggering operation of the first video message, the client sends a video request to the application server.
[0063] In this application, the video pointed to by the first video message is referred to as the first video, and the first video message may include the identifier of the first video. An application server refers to a server that provides services to clients.
[0064] The triggering action for the first video message can be a click, touch, long press, etc., and is not limited here. This triggering action can be a video playback action. For example, if a click is detected... Figure 3Operations in the display area where the first video message 311 is located in the session interface shown in ① are considered as detecting a video playback operation triggered by the first video message.
[0065] Step 230: The application server requests an online preview credential for the first video from the file management server.
[0066] The first video message includes an identifier for a first video. In some embodiments, the identifier for the first video carried in the first video message may be generated by an application server for the first video. In other embodiments, the identifier for the first video carried in the first video message may also be generated by a file management server for the first video.
[0067] The file management server is used to manage files within a session, such as file temporary storage and distribution. Files within a session can include, but are not specifically limited to, videos, audio files, documents, images, and emoticons. Files sent during a session can be temporarily stored on the file management server.
[0068] Before sending a video message, the video to which the message is directed is temporarily stored on a file management server, rather than on the application server. This fully leverages the advantages of the file management server in distributed storage, load balancing, data management, and network traffic management, reducing the pressure on the application server. This allows the application server and file management server to each perform their respective functions, ensuring the real-time nature of instant messaging. The file management server can be any node in the content delivery network.
[0069] The video request includes an identifier for the first video obtained from the first video message. In some embodiments, if the identifier carried in the first video message is generated by the file management server for the first video, the application server can send an online preview credential request to the file management server based on the identifier carried in the video request. This online preview credential request includes the identifier carried in the video request. If the file management server verifies that the first video is stored on the file management server based on the identifier carried in the online preview credential request, it can generate an online preview credential for the first video.
[0070] In some other embodiments, step 230 includes: obtaining a second identifier of the first video from the file information of the first video based on the first identifier of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; the first identifier of the first video is generated by the application server for the first video; and requesting an online preview certificate for the first video from the file management server based on the second identifier of the first video.
[0071] In this embodiment, both the file management server and the application server generate identifiers for the first video. The identifier generated by the application management server for the first video is referred to as the first identifier; the identifier generated by the file management server for the first video is referred to as the second identifier. After the first video is uploaded to the file management server, the file management server generates the second identifier for the first video. The identifier carried in the first video message is the first identifier of the first video, and correspondingly, the identifier in the video request is also the first identifier of the first video obtained from the first video message.
[0072] The application server can maintain and store the file information of the videos pointed to by each video message in the session. This file information includes at least a first identifier and a second identifier for each video. That is, the application server maintains a mapping relationship between the first and second identifiers. In subsequent processes, the application server can retrieve the corresponding second identifier from the video information of the corresponding video based on the first identifier carried in the video message, for subsequent online previewing or downloading, etc.
[0073] In some embodiments, the file information may also include basic video information, such as the video file name, the object that created the video, the video data size, etc. The object that created the video refers to the object identifier of the login object of the client that sent the video message corresponding to the video. In other words, the object that created the video points to the object identifier of the sender in the session that sent the video message corresponding to the video. Correspondingly, the client that owns the object that created the video uploaded the video to the file management server.
[0074] The application server can send a credential request to the file management server based on the second identifier of the first video. The credential request includes the second identifier of the first video. Upon receiving the credential request, and based on the second identifier carried in the credential request, if the file management server determines that the first video is temporarily stored on the file management server, it can generate an online preview credential for the first video and associate the online preview credential with the second identifier of the first video, storing it in the file management server. The online preview credential for the first video indicates that the file management server allows access to the online video of the first video.
[0075] In some embodiments, the file management server can also set the validity period of the online preview certificate for the first video. The validity period can be set according to actual needs. For example, if the validity period is 1 minute, then the online preview certificate for the first video is valid for 1 minute after its generation, and becomes invalid after that. In some embodiments, the online preview certificate stored on the file management server can be deleted after its corresponding validity period expires.
[0076] Step 240: The application server generates a first online preview address based on the online preview credential, and generates preview information based on the first online preview address.
[0077] The first online preview address refers to the online preview address of the video corresponding to the first video. Specifically, the first online preview address points to the network address of the online video conversion result (i.e., the online video corresponding to the first video) obtained by converting the first video online.
[0078] The online video corresponding to the first video is obtained by the file management server converting the first video stored on the file management server into an online video. Therefore, in some embodiments, the application server can combine the domain name of the file management server, the file path of the online video conversion result of the first video in the file management server, the second identifier of the first video, and the online preview certificate of the first video to obtain the first online preview address.
[0079] In some embodiments, the file management server can perform online video conversion on the first video stored on the file management server according to a streaming media conversion protocol to obtain the online video conversion result of the first video. For example, the streaming media conversion protocol can be HLS (HTTP Live Streaming) protocol or WebRTC (Web Real-Time Communication) protocol.
[0080] For example, if the file management server performs online video conversion on the first video using HLS, the online video conversion result includes an index file (specifically an M3U8 file) and multiple media files (specifically TS (Transport Stream) files). These multiple media files constitute the online video of the first video, and a single TS file can be considered a segment within the online video of the first video. The first online preview address can point to the network address of the index file, since the index file includes the network addresses of each media file. In this case, the first online preview address could be: xxx / downloadobject.index.m3u8 / xx?fileid=AAA&authkey=BBB, where "xxx" at the beginning represents the domain name of the file management server, " / downloadobject.index.m3u8 / xx" represents the file path of the M3U8 file in the online video conversion result of the first video on the file management server, "fileid=AAA" indicates that the second identifier of the first video is "AAA", and "authkey=BBB" indicates that the online preview credential of the first video is "BBB".
[0081] It is understandable that the file management server stores the second identifier of each temporarily stored video. Therefore, the second identifier of the first video is carried in the first online preview address. The second identifier carried is recognizable by the file management server. The second identifier of the first video can be used as a query parameter, so that the file management server can query and determine the location of the online video conversion result of the first video based on the second identifier of the first video in the first online preview address.
[0082] In some embodiments, the preview information may further include at least one of page template data and watermark information. The page template data is used by the browser to load and display the video preview interface. The watermark information may be generated based on the client's login information, such as the login user's name, contact information, and company name. For example, the login user's name can be combined with at least one of the following: contact information and company name, to form the watermark information. Subsequently, the watermark information can be rendered in the video preview interface.
[0083] Step 250: The client receives preview information returned by the application server; the preview information includes the first online preview address.
[0084] Step 260: The client sends an online video request to the file management server based on the first online preview address.
[0085] The online video request includes a first online preview address, which carries a second identifier of the first video and an online preview credential for the first video.
[0086] Step 270: The file management server verifies the validity of the online preview credentials carried in the online video request.
[0087] As described above, after generating an online preview credential for a video, the file management server associates the video's second identifier with the video's online preview credential and stores it in the file management server. Based on this, the file management server can verify whether the online preview credential carried in the online video request is consistent with the online preview credential stored in the file management server that is associated with the second identifier carried in the online video request. If they are inconsistent, the online preview credential carried in the online video request is determined to be invalid.
[0088] In some embodiments, the online preview certificate has an expiration date. The file management server can also determine whether the online preview certificate carried in the online video request is valid based on the time when the online video request is received. If the online preview certificate carried in the online video request has expired, the online preview certificate carried in the online video request is determined to be invalid.
[0089] If the online preview credential has an expiration date, when the file management server verifies that the online preview credential carried in the online video request is consistent with the online preview credential stored in the file management server that is associated with the second identifier carried in the online video request, and the online preview credential carried in the online video request is within the corresponding expiration date, it can be determined that the online preview credential carried in the online video request is valid.
[0090] Once the file management server verifies the validity of the online preview credentials carried in the online video request, it can send the online video of the first video to the client. For example, it can first send the index file from the online video conversion result of the first video. Then, after the client parses the index file and obtains the network addresses of each media file, the client requests each media file from the file management server accordingly.
[0091] Step 280: The client receives the online video corresponding to the first video returned by the file management server.
[0092] The file management server can perform online video conversion on the first video stored on the server according to the streaming media protocol, obtaining the online video conversion result. The online video conversion result can include an index file and multiple media files, which are the online videos corresponding to the first video. The index file includes a series of network addresses (URLs, Uniform Resource Locators) pointing to each media file. The file management server can first send the index file to the client. Then, the client can call the browser to parse the index file to obtain the addresses of each media file, and sequentially request to download each media file from the file management server according to the addresses of each media file. The browser in the client then loads and renders each media file to achieve streaming playback.
[0093] Streaming media transmission protocols such as HLS (HTTP Live Streaming) and WebRTC (Web Real-Time Communication) are not specifically limited in this application.
[0094] In the case of online video transmission according to the HLS protocol, the server performs online video conversion on the first video to obtain the online video conversion result. The online video conversion result includes an M3U8 file and multiple TS (TransportStream) files. A TS file can be regarded as a segment of the online video of the first video.
[0095] An M3U8 file is a streaming media playlist format. It's a plain text file containing a series of network addresses pointing to TS files. M3U8 files allow players to download and play these media files sequentially, enabling streaming playback. M3U8 files typically have the extension .m3u8.
[0096] TS files are a container format for digital video and audio media files. TS files encapsulate multiple audio and video streams within a single file and use buffering and packetization to improve transmission efficiency. In the HLS protocol, TS files are used as media files in M3U8 playlists for streaming playback. TS files typically have the extension .ts.
[0097] When the file management server transmits streaming media to the client according to the HLS protocol, the server can first send the index file (i.e., M3U8 file) of the online video conversion result to the client. The client can parse the index file, obtain the network address of each media file from the index file, and then pull the corresponding media file from the server according to the network address of each media file, so as to call the browser to play the media file in the video preview interface, and realize the online video playback of the first video.
[0098] Step 290: Play the online video corresponding to the first video in the video preview interface.
[0099] The video preview interface can be a browser-based interface. In some embodiments, if the preview information also includes page template data, the browser can render the video preview interface based on the page template data. Furthermore, if the preview information also includes watermark information, the watermark information is displayed on the video preview interface. Additionally, the browser parses the streaming media data representing the online video corresponding to the first video returned by the file management server and displays it on the video preview interface, thus enabling streaming playback of the online video corresponding to the first video.
[0100] Figure 3 This is a schematic diagram illustrating the interaction of video messages in a conversational interface according to an embodiment of this application. Figure 3 The diagram ① shows the session interface 310 of the target session, and correspondingly shows the first video message 311 in the target session. As shown, if the user clicks on the first video message 311, it can display... Figure 3 The video preview interface 320 shown in ② plays the online video of the first video in the screen display area of the video preview interface.
[0101] In some embodiments, a leak-proof marker may also be displayed in the video preview interface. This marker indicates that the currently playing video is highly confidential and should not be disclosed. The type of leak-proof marker is not limited; it can be a text marker, a symbol, a color marker, or a combination of at least two types. For example... Figure 3 The “Document Leakage Prevention” shown in the first dashed box 321 in section ② is a text-based leakage prevention mark.
[0102] In some embodiments, if the client is an enterprise instant messaging client, and the enterprise to which the instant messaging client belongs has enabled video protection, the method of this application can be used to implement online preview of videos in a session. When video protection is enabled, by default, all videos pointed to by video messages in sessions created by that enterprise are protected according to [the specified method]. Figure 2 The online preview method shown is used for previewing and playback. If the enterprise instant messaging client's parent company has not enabled video protection, the video pointed to by the video message can be downloaded to the local machine and then played when the client requests video playback.
[0103] In some embodiments, when the enterprise has enabled the video protection function, considering the continued need to download videos, the permissions of the videos pointed to by video messages in the download sessions of some members of the enterprise can be configured separately. In this way, the permissions of the videos pointed to by video messages in the download sessions are opened to some members, and by default, the videos pointed to by video messages in the sessions created by the enterprise are played in the form of online preview, which can effectively ensure the security of the videos pointed to by video messages in the enterprise sessions and greatly reduce the probability of leakage.
[0104] In some embodiments, if the client is an instant messaging client, video protection can be enabled for group sessions that require video protection on a session-by-session basis. Similarly, if video protection is enabled for a group session, all video messages in that group session can be configured to use video protection by default. Figure 2 The process allows for online preview and playback; conversely, if a group session does not have video protection enabled, the video can be downloaded to the local device and played according to the video message. The entry point for enabling or disabling video protection in a group session can be displayed on the client side of the group administrator within the group session, and is operated by the group administrator.
[0105] In some embodiments, if the first video pointed to by the first video message is a video that is prohibited from being downloaded, it can be done according to... Figure 2 The online preview playback is shown in the image. If the first video is one that is allowed to be downloaded, you can download the video to your local device first and then play it.
[0106] In this application, in response to a trigger operation on the first video message in the session interface, the online video corresponding to the first video pointed to by the first video message is played in the video preview interface. Since the online video of the first video is obtained by the file management server converting the first video stored on its own into an online video, and the first video is not downloaded to the client's local machine, the online preview of the video pointed to by the video message in the session is realized. This effectively solves the problem of the risk of video leakage caused by the need to download the video to the local machine before previewing. Moreover, since the video does not need to be downloaded to the local machine, the online video preview does not occupy local storage space, which can significantly reduce the storage space occupied by the client's terminal.
[0107] Furthermore, by uploading the video pointed to by the video message to a file management server for storage, and when the application server needs to play the first video pointed to by the first video message, it requests an online preview credential from the file management server. Moreover, when the client requests the online video corresponding to the first video from the file management server based on the first online preview address carrying the online preview credential, the file management server only returns the online video corresponding to the first video to the client after verifying the validity of the online preview credential. This can effectively reduce the probability of obtaining online videos by using forged online preview credentials and ensure the security of online videos.
[0108] In some embodiments, after step 270, the method further includes: if the file management server verifies that the online preview credential carried in the online video request is inconsistent with the online preview credential stored in the file management server that is associated with the second identifier carried in the online video request, it may send an error message to the client. The client may display the corresponding error message upon receiving it.
[0109] Since the file management server verifies whether the online preview credential carried in the online video request corresponds to the second identifier carried by it based on the correspondence between the second identifier stored in its own database and the online preview credential, it can effectively identify situations where forged online preview credentials are used to request online videos from the file management server.
[0110] In some embodiments, after step 270, the method further includes: if the file management server verifies that the online preview certificate carried in the online video request has exceeded its corresponding validity period, sending an expiration notification message to the client; the client can display the expiration notification message upon receiving it. The expiration notification message is used to indicate that the online preview certificate carried in the online video request has expired.
[0111] By setting an expiration date for online preview credentials, even if the accurate first online preview address is leaked, expired online preview credentials will not be able to request the corresponding online video. Therefore, the risk of access to online video caused by the leakage of the first online preview address can be effectively reduced.
[0112] Figure 4 This is a flowchart illustrating a video message processing method according to another embodiment of this application, such as... Figure 4 As shown, after step 210, the method may include steps 410-470:
[0113] Step 410: In response to the download operation triggered by the first video message, the client sends a video download request to the application server; the video download request includes the first identifier of the first video. The first video message refers to any video message in the target session that indicates the video is allowed to be downloaded.
[0114] The download operation triggered by the first video message refers to the triggering operation used to request the download of the first video. In some embodiments, the triggering operation for requesting the download of the first video may be an operation triggered on the display area where the first video message is located, such as a long press operation, a swipe operation, etc., triggered on the display area where the first video message is located. In some embodiments, the triggering operation for requesting the download of the first video may be an operation triggered on the download control displayed for the first video, such as a click operation, a touch operation, etc., triggered on the download control displayed for the first video.
[0115] In some embodiments, the download control for the first video may be overlaid on the session interface of the target session (e.g., it may be overlaid on the session interface as a floating window). For example, it may be in response to a first operation triggered on the display area where the first video message is located (this first operation is different from the operation triggered on the display area where the video message is located to request video playback mentioned above), displaying a control window for the first video. The control window includes at least one operation control, and the at least one operation control includes at least a download control. Of course, it may also include other controls such as a share control, a favorite control, etc.
[0116] In some embodiments, the download control displayed for the first video may be overlaid on the video preview interface for the first video. For example, in response to an operation triggered by the first control on the video preview interface for the first video, a control window may be overlaid on the video preview interface, and the control window may display at least one operation control, including the download control.
[0117] Figure 5This is a schematic diagram illustrating the overlay of a control window on a video preview interface according to an embodiment of this application. Figure 5 As shown in ①, if an operation is performed on the video operation entry point (i.e., the control selected by the first dashed box 330, which is the first control mentioned above) in the video preview interface for the first video, a control window 340 is overlaid on the video preview interface. The control window 340 includes at least one operation control for the first video. The at least one operation control includes a download control 350, and also includes a forward control, a favorite control, a save to cloud drive control, a copy identifier control, and a view video information control. Of course, in this embodiment, the operation controls displayed in the control window 340 are merely exemplary examples and should not be regarded as a limitation on the scope of this application.
[0118] In some embodiments, for ease of description, the operation for requesting the display of a control window for a video is referred to as a control window display operation. This control window display operation may be, for example, an operation triggered on a first control on a video preview interface, or a first operation triggered on the display area where the video message is located on a session interface. In response to the control window display operation triggered for a video message, download indication information for the video pointed to by the video message can be obtained. This download indication information is used to determine whether the video pointed to by the video message is allowed to be downloaded. If the download indication information indicates that the video pointed to by the corresponding video message is prohibited from downloading, the download control is displayed normally in the control window; otherwise, the download control is hidden in the control window, i.e., the download control is not displayed.
[0119] like Figure 5 As shown in ②, if an operation is performed on the video operation entry point (i.e., the control selected by the first dashed box 330, which is the first control mentioned above) in the video preview interface for the first video, and a control window 340 is overlaid on the video preview interface, if the obtained download indication information indicates that the video pointed to by the corresponding video message is prohibited from downloading, the download control is not displayed in the control window 340, and the download control is blocked. In some embodiments, if the download indication information indicates that the video pointed to by the corresponding video message is prohibited from downloading, in addition to blocking the download control, other operation controls that require downloading the video are also blocked in the control window 340. For example, compared to Figure 5 ① in Figure 5 In the control window shown in ②, in addition to disabling the download control, the "Save to Cloud Drive" control is also disabled.
[0120] In some embodiments, if the download instruction indicates that the video pointed to by the corresponding video message is prohibited from being downloaded, the download control or operation controls related to the video download process can also be displayed in the control window in a non-triggerable form. For example, the non-triggerable form can be achieved by displaying the control in gray and setting the grayed-out control to a non-triggerable state.
[0121] In some embodiments, if the download indication information indicates that the video pointed to by the corresponding video message is prohibited from downloading, a prohibited download message for the video pointed to by the video message can also be displayed. For example Figure 5 As shown in Figure ②, the message "Download restricted, this video can only be previewed online" in the second dashed box 360 of the control window 340 is a download-prohibited message. For example, if the first video mentioned above is prohibited from download, a download-prohibited message for the first video can be displayed accordingly. In other embodiments, if the download indication information indicates that the video pointed to by the corresponding video message is prohibited from download, the download control for the video can be disabled, or only the download-prohibited message for the video can be displayed.
[0122] The client can obtain the first identifier of the first video from the first video message, and then encapsulate the video download request based on the first identifier of the first video. The encapsulated video download request includes the first identifier of the first video.
[0123] Step 420: The application server obtains the second identifier of the first video from the file information of the first video based on the first identifier of the first video.
[0124] As described above, the application server stores the file information of each video pointed to by the video message. Therefore, the file information of the first video can be found based on the first identifier of the first video, and the second identifier of the first video can be obtained from the file information of the first video.
[0125] In step 430, the application server requests the download address of the first video from the file management server based on the second identifier of the first video. It can be understood that since the first video is temporarily stored on the file management server, the download address of the first video points to the file management server; more specifically, the download address of the first video points to the storage location of the first video within the file management server.
[0126] Step 440: The application server receives the video download address of the first video.
[0127] After receiving the request from the application server for the video download address of the first video (for ease of description, this request will be referred to as the video download address request), the file management server obtains the second identifier of the first video from the video download address request, then finds the file location of the first video in the file management server, obtains the video download address of the first video, and sends the video download address of the first video to the application server.
[0128] Step 450: The application server sends the download address of the first video to the client.
[0129] Step 460: The client requests the download of the first video from the file management server based on the video download address.
[0130] Step 470: The client receives the first video returned by the file management server.
[0131] After the client receives the first video, it can store the first video accordingly.
[0132] In the above embodiments, through the interaction between the client, the application server, and the file management server, the client can obtain the address of the video on the file management server, i.e., the video download address, based on the first identifier of the first video carried in the video message and the correspondence between the first identifier and the second identifier maintained in the application server. This allows the client to request the download of the corresponding video from the file management server based on the video's file download address.
[0133] In some embodiments, the client may default to displaying a download control for any video pointed to by a video message in the session. In this case, step 420 includes: the application server obtains the file information of the first video based on the first identifier of the first video, obtains the creation object of the first video from the file information of the first video, and determines whether the first video is allowed to be downloaded based on the creation object of the first video and a pre-set list of restricted objects.
[0134] In other words, if the object that created the first video is in the restricted object list, it can be determined that the first video is prohibited from downloading; if the object that created the first video is not in the restricted object list, it is determined that the first video is allowed to be downloaded. If it is determined that the first video is allowed to be downloaded, the second identifier of the first video is obtained from the file information of the first video, which is used to subsequently request the video download address of the first video from the file management server. If it is determined that the first video is prohibited from being downloaded, a prompt message is returned to the client to indicate that the first video is prohibited from being downloaded.
[0135] It is worth mentioning that, Figure 4The corresponding embodiment uses the first video message as an example to illustrate the process of downloading the video pointed to by the video message. For other video messages in the target session that are allowed to be downloaded, the corresponding videos can be downloaded in a similar process.
[0136] Figure 6 This is a flowchart illustrating a video message processing method according to another embodiment of this application. In this embodiment, the download operation is an operation triggered by a download control; compared to Figure 4 In the corresponding embodiments, Figure 6 In the corresponding embodiment, before step 410, the method further includes the following steps 610-660:
[0137] Step 610: The client sends a file information request for the first video to the application server based on the first identifier of the first video.
[0138] The file information request for the first video is used to request and obtain the file information of the first video. In some embodiments, the file information request may be initiated in response to a video playback operation triggered by the first video message, such as clicking / touching the display area where the first video message is located in the session interface, thus initiating a file information request for the first video to the application server. In some embodiments, the file information request for the first video may be initiated in response to a control window display operation triggered in the video preview interface of the first video.
[0139] Step 620: The application server obtains the basic video information of the first video based on the first identifier of the first video; the basic video information includes the creation object of the first video.
[0140] In this embodiment, the file information stored by the application server for a video includes not only the first and second identifiers of the video, but also the video creation object. The video creation object refers to the object identifier of the login object of the client that sent the video message corresponding to the video; that is, the video creation object points to the object identifier of the sender in the session who sent the video message corresponding to the video.
[0141] Step 630: If the application server determines that the creation object of the first video is not in the restricted object list, it determines that the download flag for the first video is a flag indicating that it is allowed to be downloaded.
[0142] In this embodiment, if an object is in the restricted object list, the video uploaded by the client containing that object to the file management server to send a video message is prohibited from being downloaded. Conversely, if the object that created a video is not in the restricted object list, the video uploaded by the client containing that object to the file management server to send a video message is allowed to be downloaded.
[0143] In some embodiments, if the client in this application is an enterprise instant messaging client, the application server can store a list of restricted objects for each enterprise. Then, the application server can determine the list of restricted objects for the enterprise to which the client belongs, and determine whether the creation object of the first video is in the list of restricted objects of the client's enterprise. This allows the application server to determine whether the download flag for the first video indicates that downloading is allowed or prohibited. It is worth noting that the download flag determined for the video is equivalent to the download instruction information mentioned above.
[0144] In some embodiments, the application server may store a list of restricted objects for each session. Then, the application server may determine the list of restricted objects for the target session based on the session identifier of the target session in which the current client is located. If it is determined that the creation object of the first video pointed to by the first video message in the target session is in the list of restricted objects of the target session, the first video is determined to be prohibited from being downloaded; otherwise, the first video is determined to be allowed to be downloaded.
[0145] Step 640: The application server generates file prompt information for the first video based on the download marker for the first video.
[0146] The file notification information for the first video should include at least a download marker for the first video.
[0147] In some embodiments, the file prompt information for the first video may also include basic file information for the first video. The download marker for the first video and the basic file information for the first video can be combined as the file prompt information for the first video.
[0148] Step 650: The client receives the file prompt information returned by the application server.
[0149] Understandably, the file notification information may include a download marker for the first video. Furthermore, it may display basic file information of the first video on the client as needed, to facilitate understanding of the video's basic information (such as the video name). For example, it may respond to... Figure 5 The "Video Information" control in the control window is triggered to display the basic file information of the first video on the client.
[0150] Step 660: If the client determines that the download flag for the first video is a flag indicating that downloading is allowed, the download control for the first video is displayed.
[0151] Since the download flag for the first video indicates that downloading is permitted, a corresponding download control for the first video is displayed on the client. The display position of the download control for the first video is not limited; for example, it could be displayed according to… Figure 5 The restriction shown in ① can be overlaid on the video preview interface; or it can be overlaid on the session interface of the target session.
[0152] Correspondingly, step 410 may include: step 670, in response to an operation triggered by the download control for the first video, sending a video download request to the application server.
[0153] Understandably, for other video messages in the target session, if the application server determines that a download flag indicates a download is prohibited, then the download flag will be displayed for videos that are not indicated by that video message; that is, the download flag will be blocked. For example, if the first video mentioned above is prohibited from downloading, the download control for the first video will be blocked accordingly.
[0154] In the above embodiment, the application server determines whether the video pointed to by the video message is allowed to be downloaded based on the creation object of the video pointed to by the video message and the list of restricted objects stored on the application server. It then sends a download flag to the client to indicate whether the video is allowed to be downloaded. The client displays the download flag only when it determines that the video is allowed to be downloaded, and blocks the download control for that video when it determines that the video is not allowed to be downloaded. This allows users to intuitively know which videos are prohibited from downloading; furthermore, by not displaying the corresponding download control for prohibited videos, it avoids unnecessary user operations on the download control or unnecessary video download interactions between the client and the application server.
[0155] In some embodiments, if the solution of this application is applied to an enterprise instant messaging application, that is, the aforementioned client is an enterprise instant messaging client, and the client has administrator privileges; for example, the client is an enterprise administrator client, or the client is a client with the role of super administrator in the enterprise. In this case, the method further includes the following (1)-(3):
[0156] (1) Display the configuration interface.
[0157] (2) In response to the restricted object selection operation triggered in the configuration interface, the selected object is added to the restricted object list corresponding to the enterprise to which the client belongs.
[0158] On the client side, users can select objects to add to the enterprise's restricted object list in the configuration interface. Understandably, if an object is added to the enterprise's restricted object list, subsequent video messages sent by objects in the enterprise's restricted object list within a session created by the enterprise will be prohibited from downloading.
[0159] (3) Send the list of restricted objects corresponding to the enterprise to which the client belongs to the application server.
[0160] The application server can associate and store the enterprise identifier of the client's company with a list of restricted objects corresponding to that company. Then, based on the list of restricted objects and the file information stored for the video, the application server can determine whether the video pointed to by each video message is allowed to be downloaded. For example, it can be configured according to... Figure 8 In a corresponding implementation, the download marker for the video is determined.
[0161] Of course, the list of restricted objects can be updated as needed, such as removing some objects from the list, adding new objects to the list, and so on.
[0162] Figure 7 This is a schematic diagram illustrating a configuration interface in an enterprise instant messaging application according to an embodiment of this application. For example... Figure 7 As shown, the configuration interface 710 provides a "File Leakage Prevention" function. Under this function, users can access the "Video Download / Export Restrictions" sub-configuration page. For example, users can click to add a restriction control 720, select objects from the enterprise's members, and add them to the enterprise's restriction object list. Figure 7 The example shows object A being added to the enterprise's restricted object list. Furthermore, the enterprise's restricted object list can be edited in the configuration interface 710; for example, clicking the delete control 740 can delete an object from the enterprise's restricted object list.
[0163] exist Figure 7 In a corresponding embodiment, the default restriction rule for objects in the restricted object list can be "prohibit downloading / exporting on all devices," meaning that downloading the video pointed to by the video message is prohibited regardless of the terminal used. Furthermore, more granular restriction rules can be configured for objects in the restricted object list; for example, the restriction rule could be: prohibit downloading / exporting on mobile terminals such as smartphones and tablets. The configuration interface 710 also provides an editing control 730, which users can click to modify the restriction rules configured for the objects.
[0164] It is worth mentioning that, in cases where only certain devices are prohibited from downloading videos for objects on the restricted list, the above... Figure 7In the corresponding embodiment, in addition to determining whether the video creation object is in the corresponding restricted object list, it is also necessary to match the device type of the client's current terminal with the device types that are prohibited from downloading in the restriction rules configured for the video creation object. If the video creation object is in the corresponding restricted object list, and the device type of the current client's terminal is not a device type that is prohibited from downloading in the restriction rules configured for the video creation object, it can be determined that the video is allowed to be downloaded by the current client.
[0165] In some embodiments, the client is an enterprise instant messaging client with administrator privileges; the method further includes: sending a video operation record request to the application server; receiving and displaying video operation record data returned by the application server; the video operation records in the video operation record data are generated by the application server based on the operations triggered by each video message in the session with the enterprise to which the client belongs.
[0166] In this application, when a client requests the application server to preview a video online, download a video, or send a video in a session, the application server generates video operation records for the video object. These video operation records are not limited to video playback records, video download records, video sending records, and video forwarding records. After generating the video operation records, the application server can store them accordingly. For example, video operation records can be stored at the enterprise level or at the session level.
[0167] Subsequently, a client with administrator privileges can send a video operation record request to the application server. This request can include query conditions, such as the query time period, the object being operated on, and the video name. The application server can respond to the request by retrieving video operation record data from its stored records that matches the query conditions and returning the retrieved data to the client for easy viewing by the user.
[0168] Figure 8 This is an interface diagram illustrating the viewing of video operation records according to an embodiment of this application. Figure 8 As shown, the video operation record viewing interface 810 can display various information recorded in the queried video operation record, such as operation time, name of the operation object (i.e. member), account of the operation object, part to which the operation object belongs, operation performed on the video, and video identifier. The above is just an example.
[0169] In the above embodiments, since the application server generates and stores video operation records based on the operations on the video messages in the session, it can facilitate enterprises to trace and manage the flow of video in enterprise instant messaging applications, and can effectively reduce the possibility of video being leaked in enterprise sessions.
[0170] Figure 9 This is a flowchart illustrating a method for sending video messages according to an embodiment of this application. For example... Figure 9 As shown, the method includes: Step 910, the sending client displays the session interface of the target session. Step 920, in response to the send operation triggered for the first video in the session interface, the sending client uploads the first video to the file management server.
[0171] The first video can be a video stored locally on the sending client's device, or it can be a video recorded by the sending client using a video recording tool integrated into the sending client; no specific limitation is made here. The first video uploaded by the sending client to the file management server refers to the video data uploaded to the file management server.
[0172] Step 930: The file management server stores the first video and generates the first identifier of the first video.
[0173] Step 940: The sending client receives a success message from the file management server, which includes a second identifier generated by the file management server for the first video.
[0174] After the file management server successfully stores the first video and generates a second identifier for it, the file management server returns an upload success message to the client. This message indicates that the video was successfully stored.
[0175] Step 950: The application server sends a video registration request to the application server based on the second identifier of the first video. This video registration request may include the second identifier of the first video and the basic video information of the first video. The basic video information includes at least the creation object of the first video (specifically, the login object of the current sending client), and also includes the video duration, video name, video format, etc.
[0176] In step 960, the application server responds to the video registration request by generating a first identifier for the first video and storing the file information of the first video.
[0177] The file information of the first video includes a first identifier and a second identifier. The video registration request includes the second identifier of the first video. After generating the first identifier for the first video, the application server can add the second identifier and the first identifier to the file information of the first video and store them accordingly. In the application server, since the first identifier of the first video is generated by the application server, it can be used as an index for the file information of the first video. In addition to the second identifier and the first identifier, the file information of the first video may also include basic video information such as the creation object, video duration, video name, and video format.
[0178] Step 970: The sending client receives the first identifier of the first video returned by the application server.
[0179] Step 980: The sending client encapsulates the video message according to the first identifier of the first video to obtain the first video message; the first video message includes the first identifier of the first video.
[0180] The sending client can encapsulate the first video's first identifier according to a preset video message format, thereby obtaining the first video message. The first video message includes the first video's first identifier. Furthermore, the first video message does not include the second identifier of the first video.
[0181] Step 990: The sending client sends the first video message to the application server.
[0182] Step 991: The application server forwards the first video message to the receiving client in the target session.
[0183] The receiving client in the target session refers to the client of any object in the target session other than the current client. It can be understood that if the target session is a group session, there are multiple receiving clients for the first video message relative to the sending client; if the target session is a one-on-one chat session, there is only one receiving client for the first video message.
[0184] In some embodiments, after the application server forwards the first video message to the receiving client in the target session, it may send a forwarding success message to the sending client to indicate that the first video message has been successfully forwarded.
[0185] It is worth noting that steps 910-991 above illustrate the process of sending a video message for the first video; similar procedures are followed in other sessions to send video messages. Other clients can also send video messages in a session following a similar process.
[0186] According to the above Figure 9 After the process shown involves sending a video message, each client participating in the target session (including the receiving client and the sending client) can play the video pointed to by the video message online according to the method provided in this application, without having to download the video pointed to by the video message from the file management server to the local machine for playback.
[0187] The above embodiments enable the sending of video messages during a session. Based on this process, the video is uploaded to a file management server for storage, and the application server stores the video's file information. This file information includes a second identifier generated by the file management server for the video and a first identifier generated by the application server for the video. The first identifier, instead of the second identifier, is encapsulated in the video message. This ensures that subsequent clients need to access the application server indirectly to access the video stored on the file management server, rather than directly accessing it through the first identifier carried in the video message. This facilitates the application server's subsequent effective management of the online preview and download processes of the video.
[0188] In some embodiments, a storage period for videos can be set on the file management server. Videos stored on the file management server can be deleted after this period expires, thus preventing excessive video storage pressure on the server. The storage period can be set as needed, for example, one month, three months, six months, or one year, without specific limitations here.
[0189] The method provided in this application will be described in detail below with reference to specific embodiments. In the following embodiments, the client can be an enterprise instant messaging client. In the following embodiments, the content delivery network is used as the file management server mentioned above, and the application backend is used as the application server. Figure 10 This is a flowchart illustrating the sending of video messages according to an embodiment of this application. For example... Figure 10 As shown, the process includes: Step 1010, the sending client uploads the video. Step 1020, the content delivery network returns an upload success message and a second identifier for the video. After receiving the video, the content delivery network stores the video and generates a second identifier for it.
[0190] Step 1030: The sending client sends a video registration request. Step 1040: The backend generates the video's first identifier and stores the video's file information. Step 1050: The backend returns the video's first identifier.
[0191] After receiving the first identifier returned from the backend, the sending client can encapsulate the video message according to the first identifier of the video to obtain the video message to be sent. The video message carries the first identifier of the video. Since the identifier carried in the video message in related technologies is an identifier generated by the file management server for the video, while the identifier carried in the video message in this application is a first identifier generated by the application server for the video, rather than a second identifier, even if the sending client is not updated, it cannot directly access the file management server to obtain the video data through the first identifier carried in the video message.
[0192] Step 1060: The sending client sends a video message to the backend. Step 1070: The backend generates a video upload operation record. This video upload operation record can also be called a video sending operation record. The format of the video upload record can be, for example: XX uploaded video ZZ at time YY. This video upload operation record can be stored, for example, added to the video operation record collection of the sending client's company.
[0193] Step 1080: The backend forwards the video message to the receiving client. Step 1090: The backend returns a success message to the sending client. After confirming successful forwarding of the video message to the receiving client, the backend returns a success message to the sending client to indicate successful delivery. Correspondingly, the video message can then be displayed in the conversation interface on the sending client's side.
[0194] The above process enables the sending of video messages within a client-participating session. It's worth noting that some specific implementation details in this process can be found in the description above and will not be repeated here.
[0195] In accordance with Figure 10 When sending video messages using the process shown, you can follow... Figure 11 The process shown enables online previewing of the video linked by the video message. The client can integrate a browser, such as... Figure 11 As shown, it includes:
[0196] Step 1.1: The client requests a video preview. This client can be... Figure 10 The receiving client in the corresponding embodiment can also be Figure 10 The sending client in the corresponding embodiment is not specifically limited here.
[0197] Step 1.2: The browser requests and retrieves the video file information.
[0198] The client integrates a browser. When a user on the client side initiates a request to preview a video, the client can call the browser to request the video file information from the application server.
[0199] On the client side, users can click on video messages and, based on the first identifier carried in the video message, concatenate the URL to load a webpage displaying the video preview, for example, www.xxxx.com / k=ww_fileid, where "k=ww_fileid" indicates that the first identifier of the video is ww_fileid. The client can also include a login status when redirecting to the video preview webpage.
[0200] Step 1.3: The backend retrieves the video file information. The backend uses the video's first identifier carried in the video request it receives to retrieve the video's file information. This file information includes, for example, the video's first identifier, second identifier, video name, and file size.
[0201] In some embodiments, if it is determined that the current video is blocked from access according to the video blocking rules configured by the enterprise administrator, then the preview request for the video is blocked and a video access blocking prompt message is returned to the client.
[0202] Step 1.4: Assemble watermark information in the backend. The backend can assemble watermarks according to the watermark rules configured by the enterprise to obtain watermark information, such as a combination of member name and employee number.
[0203] Step 1.5: The backend requests an online preview credential from the content delivery network (CDN). Step 1.6: The CDN returns the online preview credential. After generating the online preview credential, the CDN associates and stores it with the second identifier of the corresponding video, and sets the validity period of the generated online preview credential, for example, 1 minute.
[0204] Step 1.7: The backend generates the online preview address for the video. The backend can concatenate the content delivery network's domain name, the video's secondary identifier, and the online preview credential to obtain the online preview address. For example, the concatenated online preview address could be: xxx / downloadobject.index.m3u8 / xx?fileid=xxx&authkey=xxx.
[0205] Step 1.8: The backend reports the video playback operation record. The video playback operation record is, for example, "XX previewed video XX at XX time."
[0206] Step 1.9: The backend returns preview information to the browser. This preview information includes the online preview address, watermark information, and page template data. Step 1.10: The browser loads the video preview interface and renders the watermark information. Step 1.11: The browser requests to download the M3U8 file. The online preview address points to the M3U8 file in the online video conversion result of the video. Therefore, the client can request the corresponding M3U8 file from the content delivery network according to the video's online preview address.
[0207] Step 1.12: The Content Delivery Network verifies the validity of the online preview credentials.
[0208] The client sends a request to the content delivery network (CDN) to retrieve an M3U8 file, including a second identifier for the video and an online preview credential. The CDN verifies both the validity of the online preview credential in the request and its consistency with the online preview credential associated with the second identifier in the request. If the online preview credential is valid and matches the one associated with the second identifier in the request, the online preview credential is deemed valid.
[0209] Step 1.13: The content delivery network returns the cookie credentials and the M3U8 file.
[0210] Cookie credentials are used as credentials for subsequent communication between the browser in the client and the content delivery network. The browser in the client can carry this cookie credentials when requesting media files from the content delivery network.
[0211] Step 1.14: The browser parses the M3U8 file. By parsing the M3U8 file, the client can determine the network address of each TS file within the M3U8 file on the content delivery network.
[0212] Step 1.15: The browser requests to download each TS file. The client can request the TS files from the content delivery network based on the network addresses of each TS file obtained through parsing. The request for the TS files also includes a cookie credential to indicate that the current request for the TS files was initiated by the same client as the previous request for the M3U8 files.
[0213] Step 1.16: The Content Delivery Network verifies the cookie credential; that is, it verifies whether the cookie credential is valid. If it is valid, proceed to step 1.17.
[0214] Step 1.17: The content delivery network returns the TS file to the browser. The browser then uses the TS file to play the video in the video preview interface, enabling online video preview.
[0215] As can be seen from the above process, since the video stored on the content delivery network is not downloaded to the client's local machine, but instead the stored video is converted online through the content delivery network, and the resulting M3U8 file and multiple TS files are used to play the online video in the video preview interface through a browser, the risk of video leakage caused by downloading the video in the session to the local machine for playback can be effectively solved, and the security of the video pointed to by the video message in the session can be effectively guaranteed.
[0216] In accordance with Figure 10 When sending video messages using the process shown, you can follow... Figure 12 The process shown involves downloading the video, such as... Figure 12 As shown, it includes:
[0217] Step 1201: The client sends a file information request. This file information request includes the first identifier of the video. Similarly, this client could be... Figure 10 The receiving client in the corresponding embodiment can also be Figure 10 The sending client in the corresponding embodiment is not specifically limited here.
[0218] Step 1202: The background retrieves the video file information. The video creation object can be obtained from the file information.
[0219] Step 1203: The backend determines whether the video creation object is in the restricted object list. If the video creation object is not in the restricted object list, it can be determined that the video is allowed to be downloaded. If the video creation object is in the restricted object list, it can be determined that the video is prohibited from being downloaded, and a message indicating that the video is prohibited from being downloaded can be returned to the client.
[0220] Step 1204: The backend returns file notification information to the client; this information includes basic information about the video file and a download marker indicating that the video is allowed to be downloaded. The client can then display the corresponding download control for the video.
[0221] Step 1205: The client sends a video download request to the backend. For example, in response to a click action triggered by a user's download control, a video download request is sent to the backend. The video download request includes the first identifier of the video.
[0222] Step 1206: Query the video file information in the background.
[0223] Step 1207: The backend again checks whether the video's creation object is in the displayed object list. Similarly, if the video's creation object is not in the restricted object list, it can be determined that the video is allowed to download, and subsequent steps are executed; if the video's creation object is in the restricted object list, it can be determined that the video is prohibited from download, and a message indicating that the video is prohibited from download can be returned to the client.
[0224] Step 1208: The backend requests a video download link from the content delivery network. The request for the video download link includes a second identifier for the video.
[0225] Step 1209: The content delivery network (CDN) returns the video download link to the backend. The CDN can determine the storage location of the video indicated by the second identifier within the CDN based on the second identifier carried in the received request, and thus obtain the video download link.
[0226] Step 1210: The backend returns a video download link to the client. Step 1211: The client requests the video download from the content delivery network. Step 1212: The content delivery network returns the video to the client. The client can then store the returned video.
[0227] Through the above process, it is possible to download videos stored on the content distribution network to the client's local storage, provided that the video is allowed to be downloaded.
[0228] In addition, Figures 10-12 During the process shown, a corresponding video operation record can be generated. Figure 13 This is a flowchart illustrating the video operation recording process according to an embodiment of this application. Figure 13 Steps 1301-1304 illustrate the process of saving video operation records, and steps 1308-1309 illustrate the process of requesting to view video operation records. In this embodiment, video operation records are stored on storage nodes, and an operation record management service is deployed in the background to manage the generation and reporting of operation records.
[0229] Step 1301: The operation log management function reports video operation logs to the backend. For example, video operation logs are recorded in... Figure 10 During the process of sending video messages, a video upload operation record is generated. Figure 11 During the online video preview process, a video preview playback history is generated. Figure 12 Video download records and other data generated during the video download process.
[0230] Step 1302: The backend requests the storage node to save the video operation record. Step 1303: The storage node returns a successful save notification to the backend. Step 1304: The backend returns a successful save notification to the operation record management service.
[0231] After saving the video operation logs, clients with administrator privileges within the enterprise can query the video operation logs of the videos pointed to by each video message in the enterprise's session, as follows:
[0232] Step 1304: The client sends a video operation record request to the backend. The video operation record request may include query conditions, such as the recording time period, video name, the object that created the video, and the object name of the operation involved in the video operation record.
[0233] Step 1305: The backend requests the storage node to query video operation records. The storage node can query video operation records according to the query conditions in the video operation record request to obtain video operation records that meet the query conditions.
[0234] Step 1306: The storage node returns the video operation record to the backend.
[0235] Step 1307: The backend returns the video operation log to the client. The received video operation log can be displayed in the client's administrator interface.
[0236] This facilitates understanding and tracing the actions taken on the videos linked to by video messages within a session. It enables businesses to effectively manage the dissemination of videos linked to by video messages (e.g., previewing, downloading), ensuring information security.
[0237] Figure 14 This is a block diagram of a video message processing apparatus according to an embodiment of this application. The video message processing apparatus can be applied to a client and includes: a display module 1410 for displaying a session interface of a target session, wherein the session messages displayed in the session interface include a first video message; a first sending module 1420 for sending a video request to an application server in response to a triggering operation on the first video message; a first receiving module 1430 for receiving preview information returned by the application server; the preview information includes a first online preview address; the first online preview address includes an online preview credential for the first video requested by the application server from a file management server; the first video refers to the video pointed to by the first video message; a second sending module 1440 for sending an online video request to the file management server according to the first online preview address; a second receiving module 1450 for receiving the online video corresponding to the first video returned by the file management server; the online video is returned by the file management server after verifying the validity of the online preview credential carried in the online video request; the online video is obtained by the file management server converting the stored first video into an online video; and a playback module 1460 for playing the online video corresponding to the first video in the video preview interface.
[0238] In some embodiments, the video message processing apparatus further includes: a third sending module, configured to send a video download request to an application server in response to a download operation triggered by a first video message; the video download request includes a first identifier of the first video; a third receiving module, configured to receive a video download address of the first video returned by the application server; the video download address is obtained by the application server after obtaining a second identifier of the first video based on the first identifier, and then requesting an address from a file management server based on the second identifier of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; a request download module, configured to request the download of a second video from the file management server based on the video download address; and a video receiving module, configured to receive the second video returned by the file management server.
[0239] In some embodiments, the download operation is an operation triggered by a download control; the video message processing apparatus further includes: a fourth sending module, configured to send a file information request for the first video to an application server according to a first identifier of the first video in the first video message; a fourth receiving module, configured to receive file prompt information returned by the application server, the file prompt information including a download marker for the first video; and a download control display module, configured to display a download control for the first video if the download marker for the first video is a marker indicating that downloading is allowed; and to determine that the download marker for the first video is a marker indicating that downloading is allowed when the application server determines that the creation object of the first video is not in the restricted object list.
[0240] In some embodiments, the online preview certificate has an expiration date; the video message processing apparatus further includes: an expiration reminder module, used to receive and display an expiration reminder message sent by the file management server; the expiration reminder message is returned by the file management server after verifying that the online preview certificate carried in the online video request has exceeded the corresponding expiration date.
[0241] In some embodiments, the first video is prohibited from downloading, and the video message processing apparatus further includes at least one of the following: a prohibited download prompt module for displaying a prohibited download prompt message for the first video; and a blocking module for blocking the download control for the first video.
[0242] In some embodiments, the client is an enterprise instant messaging client with administrator privileges; the video message processing device further includes: a configuration interface display module for displaying a configuration interface; an adding module for adding the selected object to the restricted object list corresponding to the client's enterprise in response to a restricted object selection operation triggered in the configuration interface; and a list sending module for sending the restricted object list corresponding to the client's enterprise to the application server.
[0243] In some embodiments, the client is an enterprise instant messaging client with administrator privileges; the video message processing apparatus further includes: a sixth sending module for sending a video operation record request to the application server; and a sixth receiving module for receiving and displaying the video operation record data returned by the application server; the video operation records in the video operation record data are generated by the application server based on the operations triggered by each video message in the session with the enterprise to which the client belongs.
[0244] In some embodiments, the video preview interface includes a leak-proof marker.
[0245] This application embodiment also provides a video message sending device, which includes: a video upload module, used to upload a first video to a file management server in response to a sending operation triggered for a first video in the session interface of a target session; a first prompt receiving module, used to receive an upload success prompt message returned by the file management server, the upload success prompt message including a second identifier generated by the file management server for the first video; a fifth sending module, used to send a video registration request to an application server according to the second identifier of the first video, so that the application server generates a first identifier of the first video in response to the video registration request and stores the file information of the first video, the file information of the first video including the first identifier and the second identifier of the first video; a fifth receiving module, used to receive the first identifier of the first video returned by the application server; a message encapsulation module, used to encapsulate a video message according to the first identifier of the first video to obtain a first video message; the first video message includes the first identifier of the first video; and a video message sending module, used to send the first video message to the application server, so that the application server sends the first video message to the receiving client in the target session.
[0246] Figure 15This is a block diagram of a video message processing apparatus according to another embodiment of this application. The video message processing apparatus can be applied to an application server and includes: a video request receiving module 1510, used to receive a video request sent by a client; the video request is sent in response to a triggering operation of a first video message in a target session; an online preview credential request module 1520, used to request an online preview credential for the first video pointed to by the first video message from a file management server; a preview information generation module 1530, used to generate a first online preview address based on the online preview credential, and generate preview information based on the first online preview address; and a preview information sending module 1540, used to send the preview information to the client, so that the client can obtain the online video corresponding to the first video according to the first online preview address in the preview information, and play the online video corresponding to the first video in the video preview interface; the online video is obtained by the file management server converting the stored first video into an online video, and is returned to the client by the file management server after verifying the validity of the online preview credential carried by the first online preview address.
[0247] In some embodiments, the video request includes a first identifier of the first video; the online preview credential request module 1520 includes: a second identifier acquisition unit, configured to acquire a second identifier of the first video from the file information of the first video based on the first identifier of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; the first identifier of the first video is generated by the application server for the first video; and a credential request unit, configured to request an online preview credential of the first video from the file management server based on the second identifier of the first video.
[0248] In some embodiments, the video message processing apparatus further includes: a video download request receiving module, configured to receive a video download request sent by a client; the video download request includes a first identifier of a first video; a second identifier acquisition module, configured to acquire a second identifier of the first video from the file information of the first video based on the first identifier of the first video; a video download address request module, configured to request a video download address of the first video from a file management server based on the second identifier of the first video; and a video download address sending module, configured to send the video download address of the first video to the client, so that the client downloads the first video from the file management server based on the video download address.
[0249] In some embodiments, the video download request is sent by the client in response to a download operation triggered by a first video message; the download operation is an operation triggered by a download control displayed on the client for the first video; the video message processing apparatus further includes: a file information request receiving module, configured to receive a file information request sent by the client in response to the first video message; the file information request includes a first identifier of the first video; a video basic information acquisition module, configured to acquire video basic information of the first video based on the first identifier of the first video; the video basic information includes the creation object of the first video; a download marker determination module, configured to determine the download marker for the first video as a marker indicating that downloading is allowed if it is determined that the creation object of the first video is not in the restricted object list; a file prompt information generation module, configured to generate file prompt information for the first video based on the download marker for the first video; and a file prompt information sending module, configured to send the file prompt information for the first video to the client so that the client displays a download control for the first video when it is determined that the download marker for the first video is a marker indicating that downloading is allowed.
[0250] In some embodiments, the video message processing apparatus further includes: a video registration request receiving module, configured to receive a video registration request sent by a sending client; the video registration request is sent by the sending client after uploading a first video to be sent to the target session to a file management server, based on a second identifier generated by the file management server for the first video; a first identifier generation module, configured to generate a first identifier for the first video in response to the video registration request, and store file information of the first video, the file information of the first video including the first identifier and the second identifier of the first video; a first identifier sending module, configured to send the first identifier of the first video to the sending client; a video message receiving module, configured to receive a first video message sent by the sending client, the first video message being obtained by the sending client encapsulating a video message based on the first identifier of the first video; the first video message including the first identifier of the first video; and a video message forwarding module, configured to forward the first video message to the receiving client in the target session.
[0251] Figure 16 A schematic diagram of a computer system suitable for implementing the electronic device of the embodiments of this application is shown. The electronic device may be a terminal or application server as described above, used to implement the video message processing method or video message sending method provided in this application. It should be noted that... Figure 16 The computer system 1600 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.
[0252] like Figure 16As shown, the computer system 1600 includes a Central Processing Unit (CPU) 1601, which can perform various appropriate actions and processes, such as executing the methods described in the above embodiments, based on programs stored in Read-Only Memory (ROM) 1602 or programs loaded from storage portion 1608 into Random Access Memory (RAM) 1603. The RAM 1603 also stores various programs and data required for system operation. The CPU 1601, ROM 1602, and RAM 1603 are interconnected via a bus 1604. An Input / Output (I / O) interface 1605 is also connected to the bus 1604.
[0253] The following components are connected to I / O interface 1605: an input section 1606 including a keyboard, mouse, microphone, etc.; an output section 1607 including a cathode ray tube (CRT), liquid crystal display (LCD), and speakers, etc.; a storage section 1608 including a hard disk, etc.; and a communication section 1609 including a network interface card such as a LAN (Local Area Network) card and a modem, etc. The communication section 1609 performs communication processing via a network such as the Internet. A drive 1610 is also connected to I / O interface 1605 as needed. Removable media 1611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 1610 as needed so that computer instructions read from them can be loaded into storage section 1608 as needed.
[0254] In particular, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising computer instructions. When these computer instructions are executed by the central processing unit (CPU) 1601, various functions defined in the system of this application are performed.
[0255] This application also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the methods described in any of the above method embodiments.
[0256] It should be noted that the computer-readable storage medium shown in the embodiments of this application can be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such transmitted data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The computer-readable signal medium can also be any computer-readable storage medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable storage medium can be transmitted using any suitable medium, including but not limited to wireless, wired, etc., or any suitable combination thereof.
[0257] In the embodiments of this application, the terms "module" or "unit" refer to computer instructions or a portion of computer instructions that have a predetermined function and work together with other related parts to achieve a predetermined goal. These instructions can be implemented, wholly or partially, using software, hardware (e.g., processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that functions as a whole.
[0258] The above are merely preferred embodiments of this application and are not intended to limit this application in any way. Although this application has disclosed preferred embodiments as above, it is not intended to limit this application. Any person skilled in the art can make some modifications or alterations to the above-disclosed technical content to create equivalent embodiments without departing from the scope of the technical solution of this application. Any simple modifications, equivalent changes and alterations made to the above embodiments based on the technical essence of this application without departing from the scope of the technical solution of this application shall still fall within the scope of the technical solution of this application.
Claims
1. A method for processing video messages, characterized in that, Applied to a client, the method includes: The session interface that displays the target session includes a first video message. In response to the triggering operation of the first video message, a video request is sent to the application server; The application server returns preview information, which includes a first online preview address. The first online preview address includes an online preview credential for the first video requested by the application server from the file management server. The first video refers to the video pointed to by the first video message. Based on the first online preview address, an online video request is sent to the file management server; The system receives the online video corresponding to the first video returned by the file management server; the online video is returned by the file management server after verifying the validity of the online preview certificate carried in the online video request; the online video is obtained by the file management server through online video conversion of the stored first video. Play the online video corresponding to the first video in the video preview interface.
2. The method according to claim 1, characterized in that, After displaying the session interface of the target session, the method further includes: In response to a download operation triggered by the first video message, a video download request is sent to the application server; the video download request includes a first identifier of the first video. The application server receives the video download address of the first video returned by the application server. The video download address is obtained by the application server after obtaining the second identifier of the first video based on the first identifier of the first video, and then requesting an address from the file management server based on the second identifier of the first video. The second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server. Request the download of the second video from the file management server based on the video download address; Receive the second video returned by the file management server.
3. The method according to claim 2, characterized in that, The download operation is an operation triggered by a download control; before sending a video download request to the application server in response to the download operation triggered on the first video, the method further includes: Based on the first identifier of the first video in the first video message, a file information request for the first video is sent to the application server. Receive file prompt information returned by the application server, the file prompt information including a download marker for the first video; If the download flag for the first video is a flag indicating that downloading is allowed, the download control for the first video is displayed; when the application server determines that the creation object of the first video is not in the restricted object list, the download flag for the first video is determined to be a flag indicating that downloading is allowed.
4. The method according to claim 1, characterized in that, The online preview certificate has an expiration date; After sending an online video request to the file management server based on the first online preview address, the method further includes: The system receives and displays an expiration notification message sent by the file management server; the expiration notification message is returned by the file management server after verifying that the online preview certificate carried in the online video request has exceeded its corresponding validity period.
5. The method according to claim 1, characterized in that, The first video is prohibited from being downloaded, and the method further includes at least one of the following: Display a message indicating that downloading the first video is prohibited; The download control for the first video is disabled.
6. The method according to claim 3, characterized in that, The client is an enterprise instant messaging client, and the client has administrator privileges; the method further includes: Display the configuration interface; In response to the restricted object selection operation triggered in the configuration interface, the selected object is added to the restricted object list corresponding to the enterprise to which the client belongs; Send the list of restricted objects corresponding to the enterprise to which the client belongs to the application server.
7. The method according to any one of claims 1 to 3, characterized in that, The client is an enterprise instant messaging client, and the client has administrator privileges; the method further includes: Send a video operation log request to the application server; Receive and display the video operation record data returned by the application server; the video operation records in the video operation record data are generated by the application server based on the operations triggered by each video message in the session with the enterprise to which the client belongs.
8. The method according to any one of claims 1 to 3, characterized in that, The video preview interface includes a leak-proof marker.
9. A method for sending video messages, characterized in that, The method includes: In response to a send operation triggered for the first video in the session interface of the target session, the first video is uploaded to the file management server; Receive a successful upload notification from the file management server, wherein the successful upload notification includes a second identifier generated by the file management server for the first video; Based on the second identifier of the first video, a video registration request is sent to the application server, so that the application server generates a first identifier of the first video in response to the video registration request and stores the file information of the first video, wherein the file information of the first video includes the first identifier and the second identifier of the first video. Receive the first identifier of the first video returned by the application server; The video message is encapsulated according to the first identifier of the first video to obtain the first video message; the first video message includes the first identifier of the first video. The first video message is sent to the application server so that the application server sends the first video message to the receiving client in the target session.
10. A method for processing video messages, characterized in that, Used in application servers, including: Receive a video request sent by the client; the video request is sent in response to a triggering operation on the first video message in the target session; Request an online preview certificate for the first video pointed to by the first video message from the file management server; Based on the online preview certificate, generate the first online preview address, and generate preview information based on the first online preview address; A preview message is sent to the client so that the client can obtain the online video corresponding to the first video based on the first online preview address in the preview message, and play the online video corresponding to the first video in the video preview interface; the online video is obtained by the file management server converting the stored first video into an online video, and is returned to the client by the file management server after verifying the validity of the online preview certificate carried by the first online preview address.
11. The method according to claim 10, characterized in that, The video request includes a first identifier of the first video; the request for an online preview credential for the first video from the file management server includes: Based on the first identifier of the first video, the second identifier of the first video is obtained from the file information of the first video; the second identifier of the first video is generated by the file management server after the first video is uploaded to the file management server; the first identifier of the first video is generated by the application server for the first video. Based on the second identifier of the first video, request an online preview certificate for the first video from the file management server.
12. The method according to claim 11, characterized in that, The method further includes: Receive a video download request sent by the client; the video download request includes a first identifier of the first video; Based on the first identifier of the first video, obtain the second identifier of the first video from the file information of the first video; Based on the second identifier of the first video, request the video download address of the first video from the file management server; The download address of the first video is sent to the client so that the client can download the first video from the file management server according to the download address.
13. The method according to claim 12, characterized in that, The video download request is sent by the client in response to a download operation triggered by the first video message; the download operation is an operation triggered by the download control displayed on the client for the first video. Before receiving the video download request sent by the client, the method further includes: Receive a file information request sent by the client in response to the first video message; the file information request includes a first identifier of the first video. Based on the first identifier of the first video, obtain the basic video information of the first video; the basic video information includes the creation object of the first video; If it is determined that the object to which the first video was created is not in the restricted object list, then the download flag for the first video is determined to be a flag indicating that it is allowed to be downloaded; Based on the download marker for the first video, generate file prompt information for the first video; The file prompt information of the first video is sent to the client so that the client displays a download control for the first video when it determines that the download mark for the first video is a mark indicating that the download is allowed.
14. The method according to claim 11, characterized in that, Before receiving the video request sent by the client, the method further includes: Receive a video registration request sent by the sending client; the video registration request is sent by the sending client after uploading the first video to be sent to the target session to the file management server, based on the second identifier generated by the file management server for the first video; In response to the video registration request, a first identifier of the first video is generated, and file information of the first video is stored, wherein the file information of the first video includes the first identifier and a second identifier of the first video; Send the first identifier of the first video to the sending client; The sender receives a first video message sent by the sending client. The first video message is obtained by the sending client encapsulating a video message based on a first identifier of the first video. The first video message includes the first identifier of the first video. The first video message is forwarded to the receiving client in the target session.
15. An electronic device, characterized in that, include: processor; A memory storing computer instructions that, when executed by the processor, implement the method as described in any one of claims 1-14.
16. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed by a processor, implement the method as described in any one of claims 1-14.