Patents Assigned to CITRIX SYSTEMS
  • Patent number: 11171912
    Abstract: Methods and systems for a centralized notification service are described herein. The centralized notification service may store notification data received from a plurality of devices and workspaces in a notification database. The notification database may store user account information, associated device and workspace information, associated application information, and notifications received or retrieved from each device and application associated with a user account. The notification service may receive notification data from a plurality of applications based on hooks injected into applications or into a notification manager service.
    Type: Grant
    Filed: May 28, 2019
    Date of Patent: November 9, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Yedong Yu, Xiaolu Chu, Yajun Yao
  • Patent number: 11171838
    Abstract: Described embodiments provide systems and methods for inferring a network type and network conditions. The system includes a packet capturing engine configured to capture a plurality of network packets from a plurality of TCP network connections. The system includes a packet analyzer configured to analyze the plurality of network packets to generate a plurality of metrics. The system includes a network classifier configured to infer network types of the plurality of TCP connections based on the plurality of metrics and at least one classification model. The system also includes a conditions ranking engine configured to estimate a level of network congestion for each TCP connection based on the plurality of metrics and the network types.
    Type: Grant
    Filed: July 20, 2020
    Date of Patent: November 9, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Georgios Papaloukopoulos, Georgios Tsolis, Athanasios Kordelas, Aikaterini Kalou, Nicholas Stavrakos
  • Patent number: 11171964
    Abstract: Methods and systems for secure authentication of users based on unique device identifiers are described herein. A computing device may receive, from a user device, a device registration. The device registration may comprise authentication credentials, device information, and/or a public key. Based on the authentication credentials and/or the device information, a unique device identifier may be generated. A token may be generated based on the unique device identifier and sent to the user device. A request for content may be received from the user device. A nonce may be sent to the user device. The token and a signed version of the nonce may be received from the user device. The nonce may have been signed using a private key corresponding to the public key. Access to the content may be provided based on the token, the unique device identifier, and/or the signed version of the nonce.
    Type: Grant
    Filed: December 23, 2020
    Date of Patent: November 9, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Feng Huang, Ricardo Fernando Feijoo, Tom Kludy, John Gavin Ashman
  • Patent number: 11172029
    Abstract: Embodiments described include systems and methods for reusing content across a plurality of network applications. A client application establishes sessions with the network applications via an embedded browser. The client application identifies a plurality of content provided as input to each of the network applications and stores the plurality of content to storage. The client application determines a point in a first user interface of a first network application in which input from content of the plurality of content is available as input. The embedded browser provides a second user interface from which to select at least a first content of the plurality of content stored in storage from a second network application as input to the first user interface of the first network application. The embedded browser receives, as input to the first user interface, the selection via the second user interface of the first content.
    Type: Grant
    Filed: November 9, 2018
    Date of Patent: November 9, 2021
    Assignee: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 11164567
    Abstract: A computer system is provided. The computer system includes a memory and at least one processor configured to recognize one or more intent keywords in text provided by a user; identify an intent of the user based on the recognized intent keywords; select a workflow context based on the identified intent; determine an action request based on analysis of the text in association with the workflow context, wherein the action request comprises one or more action steps and the action steps comprise one or more data points; obtaining a workspace context associated with the user; and evaluate the data points based on the workspace context.
    Type: Grant
    Filed: May 30, 2019
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventor: Chris Pavlou
  • Patent number: 11165888
    Abstract: Methods and systems for image acquisition device virtualization are described herein. A user of a client computing device may access a remote operating system running on a host computing device via a client application running on a local operating system of the client computing device. An image acquisition device such as a scanner may be connected to the client computing device and the user may wish to use the image acquisition device to acquire image data (e.g., scan a photograph). In order for an image application (e.g., a photo editor) running on the remote operating system to read in the image data from the image acquisition devices, the remote operating system of the host computing device may intercept a service call from the image application at a service layer and redirect the service call, via a virtual channel, to the local operating system of the client computing device.
    Type: Grant
    Filed: April 29, 2020
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Erica Tomes, Jayadev Marulappa Niranjanmurthy, Georgy Momchilov
  • Patent number: 11163618
    Abstract: A system and method that automatically terminates an application. A method includes monitoring activity data points for an application launched by a client device within a workspace environment. The activity data points may include user interactions with a physical interface component and background interactions occurring with the application. State data for each file associated with the application is monitored and, if a determination is made that the application is inactive based on the activity data points, the method determines if a file associated with the application includes unsaved content based on state data. If it is determined that no files for the application include unsaved content, the method forecasts whether the application will be inactive for a future period based on the activity data. The application is terminated if it is determined that no files for the application include unsaved content and the application is forecast to be inactive.
    Type: Grant
    Filed: August 10, 2020
    Date of Patent: November 2, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Daowen Wei, Hengbo Wang, Jian Ding, Feng Tao, Manbinder Pal Singh
  • Patent number: 11165713
    Abstract: A system and method for sharing resources between client devices in a virtual computing environment. A method is disclosed that includes receiving a request from a first client device for a list of available resources that are locally connected to other client devices and that are unavailable to the first client device via an enterprise service within the virtual computing environment; providing the list of available resources to the first client device; receiving a selection of a resource included within the list of available resources from the first client device; providing a push notification to a second client device connected to the selected resource to establish a connection with the selected resource; and providing, to the first client device, access to the selected resource via the established connection.
    Type: Grant
    Filed: July 29, 2020
    Date of Patent: November 2, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Devyash Sanghai, Rishabh Jain, Georgy Momchilov
  • Patent number: 11165871
    Abstract: A computer system may include a client computing device configured to run a native session of a Software as a Service (SaaS) application. The system may further include a server configured to run a hosted session of the SaaS application for the client computing device. The client computing device and the server may cooperate to switch between the native session of the SaaS application and the hosted session of the SaaS application based upon a context associated with the client computing device.
    Type: Grant
    Filed: February 1, 2019
    Date of Patent: November 2, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventor: Georgy Momchilov
  • Patent number: 11163687
    Abstract: A virtual disk is provided to a computing environment. The virtual disk includes identity information to enable identification of a virtual machine within the computing environment. A size of the virtual disk is increased within the computing environment to enable the virtual disk to act as a storage for the identity information and as a cache of other system data to operate the virtual machine. The virtual machine is booted within the computing environment. The virtual machine is configured to at least access the virtual disk that includes both identity information and caches other system data to operate the virtual machine. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: October 17, 2019
    Date of Patent: November 2, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Yuhua Lu, Graham Macdonald, Simon Graham
  • Patent number: 11165645
    Abstract: Described embodiments provide systems and methods of maintaining message queues during deployments of application updates. A queue manager may maintain a first message queue including a first channel for messages between a first release and a second release. The first release and the second release may write to and read from the first message queue. The queue manager may establish, responsive to deployments, a second message queue including a second channel for messages between the first release and the second release. The queue manager may transfer, from the first message queue to the second message queue, the first channel. The first release and the second release may cease to write to and read from the first message queue.
    Type: Grant
    Filed: April 24, 2020
    Date of Patent: November 2, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Yongyu Chen, Pengcheng Zhang
  • Patent number: 11165575
    Abstract: Methods and systems for tracking tainted connection agents, such as without a trusted central authority, are described herein. During a server outage, a client device may verify that a connection agent is untainted based on a public-key encryption or certificate-based system. If the connection agent is untainted, a server may sign a public key or certificate associated with the connection agent. The server may provide, to the client device, a lease, a public key associated with the server. The connection agent may sign data generated by the client device. The client device may verify a signature of the signed public key, such as based on the public key associated with the server. The client device may verify a signature of the signed data, such as based on the verified public key associated with the connection agent.
    Type: Grant
    Filed: January 2, 2019
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventor: Leo C. Singleton, IV
  • Patent number: 11165755
    Abstract: Techniques are disclosed for providing privacy protection for video conference screen sharing. An example methodology implementing the techniques includes receiving a video stream of a first participant in a video conference session between at least the first participant and a second participant, wherein the first participant is associated with a first conference client device and the second participant is associated with a second conference client device, and determining that the first participant is performing screen sharing. The method also includes identifying a first item of content in the video stream to shield from being viewable during rendering of the video stream, obfuscating the identified first item of content in the video stream, and providing the video stream showing the obfuscated first item of content to the second conference client device to be rendered for display on a display device of the second conference client device.
    Type: Grant
    Filed: October 19, 2020
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Shihao Qian, Bo Zang
  • Patent number: 11163424
    Abstract: Methods and systems for unifying display of virtual resources are described herein. A virtual session between a client device and a server device may be established. During the virtual session, a user may request, via the client device, to access a uniform resource locator (URL) via a browser associated with the server device. The URL request may be redirected. For example, the client device may receive, from the server device, a request to access the URL via a different browser. The client device may determine another browser with which to access the URL, and the URL may be launched via the other browser. The client device may generate a unified display of the URL launched via the other browser and one or more other URLs.
    Type: Grant
    Filed: June 25, 2018
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventor: Manbinder Pal Singh
  • Patent number: 11165856
    Abstract: The present disclosure is directed towards systems and methods of detecting a cause of anomalous load balancing among a plurality of servers. A device intermediary to a plurality of clients and a plurality of servers collects values of a plurality of counters. The device identifies a server of the plurality of servers that is an outlier. The device can identify a counter of the plurality of counters that is an outlier based on at least a comparison of values of each of the plurality of counters for each of the plurality of servers. The device can provide, responsive to the determination, an indication that a value of the counter is a factor causing the server to have uneven load balancing during the time interval.
    Type: Grant
    Filed: April 25, 2017
    Date of Patent: November 2, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Nastaran Baradaran, Muraliraja Muniraju
  • Publication number: 20210334091
    Abstract: Described embodiments provide systems and methods for selecting a version of an application to launch for a client device according to a context of the client device. A computing device can receive a request from a client device to launch an application. The request can include an identifier that indicates multiple versions of the application are accessible in which to launch the application. The computing device can select, using the identifier, a version of the application according to a context of the client device. The computing device can provide the client device with access to the selected version of the application, so as to enable the client device to launch a version of the application compatible with the context of the client device.
    Type: Application
    Filed: June 18, 2021
    Publication date: October 28, 2021
    Applicant: Citrix Systems, Inc.
    Inventor: Ashish Gujarathi
  • Publication number: 20210334589
    Abstract: Systems and methods for identifying individuals with a user-requested expertise are provided. For example, the system can include a processor configured to receive a user input and extract one or more keywords from the input. The processor can generate search requests based upon the one or more keywords, each search request identifying at least one application programming interface (API) call configured to invoke at least one API function as exposed by a software application. The processor can transmit the search requests to the software applications and receive search responses. The processor can determine a plurality of software application users and a set of associated evidence, each set of associated evidence including user interactions with each of the software applications. The processor can aggregate the evidence into an aggregated data set and configure the aggregated data set as an input to a machine learning classifier for ranking the sets of evidence.
    Type: Application
    Filed: April 23, 2020
    Publication date: October 28, 2021
    Applicant: Citrix Systems, Inc.
    Inventors: Samuel Christopher John Plant, Nathan Alexander Burn, John Matthew Dilley, Ellen Rose Wootten, Nilpa Madhusudan Shah
  • Publication number: 20210336921
    Abstract: Described embodiments provide systems and methods for invalidating a cache of a domain name system (DNS) information based on changes in internet protocol (IP) families. A mobile device having one or more network interfaces configured to communicate over a plurality of networks using a plurality of internet protocol (IP) families is configured to maintain a cache storing DNS information of one or more IP addresses of a first IP family of the plurality of IP families used by the mobile device for a connection to a first network of the plurality of networks. The device can detect a change in the connection of the mobile device from the first network using the first IP family to a second network using a second IP family different from the first IP family and flush at least the DNS information of one or more IP addresses of the first IP family from the cache to prevent use by the mobile device of an IP address that corresponds to an invalid cache entry.
    Type: Application
    Filed: July 8, 2021
    Publication date: October 28, 2021
    Applicant: Citrix Systems, Inc.
    Inventors: Sandeep R. Deshpande, Madhurima Nath
  • Patent number: 11159396
    Abstract: A computer system may include a server configured to provide access to a plurality of shared applications, and a client computing device. The client computing device may have a display associated therewith and cooperate with the server to run shared applications from among the plurality of shared applications, determine at least one group of the shared applications running on the client computing device having a relationship therebetween based upon a sequence in which the shared applications are activated, and display the shared applications from the at least one group on the display.
    Type: Grant
    Filed: October 26, 2018
    Date of Patent: October 26, 2021
    Assignee: CITRIX SYSTEMS, INC.
    Inventor: Jian Ding
  • Patent number: 11157599
    Abstract: Techniques are disclosed for rendering a watermark on content in a manner as to not obfuscate or otherwise cause visual defects to data elements in the content. An example methodology implementing the techniques includes segmenting a watermark to be rendered on the content into multiple watermark pieces. Then, prior to rendering a particular watermark piece, a check is made to determine whether there is a data element at the location in the content at which the particular watermark piece is to be rendered. If a data element is detected at that location, the particular watermark piece is rendered such that the data element overlays the particular watermark piece to render the watermark as a masked watermark. Otherwise, if no data element is detected at that location, the watermark piece is rendered on the content to be visible. The process is repeated to render the remaining watermark pieces.
    Type: Grant
    Filed: October 25, 2019
    Date of Patent: October 26, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Fuping Zhou, Yeping Liu