Search

EP-4738132-A1 - INTERFACE ENGINE(S) FOR IDENTIFYING PERIPHERIAL CONNECTIONS BASED ON USER S CLIENT DEVICE

EP4738132A1EP 4738132 A1EP4738132 A1EP 4738132A1EP-4738132-A1

Abstract

Systems and methods herein provide an interface engine and its related functions. In an example, a method includes identifying, by an interface engine, an event involving a peripheral for a client device. The peripheral is an external device that extends the functionality of the client device. Responsive to identifying the event, the interface engine determines connection capabilities of the client device and determines connection for the peripheral based on the connection capabilities of the client device and the event. The interface engine may then generate and send a notification of the connection to the client device.

Inventors

  • AJAX, Michael Jeffrey
  • VARMA, Shyamal K
  • CHUNG, MATTHEW
  • ANAND, Asha

Assignees

  • Microsoft Technology Licensing, LLC

Dates

Publication Date
20260506
Application Date
20251028

Claims (15)

  1. A computing apparatus comprising: a computer-readable storage medium; an interface engine comprising processor-executable instructions stored on the computer-readable storage medium; and a processor coupled to the computer-readable storage medium and configured to execute the processor-executable instructions, wherein the processor-executable instructions, when executed, direct the computing apparatus, to at least: identify an event involving a peripheral and a client device, wherein the peripheral comprises an external device that extends a functionality of the client device; determine connection capabilities of the client device; determine a connection for the peripheral based on the connection capabilities of the client device and the event; and generate a notification of the connection for the client device.
  2. The computing apparatus of claim 1, wherein the processor-executable instructions to identify the event involving a peripheral for the client device, when executed, further direct the computing apparatus to: detect a defective connection between the peripheral and the client device.
  3. The computing apparatus of claim 1, wherein the processor-executable instructions to determine the connection for the peripheral based on the connection capabilities of the client device, when executed, further direct the computing apparatus to: generate an input requesting connections capable of connecting the peripheral to the client device based on the connection capabilities of the client device and the event; provide the input to a content generator, wherein the content generator generates a response responsive to receiving the input; and receive, from the content generator, the response comprising the connection for the peripheral.
  4. The computing apparatus of claim 1, wherein the processor-executable instructions to identify the event involving a peripheral for the client device, when executed, further direct the computing apparatus to: receive, from the client device, a query involving the peripheral; and perform one or more natural language processes on the query.
  5. The computing apparatus of claim 1, wherein the processor-executable instructions to determine the connection for the peripheral based on the connection capabilities of the client device, when executed, further direct the computing apparatus according to one of the following to: (i) determine an available capacity of the client device; and determine the connection capabilities of the client device based on the available capacity; (ii) determine dynamic metadata associated with the client device; and determine the connection for the peripheral based on the dynamic metadata associated with the client device.
  6. A method comprising: identifying, by an interface engine, an event involving a peripheral for a client device, wherein the peripheral comprises an external device that extends a functionality of the client device; determining, by the interface engine, connection capabilities of the client device; determining, by the interface engine, a connection for the peripheral based on the connection capabilities of the client device and the event; and generating, by the interface engine, a notification of the connection for the client device.
  7. The method of claim 6, wherein: determining, by the interface engine, the connection capabilities of the client device comprises determining, by the interface engine, a hardware capacity of the client device; and determining, by the interface engine, connection for the peripheral based on the connection capabilities of the client device and the event comprises: generating, by the interface engine, a input requesting connections capable of connecting the peripheral to the client device based on the hardware capacity of the client device and the event; providing, by the interface engine, the input to a content generator; and receiving, by the interface engine, a response from the content generator comprising the connection for the peripheral, wherein the content generator generates the response responsive to the input.
  8. The method of claim 6, wherein identifying, by the interface engine, the event involving the peripheral for the client device comprises one of the following: (i) detecting, by the interface engine, a fault caused by a connection between the peripheral and the client device; (ii) receiving, by the interface engine, a query involving the peripheral from the client device; and determining, by the interface engine, the connection for the peripheral based on the connection capabilities of the client device and the event comprises: performing, by the interface engine, one or more natural language processes on the query; determining, by the interface engine, the peripheral from the query based on the one or more natural language processes; and generating, by the interface engine, a recommendation comprising the connection for the peripheral based on the peripheral and the connection capabilities of the client device.
  9. The method of claim 6, wherein the method further comprises determining, by the interface engine, the connection for the peripheral based on the connection capabilities of the client device and the event comprises: determining, by the interface engine, at least one existing connections associated with the client device; and determining, by the interface engine, the connection based on the at least one existing connection and optionally wherein determining, by the interface engine, the connection capabilities of the client device comprises: determining, by the interface engine, a hardware capacity of the client device; and determining, by the interface engine, the connection capabilities of the client device based on the hardware capacity.
  10. The method of claim 6, wherein the method further comprises determining, by the interface engine, the connection for the peripheral based on the connection capabilities of the client device and the event comprises: determining, by the interface engine, dynamic metadata associated with the client device, wherein the dynamic metadata comprises one or more of: port availability; port specifications; operating system and drivers; bandwidth requirements; version compatibility; and port placement and accessibility; and optionally wherein the connection comprises one of: a hardware connection; or a wireless connection.
  11. A computer readable storage media comprising processor-executable instructions configured to cause a processor to: identify, by an interface engine, an event involving a peripheral for a client device, wherein the peripheral comprises an external device that extends a functionality of the client device; determine, by the interface engine, connection capabilities of the client device; determine, by the interface engine, a connection for the peripheral based on the connection capabilities of the client device and the event; and generate, by the interface engine, a notification of the connection for the client device.
  12. The computer readable storage media of claim 11, wherein: the processor-executable instructions to determine, by the interface engine, the connection capabilities of the client device cause the processor to further execute processor-executable instructions stored in the computer readable storage media to: determine, by the interface engine, available capacity of the client device; and the processor-executable instructions to determine, by the interface engine, the connection for the peripheral based on the connection capabilities of the client device cause the processor to further execute processor-executable instructions stored in the computer readable storage media to: generate, by the interface engine, an input requesting connections capable of connecting the peripheral to the client device based on the available capacity of the client device and the event; provide, by the interface engine, the input to a content generator; and receive, by the interface engine, a response from the content generator comprising the connection for the peripheral, wherein the content generator generates the response responsive to the input.
  13. The computer readable storage media of claim 11, wherein the processor-executable instructions to identify, by the interface engine, the event involving a peripheral cause the processor to further execute processor-executable instructions stored in the computer readable storage media to: determine, by the interface engine, an improper connection between the peripheral and the client device, wherein the improper connection comprises reducing the functionality of the peripheral for the client device.
  14. The computer readable storage media of claim 11, wherein the processor-executable instructions to generate, by the interface engine, the notification of the connection for the client device cause the processor to further execute processor-executable instructions stored in the computer readable storage media to: generate, by the interface engine, a recommendation for the connection, wherein the recommendation comprises a link to information on the connection; and transmit, by the interface engine, the recommendation to the client device.
  15. The computer readable storage media of claim 11, wherein: the processor-executable instructions to determine, by the interface engine, the connection for the peripheral based on the connection capabilities of the client device cause the processor to further execute processor-executable instructions stored in the computer readable storage media according to one of the following to: (i) determine, by the interface engine, at least one existing connections associated with the client device; and the processor-executable instructions to generate, by the interface engine, the notification of the connection for the client device cause the processor to further execute processor-executable instructions stored in the computer readable storage media to: generate, by the interface engine, an arrangement recommendation for the at least one existing connections and the connection determined based on the connection capabilities of the client device; (ii) determine, by the interface engine, a plurality of compatible connections for the peripheral; and determine, by the interface engine, the connection from the plurality of compatible connections based on the connection capabilities of the client device.

Description

TECHNICAL FIELD Aspects of the disclosure are related to the field of computer software applications and services and, in particular, to interface engines for determining or identifying peripheral connections based on a user's client device. BACKGROUND In the modern world, peripherals or external devices that enhance the functionality of client devices are becoming increasingly prevalent. These peripherals, ranging from simple input devices like keyboards and mice to more complex equipment such as external graphics cards and virtual reality headsets, significantly broaden the capabilities of computers, tablets, and smartphones. The growing demand for higher performance and enhanced user experiences drives this trend, as users seek to optimize their devices for gaming, professional work, and creative pursuits. Innovations in connectivity technologies, such as USB-C®, Thunderbolt®, and Bluetooth® have made it easier than ever to integrate these peripherals seamlessly, allowing for greater flexibility and convenience. As a result, the ecosystem of external devices continues to expand, enabling users to tailor their technological setups to meet their specific needs and preferences. SUMMARY Technology disclosed herein includes software applications and services that provide an interface engine, and its related functions. In an example, an interface engine identifies an event involving a peripheral for a client device. For example, the event is a defective connection between the peripheral and the client device, or in another example, the event is a query submitted by the client device involving the peripheral. Responsive to identifying the event, the interface engine determines the connection capabilities of the client device. In some embodiments, this includes determining hardware capacity of the client device or available capacity of the client device. In some cases, determining the hardware capacity is performed by requesting metadata from the client device based on the available capacity and the hardware capacity of the client device. As described in greater detail below, the metadata includes various information about the client device's hardware capacity and/or available capacity, such as port types and specifications, available bandwidth, power delivery capabilities, current hardware utilization, operating system version, driver availability, and any existing peripheral connections. Responsive to determining the connection capabilities of the client device, the interface engine determines one or more connections for the peripheral based on the connection capabilities of the client device. For example, the interface engine generates an input requesting connections capable of connecting the respective peripheral (identified from the event) to the client device based on the connection capabilities of the client device. The input, which may include a prompt, is then submitted to a content generator which, in turn, outputs a response containing a listing of connections for the client device. The content generator provides the output to the interface engine. The interface engine generates a notification based on the response from the content generator. The notification includes a recommendation of one or more connections for the peripherals based on the response from the content generator. As described in greater detail below, in some embodiments, the interface engine ranks the connections provided in the response to identify the one or more connections for the client device, depending on the application. Once generated, the interface engine provides the notification to the client device. In some embodiments, the interface engine determines one or more peripherals compatible with the client device. For example, responsive to determining the connection capabilities of the client device, the interface engine determines one or more peripherals based on the connection capabilities of the client device. Based on the peripherals identified as compatible with the client device, the interface engine generates a notification containing a recommendation of the one or more peripherals and provides the notification to a respective client device. This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Technical Disclosure. It is understood that this Overview is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS Many aspects of the disclosure are better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views. While several embodiments are describe