Examples described herein are generally related to techniques for placing and receiving calls via a web-browser interface.
People often have multiple phone numbers and multiple devices associated with the phone numbers. For example, a person may have a home telephone number associated with a home phone, a mobile telephone number associated with a mobile device, an office telephone number associated with an office phone, and the like. The user is rarely in a location in which incoming calls to any of the numbers will always notify the person of an incoming call. Moreover, others that try to contact the person may have to remember multiple numbers if the first number did not result in a connection. Creating a non-numeric web-based universal resource indicator (URI) that may be used to access a person greatly simplifies the process of establishing a communication session with that person. Others need only remember the URI of the person and have access to a web-browser or other soft-client capable of addressing a URI to contact them. It is with respect to these and other considerations that the embodiments described herein are needed.
In another embodiment, the caller's computing device 20 may not include a display component and may only include a voice recognition unit receiving input from a microphone as an input mechanism. The caller's computing device 20 may further include a speaker and/or a Bluetooth like RF coupling to a secondary audio input/output device. The caller may speak a URI and a command such as “Call Bob” to initiate a communication session with the person associated with the URI. The exact order and/or structure of the URI and command are subject to specific design implementations. The audio may be carried across a voice connection such as, but not limited to, a cellular connection, a Voice-over LTE (VoLTE) cellular data connection, or other telephony connection coupled with or routable to an IP based server that may parse and re-direct the command to the server associated with the URI for processing.
In the example of
In operation, caller 10 may wish to contact callee 70. Rather than using a telephone and trying to figure out which device callee 70 is currently near and its associated telephone number, caller 10 uses his/her computing device 20 to browse to the webpage 102 identified by the callee's URI. Once the web-page 102 loads onto the caller's computing device 20, caller 10 may activate an executable portion of the web page 102 to initiate a ‘call’ to callee 70. Activation may be a graphical user interface (GUI) function specific to the device or soft-client being used. One of ordinary skill in the art may readily ascertain options for implementing such GUIs. The webpage 102 can send and receive data streams including voice, video, messaging, or any combination thereof associated with a communication session by virtue of the Internet connection with the caller's computing device 20. The webpage's 102 executable code may determine a status of callee 70 such as, for instance, whether they have currently registered one or more specific telephony or computer devices on which they may be reached. If there is a preference, the webpage's 102 executable code may instruct the network connector component 104 to “ring” a particular device 30, 40, 50, 60 of callee 70. If there is no preference, the webpage's 102 executable code may instruct the network connector component 104 to “ring” all known devices 30, 40, 50, 60 of callee 70. The callee 70 may then choose to answer one of the devices 30, 40, 50, 60 to establish a bi-directional communication session with the caller 10 via the webpage 102.
In the manner described above and as described in more detail below, a caller can make a call to a callee using only a web browser and without having to know the telephone number of the callee. The caller need only know a URI associated with the callee. Often the URI will be descriptive or intuitive to the name of the callee making it easy to remember. For example, the URI may comprise some form of a “domain name/username” like that shown in
Alternatively, while not shown in
The communication interface(s) 109 may include a voice-over-IP (VoIP) interface 106 adapted to exchange IP based telephony signaling (e.g., SIP) and/or media data with other IP network devices using a VoIP protocol. Another communication interface 109 may be a PSTN interface 104 adapted to convert incoming PSTN audio data to VoIP audio data and convert outgoing VoIP audio data to PSTN audio data. Still another communication interface 109 may be an IP data interface 117 adapted to exchange IP data with other IP network devices. This may include IP data exchanged with a mobile wireless handset over an intermediate mobile carrier network. In addition to voice, it may also include the ability to exchange video, text, and messaging data or any combination thereof depending on the types and capabilities of the communication endpoints. Yet another communication network interface 109 may be directed toward an alternative network 115 adapted to exchange data with a wireless handset or a hybrid mobile device. Examples of alternative network(s) may include, but are not limited to, WiMax and whitespace. A whitespace network may be characterized as one that utilizes frequency spectrum that is overlapping with that of broadcast television frequency spectrum.
The network connector 104 may further include several inter-operable software modules operable with application programming interfaces (APIs) 121 and communication interfaces 109 and configured to intelligently establish and/or manage a communication session. These software modules may include a routing module 130a and communication connection logic 130b. The aforementioned software modules have functional names for convenience and ease of reference. These functional names should not be construed as limiting to the various software modules individually or the network connector 104 as a whole. There may be functions performed by one or more of the software modules in conjunction with the APIs 121 and network communication interfaces 109 that achieve a stated purpose or goal.
The routing module 130a may be configured to physically or logically connect communication links. The communication connection logic 130b may be configured to, among other things, establish a connection via a web browser or other URI enabled soft-client of a first endpoint 20 to one of a number of second communication devices or endpoints 30, 40, 50, 60 with the assistance of the routing module 130a. An endpoint may comprise a communication device such as a mobile phone, a POTS phone, and/or a VoIP phone. An endpoint may also comprise a soft client (e.g., software implementation on computer hardware) reachable via, for example, an IP address associated with a web site (URI) or a hosted software program having network access. The hosted software program may be resident on any number of computer devices that have IP network connectivity including, but not limited to, smartphones, desktop and laptop computers, tablet computers, personal digital assistants (PDAs), embedded automobile computer systems, etc. Communication sessions between a first endpoint or endpoint and a second endpoint may encompass voice, video, and/or messaging depending on the capabilities of the respective endpoints. A communication session establishment procedure supported by the communication connection logic 130b, including the use of a web browser at the first endpoint 20, is described in more detail below.
The routing module 130a may further include intelligence via a processor and memory that enables it to determine the connectivity preference of a user 70 with respect to that user's multiple endpoints 30-60. Additionally, the routing module 130a may be able to determine both presence and status (on-line or off-line) of the endpoints 30-60. The connectivity preference may be rules based in that the user may, via the intelligence supporting the URI, specify certain endpoints as active or inactive during certain times of day. For example, the user may specify that an endpoint associated with home is inactive during normal working hours. Conversely, an endpoint associated with work may be inactive during non-work hours while a mobile endpoint may be left active continuously. Other rules may specify how to route in incoming call or data stream based on the identity of the caller. The embodiments are not limited to these examples.
More specifically, the routing module 130a may cooperate with the APIs and network interfaces to physically or logically connect communication links to initially establish a communication session between communication devices and/or to perform a handoff of at least one communication link of a communication session from one network to another network. A communication session may be, for instance, between a first endpoint 20 and a second endpoint 30, 40, 50, 60. The routing module 130a may be configured to physically or logically establish communication links, join communication links, and sever communication links to a common or shared communication session based on commands or instructions received from the network connector 104.
The network connector 104 may execute various applications and/or other functionality for, among other things, setting-up, managing and tearing-down communication sessions between communication devices 20 and 30, 40, 50, 60. Also, various data may be stored in data storage 105 via memory 107 of the network connector 104. Data storage 105 illustrated in
The communication connection logic 130b may cooperate with the APIs and network interfaces to establish communication sessions between the first endpoint 20 and a second endpoint 30, 40, 50, 60. In various embodiments, communication connection logic 130b may be executed by the processor component 103 to receive a request to establish a bi-directional communication session (voice, video, text, messaging, and any combination thereof) between the first endpoint 20 and multiple endpoints 30, 40, 50, 60 via a uniform resource indicator (URI) accessed via a web browser or other soft-client of the first endpoint. The URI may comprise an executable portion of a web page accessed via the web browser in some embodiments. While the embodiments are not limited in this respect, the communication connection logic 130b may receive the request to establish the bi-directional communication session via, for example, a web real-time communication (WebRTC) application programming interface (API). Other examples of API functionality may include Adobe™ Flash™, and Microsoft™ CU-WebRTC. The embodiments are not limited to these examples.
As shown in
In some embodiments, the communication connection logic 130b may identify the multiple endpoints based on or associated with the URI. For example, user 70 may have previously registered with the service/network connector 104 that hosts the web browser based calling and the URI 302 may be associated with a known set of contact numbers and/or endpoint identifiers associated with the user 70. In some embodiments, this registration may include or comprise selecting a domain or subdomain 302. The domain or subdomain 302 may be descriptive of the user in some embodiments. For example, the domain http://domain.co/bob may be associated with a user 70 named Bob. Once registered, the user 70 may be prompted, as shown in
In the example shown in
In various embodiments, the communication connection logic 130b may be operative to send a connection request to one or more of the multiple endpoints. For example, in response to the connection request received from a computing device 20 or other first endpoint, communication connection logic 130b of network connector 104 may send a connection request to one or more of second endpoints 30, 40, 50, 60. In some embodiments, the connection request may be sent to each of second endpoints 30, 40, 50, 60. In other embodiments, communication connection logic 130b may receive status information for the multiple endpoints 30, 40, 50, 60 and may send the connection request to one or more of the second endpoints indicated as available via the status information which may have been previously entered as described above or which may be indicated on a device by device or endpoint by endpoint basis by the user 70. The embodiments are not limited in this respect.
In some embodiments, the communication connection logic 130b may send the connection request to two or more second endpoints 30, 40, 50, 60 using two or more disparate communication protocols for two or more disparate networks. For example, as shown in
In addition to the information described above with reference to
The connection request may prompt the second endpoints 30, 40, 50, 60 to indicate to user 70 that someone (e.g. user 10) is trying to contact them. This prompt may comprise an audio prompt, a tactile prompt and/or a visual prompt. The audio prompt may comprise playing an audio sound or ring. The tactile prompt may comprise activating a vibration mechanism of the second endpoints 30, 40, 50, 60. The visual prompt may comprise the generation of one or more graphical user interface (GUI) elements to notify the user 70 of the connection request. Each of the prompts may allow for the user 70 to accept, decline or defer the connection request. In other embodiments, the user 70 may not be available or may not notice the prompts and the connection request will be ignored completely.
In response to the user 70 acting upon the prompt and/or ignoring the prompt associated with the connection request, one or more of second endpoints 30, 40, 50, 60 may send a response to the network connector 104. For example, communication connection logic 130b may receive a connection acceptance response or a connection denial response from one of the multiple endpoints 30, 40, 50, 60. Based on the received response, the communication connection logic 130b may initiate the establishment of the bi-directional communication session between the first endpoint 20 and the one of the multiple endpoints 30, 40, 50, 60. The embodiments are not limited in this respect. Other embodiments are described and claimed.
In various embodiments, the connection requests may involve routing the request to a device 60 having IP connectivity and capable of sending and receiving rich media streams via a third party service. In such cases, the endpoint device 60 is a combination of hardware providing physical IP connectivity and software providing the logical connectivity for signaling and the actual IP packet media stream. Examples of third party rich media communication service providers may include, but are not limited to Microsoft™ Skype™, Google™ Hangouts™, Apple™ Facetime™, and the like. Thus, the user may register one or more third party user identifiers as ‘soft’ endpoints associated with an IP data physical endpoint 60.
In various embodiments, any of the foregoing functionality may be enabled by communication connection logic 130b. For example, at least one non-transitory machine-readable medium may comprise a set of instructions that in response to being executed on a computing device cause the computing device to perform any of the functionality, methods and/or processes described herein. In some embodiments, an apparatus may comprise a processor component and communication connection logic 130b to be executed by the processor component to perform any of the functionality, methods and/or processes described herein. In other embodiments, a system may comprise a processor component, memory coupled to the processor component and communication connection logic 130b to be executed by the processor component to perform any of the functionality, methods and/or processes described herein. The embodiments are not limited in this respect.
Included herein is a set of flow charts and message diagrams representative of exemplary methodologies for performing novel aspects of the disclosed architecture. While, for purposes of simplicity of explanation, the one or more methodologies shown herein, for example, in the form of a flow chart or flow diagram, are shown and described as a series of acts, it is to be understood and appreciated that the methodologies are not limited by the order of acts, as some acts may, in accordance therewith, occur in a different order and/or concurrently with other acts from that shown and described herein. For example, those skilled in the art will understand and appreciate that a methodology could alternatively be represented as a series of interrelated states or events, such as in a state diagram. Moreover, not all acts illustrated in a methodology may be required for a novel implementation.
At 410, a request to establish a bi-directional communication session between the first endpoint 402 and multiple endpoints 404 may be sent from the first endpoint 402 to the network connector 104. In some embodiments, the request may be initiated from a web page associated with a uniform resource indicator (URI) accessed via a web browser or other soft-client capable of accessing and rendering a URI of the first endpoint 404. At 420, a communication session connection request may be sent from the network connector 104 to one or more of the multiple endpoints 404. For example, the network connector 104 may send a communication session connection request to one or more of devices 30, 40, 50, 60 based on preference and/or availability information entered by user 70.
In various embodiments, a communication session connection response may be sent from the second endpoint(s) 404 to the network connector 104. This response may include an acceptance of the communication session connection request, a denial of the communication session connection request or an indication that no response to the request was received. If the response received at 430 comprises an acceptance, a bi-directional communication session between the first endpoint 402 and one of the second endpoint(s) 404 may be established at 440-1, 440-2 whereby the network connector 104 mediates or otherwise controls one or more media channel(s) for the bi-directional communication session. The embodiments are not limited in this respect.
In various embodiments, the logic flow at 502 includes receiving a communication session connection request to establish a bi-directional communication session between a first endpoint and multiple endpoints via intelligence associated with a uniform resource indicator (URI) accessed via a web browser or other soft-client of the first endpoint. For example, user 10 may visit a web page by navigating to a specific URI associated with the intended recipient (e.g., http://domain.co/bob) using web browser 102 of endpoint 20 or a special purpose application resident on endpoint 20 and, based on visiting this page or interacting with this page may indicate a desire to establish a communication session with user 70. The user 10 may not care how they connect to the user 70 and the user 70 may have previously indicated that they may be contacted using one or more different telephone numbers or other endpoint identifiers, via one or more different networks associated with one or more different endpoints 30, 40, 50, 60.
At 504, the logic flow may include identifying the multiple endpoints based on stored data associated with the URI. For example, the network connector 104 may store information previously entered by user 70 that associates the URI with user endpoints 30, 40, 50, 60. Additionally, the user 70 may also update the web page associated with the URI to indicate status and/or presence information associated with user 70 and/or any of endpoints 30, 40, 50, 60. The status and/or presence information may be dynamically updated by user 70 or may be rules-based according to time of day, location information, or calendar information. The embodiments are not limited in this respect.
In some embodiments, the logic flow at 506 may include sending a communication session connection request to one or more of the multiple endpoints. For example, network connector 104 may send concurrent communication session connection requests to each of user 70 devices 30, 40, 50, 60, to only devices currently indicated as available by user 70, to each or any number of devices 30, 40, 50, 60 in series based on a priority and/or calling order established by user 70, etc. At 508 the logic flow may include receiving a communication session connection acceptance response from one of the multiple endpoints. For example, user 70 may wish to accept the communication session connection request from network connector 104 as initiated by user 10 over user 70's web page using endpoint 30 and may indicate as such using endpoint 30. This action by user 70 may result in the communication session connection acceptance response being generated and sent from endpoint 30 to network connector 104. In other embodiments, the user may wish to deny the communication session connection request, ignore the communication session connection request, or may not be aware of the communication session connection request. In these embodiments, the response from one or more of endpoints 30, 40, 50, 60 or lack of response from any of endpoints 30, 40, 50, 60 may indicate that a communication session is not desired.
In some embodiments, the logic flow at 510 may include establishing a bi-directional communication session between the first endpoint and one of the multiple second endpoints. For example, if the user 70 accepts the communication session connection request using endpoint 30, network connector 104 may set up and mediate a bi-directional communication session (e.g., a media channel) between user 10 and user 70 using first endpoint 20 and one of second endpoints 30, 40, 50, or 60 respectively. The media channel may encompass multiple media protocols depending on the type of endpoints 20, 30, 40, 50, or 60 involved. The media channel for user 10's endpoint 20 (e.g., a computer) may be a webRTC media link since it represents a web browser connection with the web page of user 70 (e.g., http://domain.co/bob). The media channel for user 70's endpoint 30, 40, 50, or 60 may initially be a packet based (e.g., WebRTC or VoIP) connection and may be converted to a different media link if user 70's targeted endpoint is not packet based such as, for instance, a POTS phone endpoint 40 or a mobile phone endpoint 30. For a POTS phone endpoint 40, the packet based link will be converted to a PSTN link at the intersection of the IP network and the PSTN 106. Similarly, the packet based link may first be converted to a PSTN link at the intersection of the IP network 100 and the PSTN 106 and then be converted to a mobile (e.g., cellular) link at the intersection of PSTN 106 and the mobile network 108. For a VoIP phone endpoint 50, the packet based link may be formatted as a VoIP link while for a computer device endpoint 60, the packet based link may be formatted as a WebRTC link or other rich media type link. The embodiments are not limited in this respect.
As shown in
The second user associated with the URI may receive an incoming communication session connection request on one or more second endpoints 30, 40, 50, 60 that are communicable over one or more networks via one or more communication protocols at block 608. The second user associated with the URI may accept one or more of the communication session connection requests over one or more of the endpoints 30, 40, 50, 60 at block 610. The network connector component 104 may then establish a bi-directional communication session between the first user and their endpoint computing device 20 and the second user associated with URI and one or more of their endpoints 30, 4050, 60 at block 612. The embodiments are not limited to this example.
In another embodiment, a first user may use a first device (endpoint) to interface with the URI and request the web page 102 or other content rendering of the URI to establish a connection to the second user associated with the URI on one or more second endpoints associated with the second user while also instructing the web page 102 or other content rendering of the URI to contact the first user back over a different endpoint. For example, the first user may use a laptop computer to interact with the web page 102 or other content rendering of the URI but wish to establish a phone call with the second user associated with the URI on the first user's mobile phone and not the laptop computer endpoint used to interact with the web page 102 or other content rendering of the URI. Thus, the first user may request/instruct the web page 102 or other content rendering of the URI to establish a connection between the first user and the second user associated with the URI using a first user's device/endpoint of the first user's choosing.
In still another embodiment, the first user may also request/instruct the web page 102 or other content rendering of the URI to bridge one or more additional endpoints not necessarily associated with either the first user or the second user associated with the URI. The first user could supply the web page 102 or other content rendering of the URI with the requisite endpoint contact information (e.g., telephone number, SIP address, etc.) and have the web page 102 or other content rendering of the URI via the network connector 104 establish the communication link requested and join it to the communication session.
In yet another embodiment, a visitor to the web page 102 or other content rendering associated with the URI may set up a communication session between the user associated with the URI and a third party. In this scenario the first user would supply the web page 102 or other content rendering of the URI with the requisite endpoint contact information (e.g., telephone number, SIP address, etc.) of the third and have the web page 102 or other content rendering of the URI via the network connector 104 establish the communication link requested and join it to the communication session between the third party and the second user associated with the URI.
As used in this application, the terms “system” and “component” are intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution, examples of which are provided by the exemplary computing architecture 800. For example, a component can be, but is not limited to being, a process running on a processor, a processor, a hard disk drive, multiple storage drives (of optical and/or magnetic storage medium), an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a component. One or more components can reside within a process and/or thread of execution, and a component can be localized on one computer and/or distributed between two or more computers. Further, components may be communicatively coupled to each other by various types of communications media to coordinate operations. The coordination may involve the uni-directional or bi-directional exchange of information. For instance, the components may communicate information in the form of signals communicated over the communications media. The information can be implemented as signals allocated to various signal lines. In such allocations, each message is a signal. Further embodiments, however, may alternatively employ data messages. Such data messages may be sent across various connections. Exemplary connections include parallel interfaces, serial interfaces, and bus interfaces.
The computing architecture 800 includes various common computing elements, such as one or more processors, multi-core processors, co-processors, memory units, chipsets, controllers, peripherals, interfaces, oscillators, timing devices, video cards, audio cards, multimedia input/output (I/O) components, power supplies, and so forth. The embodiments, however, are not limited to implementation by the computing architecture 800.
As shown in
The system bus 808 provides an interface for system components including, but not limited to, the system memory 806 to the processing unit 804. The system bus 808 can be any of several types of bus structure that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of a variety of commercially available bus architectures. Interface adapters may connect to the system bus 808 via a slot architecture. Example slot architectures may include without limitation Accelerated Graphics Port (AGP), Card Bus, (Extended) Industry Standard Architecture ((E)ISA), Micro Channel Architecture (MCA), NuBus, Peripheral Component Interconnect (Extended) (PCI(X)), PCI Express, Personal Computer Memory Card International Association (PCMCIA), and the like.
The computing architecture 800 may comprise or implement various articles of manufacture. An article of manufacture may comprise a computer-readable storage medium to store logic. Examples of a computer-readable storage medium may include any tangible media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, and so forth. Examples of logic may include executable computer program instructions implemented using any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, object-oriented code, visual code, and the like. Embodiments may also be at least partly implemented as instructions contained in or on a non-transitory computer-readable medium, which may be read and executed by one or more processors to enable performance of the operations described herein.
The system memory 806 may include various types of computer-readable storage media in the form of one or more higher speed memory units, such as read-only memory (ROM), random-access memory (RAM), dynamic RAM (DRAM), Double-Data-Rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, polymer memory such as ferroelectric polymer memory, ovonic memory, phase change or ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS) memory, magnetic or optical cards, an array of devices such as Redundant Array of Independent Disks (RAID) drives, solid state memory devices (e.g., USB memory, solid state drives (SSD) and any other type of storage media suitable for storing information. In the illustrated embodiment shown in
The computer 802 may include various types of computer-readable storage media in the form of one or more lower speed memory units, including an internal (or external) hard disk drive (HDD) 814, a magnetic floppy disk drive (FDD) 816 to read from or write to a removable magnetic disk 818, and an optical disk drive 820 to read from or write to a removable optical disk 822 (e.g., a CD-ROM or DVD). The HDD 814, FDD 816 and optical disk drive 820 can be connected to the system bus 808 by a HDD interface 824, an FDD interface 826 and an optical drive interface 828, respectively. The HDD interface 824 for external drive implementations can include at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies.
The drives and associated computer-readable media provide volatile and/or nonvolatile storage of data, data structures, computer-executable instructions, and so forth. For example, a number of program modules can be stored in the drives and memory units 810, 812, including an operating system 830, one or more application programs 832, other program modules 834, and program data 836. In one embodiment, the one or more application programs 832, other program modules 834, and program data 836 can include, for example, the various applications and/or components of the system 100.
A user can enter commands and information into the computer 802 through one or more wire/wireless input devices, for example, a keyboard 838 and a pointing device, such as a mouse 840. Other input devices may include microphones, infra-red (IR) remote controls, radio-frequency (RF) remote controls, game pads, stylus pens, card readers, dongles, finger print readers, gloves, graphics tablets, joysticks, keyboards, retina readers, touch screens (e.g., capacitive, resistive, etc.), trackballs, trackpads, sensors, styluses, and the like. These and other input devices are often connected to the processing unit 804 through an input device interface 842 that is coupled to the system bus 808, but can be connected by other interfaces such as a parallel port, IEEE 1394 serial port, a game port, a USB port, an IR interface, and so forth.
A monitor 844 or other type of display device is also connected to the system bus 808 via an interface, such as a video adaptor 846. The monitor 844 may be internal or external to the computer 802. In addition to the monitor 844, a computer typically includes other peripheral output devices, such as speakers, printers, and so forth.
The computer 802 may operate in a networked environment using logical connections via wire and/or wireless communications to one or more remote computers, such as a remote computer 848. The remote computer 848 can be a workstation, a server computer, a router, a personal computer, portable computer, microprocessor-based entertainment appliance, a peer device or other common network node, and typically includes many or all of the elements described relative to the computer 802, although, for purposes of brevity, only a memory/storage device 850 is illustrated. The logical connections depicted include wire/wireless connectivity to a local area network (LAN) 852 and/or larger networks, for example, a wide area network (WAN) 854. Such LAN and WAN networking environments are commonplace in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which may connect to a global communications network, for example, the Internet.
When used in a LAN networking environment, the computer 802 is connected to the LAN 852 through a wire and/or wireless communication network interface or adaptor 856. The adaptor 856 can facilitate wire and/or wireless communications to the LAN 852, which may also include a wireless access point disposed thereon for communicating with the wireless functionality of the adaptor 856.
When used in a WAN networking environment, the computer 802 can include a modem 858, or is connected to a communications server on the WAN 854, or has other means for establishing communications over the WAN 854, such as by way of the Internet. The modem 858, which can be internal or external and a wire and/or wireless device, connects to the system bus 808 via the input device interface 842. In a networked environment, program modules depicted relative to the computer 802, or portions thereof, can be stored in the remote memory/storage device 850. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers can be used.
The computer 802 is operable to communicate with wire and wireless devices or entities using the IEEE 802 family of standards, such as wireless devices operatively disposed in wireless communication (e.g., IEEE 802.11 over-the-air modulation techniques). This includes at least Wi-Fi (or Wireless Fidelity), WiMax, and Bluetooth™ wireless technologies, among others. Thus, the communication can be a predefined structure as with a conventional network or simply an ad hoc communication between at least two devices. Wi-Fi networks use radio technologies called IEEE 802.11x (a, b, g, n, etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Fi network can be used to connect computers to each other, to the Internet, and to wire networks (which use IEEE 802.3-related media and functions).
Some examples may be described using the expression “in one example” or “an example” along with their derivatives. These terms mean that a particular feature, structure, or characteristic described in connection with the example is included in at least one example. The appearances of the phrase “in one example” in various places in the specification are not necessarily all referring to the same example.
Some examples may be described using the expression “coupled”, “connected”, or “capable of being coupled” along with their derivatives. These terms are not necessarily intended as synonyms for each other. For example, descriptions using the terms “connected” and/or “coupled” may indicate that two or more elements are in direct physical or electrical contact with each other. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.
In the foregoing Detailed Description, it can be seen that various features are grouped together in a single example for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed examples require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed example. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate example. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein,” respectively. Moreover, the terms “first,” “second,” “third,” and so forth, are used merely as labels, and are not intended to impose numerical requirements on their objects.
It is emphasized that the Abstract of the Disclosure is provided to comply with 37 C.F.R. Section 1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single example for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed examples require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed example. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate example. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein,” respectively. Moreover, the terms “first,” “second,” “third,” and so forth, are used merely as labels, and are not intended to impose numerical requirements on their objects.
This application claims the benefit of and priority to previously filed U.S. Provisional Patent Application Ser. No. 61/971,557 entitled “Systems and Methods of Communicating Via Web Browser” filed on Mar. 28, 2014, the subject matter of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61971557 | Mar 2014 | US |