Patents Assigned to Citrix System, Inc.
  • Patent number: 11609778
    Abstract: A virtual server includes at least one processor to retrieve a user layer from a user's personalization container, and initiate mounting of the user layer to a target operating system. During the mounting, the at least one processor determines that the user layer did not originate with the target operating system. The user layer is modified so that file system objects and registry objects are compatible with the target operating system. Mounting of the modified user layer is completed to create a single composited layered image.
    Type: Grant
    Filed: November 20, 2020
    Date of Patent: March 21, 2023
    Assignee: Citrix Systems, Inc.
    Inventor: William Buckley
  • Patent number: 11610008
    Abstract: A computer system includes a memory to store an application. A processor is configured to start the application, and insert a secret-server hook into the application during start-up. The secret-server hook has instructions to access a secret server with the secret information stored therein. In response to a call being made by the application for the secret information, the secret-server hook has further instructions to intercept the call, and provide the secret information in the secret server to the application based on the intercepted call.
    Type: Grant
    Filed: November 18, 2020
    Date of Patent: March 21, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Abraham Mir
  • Patent number: 11609924
    Abstract: A method is provided for converting a single database query into multiple database queries for multiple databases and aggregating the results of each of the queries. The method includes receiving, from a calling device, an input database query including a selection set defining an aggregation key, at least one first field to be queried in a first database, and at least one second field to be queried in a second database, generating a first database query representing a first request to retrieve the at least one first field from the first database, generating a second database query representing a second request to retrieve the at least one second field from the second database, aggregating the first response and a second response to the second database query from the first database to produce an aggregated response, and providing the aggregated response to the calling device.
    Type: Grant
    Filed: April 14, 2021
    Date of Patent: March 21, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: R V Shouri Gupta, Subramanian Ramamurti, Amit Kumar Meena, Kunal Naithani
  • Patent number: 11611545
    Abstract: Described embodiments provide systems and methods for connecting to a server of a plurality of servers. The system may include a device intermediary between a client and a plurality of servers. The device may receive a remote desktop protocol (RDP) request from the client to connect to one of the plurality of servers. The RDP request may include a token. The device may cause a load-balancer of the plurality of servers to modify or remove the token of the RDP request, responsive to presence of a session directory/broker. The device may receive a server redirect packet that indicates a target server identified from the plurality of servers by the session directory, to which the client is to connect. The device may cause the server redirect packet to be modified to cause the client to send a redirected connection request packet for connecting with the target server.
    Type: Grant
    Filed: June 19, 2020
    Date of Patent: March 21, 2023
    Assignee: Citrix Systems, Inc.
    Inventor: Viswanath Yarangatta Suresh
  • Publication number: 20230071923
    Abstract: A computing device configured to provide recommended candidates for completion of an assigned task to a user assigning the task is provided. The computing device includes a memory, a user interface, and at least one processor coupled to the memory and the user interface. The at least one processor is configured to receive input specifying information regarding the task, determine one or more task specifics associated with the task from the task information, identify candidate value information regarding one or more candidates to complete the task, compare the one or more task specifics to the candidate value information regarding the one or more candidates to determine one or more match scores of the one or more candidates, organize a list of recommended candidates based upon the one or more match scores, and display, on the user interface, at least a portion of the list of recommended candidates.
    Type: Application
    Filed: October 27, 2021
    Publication date: March 9, 2023
    Applicant: Citrix Systems, Inc.
    Inventors: Ze Chen, Kun Li
  • Patent number: 11599449
    Abstract: A GUI testing device may be configured to execute a testing state machine for interacting with a software application to generate an initial screen of a GUI. The GUI testing device may be configured to determine a current state in the testing state machine based upon a matching trigger target in the initial screen to a given state. The current state may include an operation, and the operation may associate with a trigger target to operate on. The trigger may include a source state, a destination state, and a trigger target. The operation may include a user input operation, and an operation trigger target. The GUI testing device may be configured to perform the operation on the matching trigger target in the initial screen to generate a next screen of the GUI, and advance from the current state to a next state based upon the trigger.
    Type: Grant
    Filed: August 20, 2021
    Date of Patent: March 7, 2023
    Assignee: Citrix Systems, Inc.
    Inventor: Kai Lu
  • Publication number: 20230066791
    Abstract: A computing device configured to provide personal contact recommendations to a user of a messaging application is provided. The computing device includes a memory, a user interface, and at least one processor coupled to the memory and the user interface. The at least one processor is configured to monitor interactions between the user and the messaging application during a messaging session, determine one or more additional participants in the messaging session, determine a plurality of closeness values based upon the user and the one or more additional participants in the messaging session, determine one or more recommended contacts for the user based upon the plurality of closeness values, and display, on the user interface, an identifier of at least one of the one or more recommended contacts to the user during the messaging session.
    Type: Application
    Filed: September 22, 2021
    Publication date: March 2, 2023
    Applicant: Citrix Systems, Inc.
    Inventors: Peng Yao, Tianyu Xiao
  • Patent number: 11593714
    Abstract: A computer system is provided. The computer system includes a memory, a network interface, and a processor coupled to the memory and the network interface. The processor is configured to receive a response to a request to verify whether an ostensible client of a service is actually a client or a bot, the response including an indicator of whether the ostensible client is a client or a bot; receive information descriptive of interoperations between the ostensible client and the service that are indicative of whether the ostensible client is a client or a bot; and train a plurality of machine learning classifiers using the information and the indicator to generate a next generation of the plurality of machine learning classifiers.
    Type: Grant
    Filed: June 19, 2020
    Date of Patent: February 28, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Aman Agrawal, Josephine Suganthi Joseph Leo, Kasirao Velugu, Praveen Dandin, Rama Rao Katta, Ratnesh Singh Thakur, Seth Kenneth Keith, Rakesh Thangellapalli
  • Patent number: 11592966
    Abstract: Embodiments described include systems and methods for displaying overlays for a network application. A client application on a client device can establish a session to a network application accessed via an embedded browser of the client application. The embedded browser of the client application may receive and display a web page of the network application. Based on one or more conditions and/or policies, the client application may identify and display overlay content over the web page in the embedded browser. The overlay content may include, but is not limited to, training videos, tutorials, social options (e.g., emoticons, likes), form help text, form autofill suggestions, and/or navigation assistance. Once the overlay content is presented, feedback can be received in order to modify the subsequent overlays.
    Type: Grant
    Filed: January 11, 2021
    Date of Patent: February 28, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Vipin Borkar, Santosh Sampath, Deepak Sharma, Arvind SankaraSubramanian
  • Patent number: 11595482
    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: October 1, 2021
    Date of Patent: February 28, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Erica Tomes, Jayadev Marulappa Niranjanmurthy, Georgy Momchilov
  • Patent number: 11593129
    Abstract: A computing device includes a display, and a processor coupled to the display. The processor is configured to monitor user input for a template keyword that matches with one or more templates, and display on the display one or more application service options in response to the template keyword matching the one or more of the templates. Each application service option corresponds to an action that can be performed. The processor provides template content data to a server, with the template content data defining the action corresponding to the template associated with the application service option selected by a user of the computing device.
    Type: Grant
    Filed: June 23, 2021
    Date of Patent: February 28, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Zongpeng Qiao, Ze Chen, Ke Xu, Tao Zhan
  • Publication number: 20230059940
    Abstract: Described herein are systems and methods for application health based network traffic routing in a geographically distributed cloud service. The domain name system (DNS) resolver can receive, from a service executing on one or more servers hosting a resource, a performance score of the resource. The performance score can be computed from a plurality of metrics determined from a performance monitoring service executing on the one or more servers in communication with the resource. The plurality of metrics can include a first set of performance metrics based on simulated client requests and a second set of performance metrics based on an application's own performance factors. The DNS resolver can receive, from a client, a request to resolve a DNS request. The DNS resolver can transmit, by the DNS resolver, a response to the request identifying the one or more servers selected based on the performance score of the resource.
    Type: Application
    Filed: August 18, 2021
    Publication date: February 23, 2023
    Applicant: Citrix Systems, Inc.
    Inventors: Sachin Mandya Shankar, Hrushikesh Shrinivas Paralikar
  • Publication number: 20230055677
    Abstract: The present disclosure is directed to a scalable, extensible, fault-tolerant system for stateful joining of two or more streams that are not fully synchronized, event ordering is not guaranteed, and certain events arrive a bit late. The system can ensure to combine the events or link the data in near real-time with low latency to mitigate impacts on downstream applications, such as ML models for determining suspicious behavior. Apart from combining events, the system can ensure to propagate the needed entities to other product streams or help in entity resolution. If any of the needed data is yet to arrive, a user can configure a few parameters to achieve desired eventual and attribute consistency. The architecture is designed to be agnostic of stream processing framework and can work well with both streaming and batch paths.
    Type: Application
    Filed: September 1, 2021
    Publication date: February 23, 2023
    Applicant: Citrix Systems, Inc.
    Inventors: Pakshal Kumar H Dhelaria, Ambarish Kumar, Saifulla Shaik, Aikaterini Kalou
  • Publication number: 20230049690
    Abstract: Described embodiments provide systems and methods for tunneling data packets to a server. A computing device can include a processor and a network interface. The processor is configured to execute a network service, a local application, and a virtual private network (VPN) application. The network service can receive a packet from the local application for transmission via a VPN tunnel, the packet comprising a source address of the computing device and a source port associated with the local application. The network service can determine that the packet matches a first tunnel filter. The network service can encapsulate, responsive to the determination that the packet matches the first tunnel filter, the packet with the header comprising a localhost destination address and a destination port associated with the VPN application. The network service can provide the encapsulated packet to the VPN application.
    Type: Application
    Filed: August 13, 2021
    Publication date: February 16, 2023
    Applicant: Citrix Systems, Inc.
    Inventors: Vishnu Prateek Ponaka, Pradeep Gaikwad, Jateen Mittal, Mukul Agarwal
  • Patent number: 11582318
    Abstract: An analytics server receives from client computing devices end-user events. Each client computing device is operated by an end-user to access an application at a web server based on the end-user events resulting in calls being passed through a proxy to the web server. The analytics server receives from the proxy the calls being made to the web server, and receives return responses from the web server being passed through the proxy. The return responses correspond to activities being performed within the application. The end-user events are correlated with the corresponding calls and return responses from the proxy. Respective correlated end-user events, calls and return responses are translated into respective event vectors. The respective event vectors are processed to determine similarities among the client computing devices. The similar activities are associated with a quality indicator to identify anomalies within the application for corrective action to be taken.
    Type: Grant
    Filed: August 21, 2020
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventor: Jeroen Mattijs Van Rotterdam
  • Patent number: 11580311
    Abstract: Techniques are disclosed for determining a target language for a communication session and configuring a language mode of an input method editor (IME) to the target language. An example methodology implementing the techniques includes, by a computing device, detecting a communication to a recipient via a software application running on the computing device, determining a target language for the communication, and configuring a language mode of an input method editor to the target language. The target language may be determined based on an attribute or attributes of the recipient of the communication. In some cases, the target language may be determined based on an attribute or attributes of a contents of a prior communication.
    Type: Grant
    Filed: July 2, 2020
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Qiming Li, SungTae Han, Sheng-Chi Zhang
  • Patent number: 11582131
    Abstract: Embodiments described include systems and methods for executing in an embedded browser an application script for network applications of different origins. A client application can establish a first session with a first network application of a first entity at a first origin via an embedded browser within the client application and a second session with a second network application of a second entity at a second origin via the embedded browser within the client application. A scripting engine within the client application of a client device of a user at a third origin can identify an application script having instructions to interact with the first network application and the second network application, and can execute the instructions to perform a task across the first network application of the first entity at the first origin and the second network application of the second entity at the second origin.
    Type: Grant
    Filed: February 15, 2021
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 11582282
    Abstract: The systems and methods of the present disclosure are directed towards a dynamic system that is configured to identify and map networked traffic, such as that of video, voice, file transfer, and web based applications to predetermined Quality of Service (QoS) classes. The different QoS classes can be associated with different traffic priorities. The networked traffic can be encrypted, which can prevent an intermediate device from processing or otherwise reading the packet headers of the traffic. The systems and methods of the present disclosure can predict QoS classes for encrypted traffic based on traffic patterns and other characteristics of the encrypted traffic.
    Type: Grant
    Filed: August 13, 2020
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Marco Murgia, Praveen Raja Dhanabalan, Anup Lal Gupta
  • Patent number: 11580148
    Abstract: Techniques are disclosed for content storage in a way that facilitates consistent and concurrent read/write processing of stored documents. An example methodology implementing the techniques includes segmenting the contents of a document into a plurality of content segments and storing the plurality of content segments within a data structure, the data structure including storage blocks having storage portions and buffer portions. The storage of the plurality of content segments includes storage of content segments within a storage portions of the storage blocks of the data structure. The method also includes receiving at least one change to the content and utilizing a buffer portion of at least one storage block to store the at least one change to the content.
    Type: Grant
    Filed: January 3, 2020
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Yongyu Chen, Lei Xu, Wei Long, Liang Bao
  • Patent number: 11582327
    Abstract: Techniques are provided for a coordinated microservice system including a coordinator and multiple services, which interact with each other. Each of the services can have multiple execution instances, which run independently of each other. In operation, the current status of each instance is evaluated against one or more rules to determine whether the current status changes the topography of the services and updating the topography based on the changes. An execution plan is created for executing a command based on one or more predefined rules and the updated topography, where the execution plan includes one or more steps for executing the command on each instance of the service. The execution plan is executed on each instance of the service in accordance with the one or more predefined rules.
    Type: Grant
    Filed: October 21, 2021
    Date of Patent: February 14, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Jorge Ivan Cifuentes de la Paz, Rodney Gallart Acosta