Cross-domain intelligent event time bridge

Through the cross-domain calendar application service, the user importance level is automatically determined and customized tokens are generated, which solves the cumbersome problem of cross-domain sharing of electronic calendars, and simplifies cross-domain calendar access and improves meeting scheduling efficiency.

CN114667527BActive Publication Date: 2025-03-14MICROSOFT TECHNOLOGY LICENSING LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202080077680.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-11-05
Filing Date
2020-10-19
Publication Date
2025-03-14
Estimated Expiration
2040-10-19

AI Technical Summary

Technical Problem

The prior art requires complex multi-tenancy authorization, automatic discovery and search, and administrator-tenant relationship settings when sharing electronic calendars across the domain, resulting in cumbersome and inefficient processes.

Method used

Automatically determine the user's level of importance through the cross-domain calendar application service, and adjust sharing settings based on these levels, generate custom tokens to facilitate cross-domain calendar access, reducing the burden of sharing feature settings.

Benefits of technology

It realizes simplification of cross-domain calendar access, reduces processing costs, improves the efficiency of meeting scheduling, and avoids complex multi-lease authorization and automatic discovery processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114667527B_ABST
    Figure CN114667527B_ABST
Patent Text Reader

Abstract

In a non-limiting example of the present disclosure, systems, methods, and devices for providing cross-domain access to calendar availability are provided. A request for scheduling an event may be received. The request may include: an identity of an organizer user account, the organizer user account being associated with a first domain; and an identity of an invitee user account, the invitee user account being associated with a second domain. An importance level of the organizer user account to the invitee user account may be determined. Based on the importance level, it may be determined whether the organizer user account has access to events in an electronic calendar associated with the invitee user account. One or more events to which the organizer user account has access may be presented in an event scheduling assistant user interface associated with the organizer user account.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Electronic calendars and messaging applications integrated with these electronic calendars are ubiquitous in business environments and are increasingly used for scheduling personal events. Users in an organization can provide access to their calendars to other users in the organization. Those other users can then more easily determine when the user is free or busy for meeting reservations.

[0002] This document is directed to a general technical environment in which aspects of the technology disclosed herein have been considered. In addition, although a general environment has been discussed, it should be understood that the examples described herein should not be limited to the general environment identified in the background. Summary of the invention

[0003] This summary is provided to introduce in simplified form a selection of design concepts that are further described below in the detailed description. This summary is not intended to identify the key features or important features of the claimed subject matter, nor is it intended to be used to assist in determining the scope of the claimed subject matter. Other aspects, features, and / or advantages of the examples will be set forth in part in the description below, and in part will be apparent from the description or can be learned through the practice of the present disclosure.

[0004] Non-limiting examples of the present disclosure describe systems, methods, and devices for providing cross-domain access to electronic calendars. Access and / or the amount of calendar information shared with a user can be automatically determined based on one or more factors. For example, these factors may include collaborative signals (e.g., messages exchanged between users, meetings including users, etc.), the hierarchy of users in their respective organizations, and social media graphs. In some examples, a shared user can interact with sharing settings and provide access to their electronic calendar based on those settings. For example, a user can indicate that a first information set can be used to share with users outside of its domain, while a second information set cannot be used to share with users outside of its domain. In some examples, a shared user can set or a cross-domain calendar application service can automatically determine sharing categories for different users. These categories can have different types of information, which can be obtained from the electronic calendar of the shared user and used for scheduling. In some examples, the sharing category can relate to the importance of other users to the shared user. In other examples, the sharing category can be related to the trust level of the invitee to other users. BRIEF DESCRIPTION OF THE DRAWINGS

[0005] Non-limiting and non-exhaustive examples are described with reference to the following figures.

[0006] Figure 1 is a schematic diagram illustrating an example distributed computing environment for providing cross-domain access to calendar content.

[0007] Figure 2A A simplified diagram of a distributed computing environment for providing cross-domain access to calendar availability information is shown.

[0008] Figure 2B Illustrated is a computing device that has received an email requesting access to a user's electronic calendar.

[0009] Figure 3 An exemplary settings menu for adjusting access to cross-domain calendar content is shown.

[0010] Figure 4 A computing device is shown displaying an electronic scheduling assistant associated with an organizer user having a high importance level relationship with an invitee user.

[0011] Figure 5 A computing device is shown displaying an electronic scheduling assistant associated with an organizer user having a high importance level relationship with an invitee user and access to a replacement calendar event.

[0012] Figure 6 A computing device is shown displaying an electronic scheduling assistant associated with an organizer user having a medium importance level relationship with an invitee user.

[0013] Figure 7 A computing device is shown displaying an electronic scheduling assistant associated with an organizer user having a low importance level relationship with an invitee user.

[0014] Figure 8 An exemplary method for providing cross-domain access to calendar content is provided.

[0015] Fig. 9 and Fig.10 is a simplified diagram of a mobile computing device that can be used to implement aspects of the present disclosure.

[0016] Fig.11 is a block diagram illustrating example physical components of a computing device that may be used to implement aspects of the present disclosure.

[0017] Fig.12 is a simplified block diagram of a distributed computing system in which aspects of the present disclosure may be implemented. DETAILED DESCRIPTION

[0018] Various embodiments will be described in detail with reference to the accompanying drawings, wherein the same reference numerals represent the same parts and components throughout the several views. Reference to the various embodiments does not limit the scope of the appended claims. In addition, any examples set forth in this specification are not intended to be limiting, but only set forth some of the many possible embodiments of the appended claims.

[0019] Non-limiting examples of the present disclosure describe systems, methods, and devices for providing cross-domain access to electronic calendars. As used herein, a "domain" may refer to an electronic alias of a user and / or an organization of a user. For example, a first domain may include an email address with the domain @[cOmpany1.cOm], and a second domain may include an email address with the domain @[cOmpany2.cOm]. According to the example, a first user account may request access to an electronic calendar associated with a second user account. For example, the request may originate from an electronic calendar application associated with the first user account, an event scheduling assistant associated with the first user account, a digital assistant, an email application associated with the first user account, or an independent request interface.

[0020] In some examples, the second user account may have settings that have been interacted with by the second user, which allow users outside the second user's domain to access certain electronic calendar details. Those calendar details may include whether the second user is free or busy during the authorized time period. In some examples, the details that the user can access from the second user's electronic calendar can be based on the importance level of the requesting user determined by the cross-domain calendar application service. The cross-domain calendar application service can analyze various factors when determining the relative importance of the requesting user to the shared user. For example, these factors may include collaborative signals (e.g., messages exchanged between users, meetings including users, etc.), the hierarchy of users in the user's respective organizations, and social media graphs. Therefore, the cross-domain calendar application service can provide calendar event information from the electronic calendar of the shared user at a level corresponding to the requesting user's determined importance level for the shared user. The shared user can manually adjust the sharing level and / or details shared with a single user and / or multiple users (e.g., users in the same domain, users in the same organization, users with similar characteristics, etc.) at a given time.

[0021] According to some examples, a shared user account (e.g., a user providing calendar accessibility information available to another user account) may provide different accessibility information (e.g., free / busy) to users that are considered important to the shared user, compared to users that are considered less important to the shared user. For example, the shared user account may manually or automatically indicate to the cross-domain calendar application service that the requesting account is an important contact (e.g., a high-value customer, an important supplier, etc.). In such an instance, when the requesting user account requests access to the calendar information of the shared user account, the cross-domain calendar application service may indicate that the shared user account has free time periods that would otherwise be indicated as busy and / or unavailable to less important contacts / user accounts.

[0022] The systems, methods, and devices described herein provide technical advantages for providing access to electronic calendars. Processing costs (i.e., CPU cycles) are reduced via the mechanisms described herein, at least because meetings can be more efficiently scheduled via shared calendar information in an electronic event scheduling assistant, rather than having a scheduling user email back and forth with potential attendees to determine a feasible meeting time. Typically, sharing a first user's calendar availability with other users outside the first user's organization / domain requires tenant administrators of both users to go through a complex process of establishing relationships and synchronizing busy / busy in each user's calendar application. That is, in determining whether calendar availability can be shared across domains, previous solutions would require authorization of a sharing relationship for both the requesting party and the requestor party at the tenant level so that an organization / domain relationship is established between the two. Under this system, when a request for availability information is made, the request needs to be routed through an automatic discovery process to determine whether there is a tenant-to-tenant relationship established for the availability sharing to be authorized.

[0023] Alternatively, the mechanism described herein eliminates the necessity to perform a lease auto-discovery process. Instead, as described herein, when a first user account associated with a first domain provides access to the calendar availability information of the first user account to a second user account associated with a second domain (via settings or automatically determined via importance levels), and when the second user account requests access to the information, a token describing the second user account can be automatically generated and sent from a module on the cross-domain calendar application service on the second user account side and authorized by a module on the cross-domain calendar application service on the first user account side. If the token is authenticated on the first user account side, the availability information of the first user can be provided to the second user account.

[0024] Thus, without having to go through the complex process of multi-tenancy authorization, auto-discovery lookups, and requiring administrator-tenant relationships and settings to complete sharing of electronic calendars with other users, the current mechanism allows shared users to automatically provide access to their electronic calendars using custom sharing settings and personalized tokens. These settings can be automatically identified and customized for individual users based on hierarchical organizational charts, collaboration / meeting patterns between users, and / or social media graphs. By automatically determining the importance level of users and adjusting sharing settings based on these determinations, the burden of setting up sharing features for each requesting user is significantly reduced.

[0025] Figure 1 1 is a schematic diagram of an example distributed computing environment 100 for providing cross-domain access to calendar content. Distributed computing environment 100 includes meeting organizer computing device 102A and meeting organizer computing device 102B, which are identical computing devices. Distributed computing environment 100 also includes network and processing subenvironment 126 and service storage subenvironment 110.

[0026] The network and processing subenvironment 126 includes a network 128, through which any of the computing devices described herein can communicate with each other, and a server computing device 130, which is an example of a cloud computing device that can perform one or more operations described herein related to cloud-based application services (e.g., cross-domain calendar application services, email application services, document application services, etc.). The network and processing subenvironment 126 also includes a security module A 132, which represents one or more security modules and / or security operations that can be performed by the cross-domain calendar application service to authenticate a user account's access to one or more user account calendar profiles and associated calendar data.

[0027] The service storage subenvironment 110 includes a service storage 120 that contains information associated with an electronic calendar / scheduling application for multiple users, including documents 116, user information 118, past, present, and future calendar events 114, and meeting / event invitations 112 associated with past, present, and future events. The documents 116 may include productivity application documents stored locally to a local computing device such as computing device 102A / 102B and / or stored to one or more remote storage locations. The documents 116 may include one or more documents of one or more document types, including one or more of the following: emails, saved instant messages, word processing documents, presentation documents, spreadsheet documents, note application documents, etc.

[0028] The service storage subenvironment 110 also includes hierarchical organization data 122. The hierarchical organization data 122 includes a graph, table, or other infrastructure for indexing organizational users based on their hierarchies (i.e., user accounts) in the organization. The hierarchical organization data 122 may include an index hierarchy for one or more organizations. In some examples, the hierarchical organization data 122 may include and / or be used to calculate a hierarchy score between a user not in the organization and one or more users in the hierarchical index of the organization. The hierarchy score may be used to determine the level of access to the user's electronic calendar that will be granted to an organizer / requester user outside the organization (i.e., in a different domain).

[0029] The server computing device 130 and the associated cross-domain calendar application service can communicate with the service storage 120 and obtain and analyze the information included therein when performing one or more operations described herein. The service storage subenvironment 110 also includes a security module B 124, which represents one or more security modules and / or security operations that can be performed by the service storage associated with the cross-domain calendar application service to verify the user account's access to one or more user account calendar profiles and associated calendar data. In this example, user B data 134 is passed from the service storage 120 to the cross-domain calendar application service, some of which can be provided to the organizer user's electronic calendar application. The user B data 134 is passed to the cross-domain calendar application based on the security token handshake between the services shown by the token in the user B data 134.

[0030] In this particular example, a user in a first domain (in a first organization) has opened a scheduling assistant user interface in a calendar application, which is displayed on a computing device 102A. The user is an organizer user (user O). The organizer user enters the alias of the contact with whom she wants to schedule a meeting. In this example, the organizer user enters text 105 "User B" in the name field of the scheduling assistant. This then causes a pop-up window 106 to be displayed, which includes selectable contact elements that have been determined to correspond most closely to text 105. Therefore, selectable elements of contacts "User B", "User C", "User D", and "User E" are displayed in pop-up window 106.

[0031] In this example, the organizer user has selected the contact element corresponding to user B in pop-up window 106, which causes fly-out window 108 to appear. Fly-out window 108 includes the following notification: "User B is in a different organization. Do you want to request access to her calendar?" That is, the account associated with user B (e.g., a productivity application suite account, an email account, a cloud-based service account) is not associated with the same domain and / or organization as the account associated with the organizer user (user O). In this example, the organizer user selects the "Yes" element in pop-up window 108 to initiate an access request to access user B's calendar information.

[0032] When receiving an indication of a request for access to the electronic calendar of user B, computing device 102A may send the request to a cross-domain calendar application service. In an example, the cross-domain calendar application may provide a request to an account associated with user B, and may provide user B with a request for granting an organizer user access to user B's calendar (e.g., in an email to an alias of user B, in a pop-up window of user B's calendar application). In some examples, user B may manually adjust the calendar information (if any) to be shared with the requesting user account. In other examples, one or more calendar events and / or calendar event details may be automatically identified for sharing with the requesting user account. That is, in some examples, the cross-domain calendar application service may analyze one or more signals associated with the requesting user (user O) and the invitee user (user B), and may determine the level of importance of the requesting / organizer user to the invitee user.

[0033] The cross-domain calendar application service can utilize the determined importance level to automatically set one or more sharing settings related to what calendar information is to be shared with the requesting user. The importance level can be determined based on an importance score, which is calculated based on multiple collaboration signals. The collaboration signal can include one or more of the following: the frequency of electronic communications between the organizer user account and the invitee user account, the number of electronic communications between the organizer user account and the invitee user account, the number of identified meetings between the organizer user account and the invitee user account, and the frequency of meetings identified between the organizer user account and the invitee user account. In another example, the importance level can be determined based on the hierarchical position of the organizer in the organizer's organization and / or the hierarchical position of the invitee in the invitee's organization. Hierarchical information can be identified via the hierarchical organization data 122 in the service storage subenvironment 120. Higher importance levels and / or scores can result in sharing more electronic calendar information with the organizer / requester. In another example, the importance level and / or importance score can be determined based on a connection score calculated based on an analysis of one or more connections in a social media graph of a social media service (e.g., LinkedIn). For example, the more closely the requesting user is related to the requestee in the social media graph, the higher the importance level and / or importance score may be. In some examples, a combination of these elements can be used to determine the importance level and / or score of the requester and the requestee.

[0034] In this example, it is determined that the organizer user has a relatively low importance level relative to user B. Therefore, when user B affirmatively provides user O with access to her calendar, the cross-domain calendar application service sets the calendar sharing settings to only the most basic information. Therefore, computing device 102B displays the times when user B has scheduled events in her electronic calendar in user O's scheduling assistant. However, the calendar events displayed for user B are only indicated as "busy" to user B. That is, due to the relatively low importance level determined, user O has no right to view whether user B has scheduled personal events during these times or is outside of working hours. As further described in the examples discussed below, additional calendar information can also be restricted for sharing with the organizer user.

[0035] Although the request for access to the cross-domain user calendar is discussed here as being made via an electronic scheduling assistant and an organizer user account, other request mechanisms may also be used. For example, a separate user interface may be provided for requesting calendar permissions. In another example, a calendar permission request may be made via a digital assistant. In other examples, a calendar permission request may be made via email. In addition, although requests for access are typically discussed in relation to a single user account, it should be understood that the mechanisms described herein may be used to request and access multiple user accounts (e.g., each user in organization A; each user with X levels in organization B, etc.) via a single request.

[0036] Figure 2A A simplified diagram of a distributed computing environment 200A for providing cross-domain access to calendar availability information is shown. For ease of illustration, the computing environment 200A includes a plurality of simplified modules, devices, and corresponding operations. It should be understood that the distributed computing environment 200A may be used to provide cross-domain access to calendar availability information. Figure 2A The operations described in relation to each other are not necessarily performed in the order described.

[0037] User B device 202A provides free / busy authorization 204A to user account B 220A in cross-domain application service 209A, which authorizes user A (ie, the account associated with user A) to access free / busy information associated with user B (ie, the account associated with user B).

[0038] User A device 206A sends a free / busy request 208A to User A account 210A in cross-domain application service 209A. User A account 210A may then send a token request 211A from the User A domain to a token authorization security module 212A. Token authorization security module 212A may authenticate User A, and once User A is authenticated, token authentication security module 212A may send Token A 214A to User A account 210A and / or directly to User B account 220A associated with the free / busy request. This is illustrated by token / request 216A, which includes Token A 214A. * and free / busy request 208A.

[0039] User B account 220A receives the token / request 216A and sends it to the token authorization security module 212A * , token authorization security module 212A * The token A 214A may be matched to the authorization provided by the user B device 202A. Once authenticated, the authorization response 222A may be received from the token authorization security module 212A. *The user B account 220A is sent to the user B account 220A, where the requested free / busy information is obtained for user B. The information is transferred to the user A account 210A as shown by the user B free / busy data 224A. The user B free / busy data 224A is then made visible on the user A device 206A via the user B free / busy data 224A.

[0040] Figure 2B A computing device 200B is shown that has received an email requesting access to a user's electronic calendar. Computing device 200B displays an email 202B sent from an electronic calendar assistant to user B. Email 202B includes the subject "Calendar Rights," and the body states: Hi, user B, user O would like rights to view your calendar. Would you like to provide user O with rights to view your calendar? Sincerely, Calendar Assistant." User B can send an email back to the calendar assistant: approve or deny the request, and the approval or denial can be automatically updated in the cross-domain calendar application service. In some examples, user B can provide restrictions on the type of calendar information shared with user O via instructions in a reply email. In such an example, the calendar assistant service and / or the cross-domain calendar application service can apply one or more natural language processing models to the email and determine which restrictions are applied.

[0041] An email exchange such as that shown here is only one example of a mechanism by which a requestee and / or invitee user can provide authorization in response to a shared calendar request. Other mechanisms may be used. For example, a pop-up window or a separate user interface for approving the request may appear on a computing device associated with the requestee and / or invitee user account.

[0042] Figure 3 An exemplary settings menu 300 for adjusting access to cross-domain calendar content is shown. The settings menu 300 provides a mechanism for the user to control which information can be shared with another user. In this example, the title bar of the menu 300 indicates that the user's calendar information will be shared with user O.

[0043] Menu 300 includes a drop-down menu 302 that provides a mechanism for indicating which type of sharing settings are to be applied. In this example, the option "Users can have access to my calendar based on categories" is selected. This "category" designation provides a mechanism for the sharing user to modify the calendar sharing settings set based on the user's manual designation of the requesting user as one of the following three categories: P1 (most trusted / most accessed), P2 (medium trusted / medium accessed), and P3 (low trusted / low accessed). Once the sharing user provides a designation of the user with whom the calendar information will be shared, these settings can be automatically set to the designated category level. One or more of these settings can then be manually adjusted by the sharing user. In this example, the sharing user has designated user O as a P3 (low trusted / low access) user, as shown in the optional designation box 304. Although in this example, the sharing user has manually selected the category designation of user O (P3), in other examples, the category designation can be automatically selected by the cross-domain calendar application service based on the determined importance level and / or importance score between the sharing user and the user with whom the sharing user will share her calendar.

[0044] Menu 300 also includes the following optional options: (1) automatically sending a message to user O summarizing the specified rights; (2) allowing user O to view the private calendar items of the shared user; (3) providing user O with the ability to replace the shared user's calendar events based on user O's specified category type (P3); (4) providing all users in user O's organization with the same level of access to the shared user's calendar as granted to user O.

[0045] Menu 300 and the settings included therein are examples of mechanisms that a sharing user may use to adjust calendar sharing settings. Other menu types, setting elements, and organizational schemes are within the scope of the present application.

[0046] Figure 4A computing device 400 is shown that displays an electronic scheduling assistant 402 associated with an organizer user, which has a high importance level relationship with an invitee user. The electronic scheduling assistant 402 includes a display of typical working hours for a day when the organizer user attempts to schedule a meeting with user B. This day is Monday, December 16, 2019. The scheduling assistant 402 also includes the time when the organizer user attempts to schedule a meeting with the invitee user. The time is from 10:00 am to 10:30 am. The organizer user is indicated on the scheduling assistant 402 by the organizer user icon 404, which includes a category designation (P1) (most trusted / most accessed) of the user for exemplary purposes. Below the organizer user icon 404 is an invitee user icon 406, which corresponds to user B (a user who has provided the organizer user with P1 level access). To the right of each of these icons is the event information for each corresponding user on Monday, December 16, 2019.

[0047] The event information displayed on the organizer user's electronic scheduling assistant 402 includes information that user B has provided the organizer with access rights to. The electronic scheduling assistant 402 also includes an event type key at the bottom of the display, which indicates that there are four types of event classifications that can be displayed and indicated via the scheduling assistant 402. These event classifications are: (1) Busy, (2) Calls Only, (3) Personal, and (4) Low Importance (Replacement). These classifications are examples, and other classifications and calendar event information (e.g., event name, invitee / attendee information, attachments, etc.) can be shared.

[0048] The low importance (replacement) event classification can indicate that the importance of the meeting and / or attendees is relatively low compared to the organizer user, and the organizer user can replace the meeting if she wishes. The low importance (replacement) event classification can be dynamic in nature, and can be determined and / or assigned to the event for each organizer user based on the importance level and / or importance score of each organizer user to the user of the corresponding invitee user. In addition, the low importance (replacement) event classification can be determined and / or assigned to the event based on one or more additional factors, and additional factors such as regular weekly meetings have a lower priority than non-regular meetings, and / or context signals from one or more of the following: meeting agenda, meeting invitation body, meeting invitation attachments and / or meeting titles identified via natural language processing and / or keyword matching.

[0049] In this example, the electronic scheduling assistant of the organizer user displays all events of the day for the invitee (user B), as well as the event type classification of each of these events. In some examples, if the invitee has specified the organizer user with a lower category designation (e.g., P2, P3), the event type classification information may not yet be available to the organizer user (i.e., the scheduling assistant 402 of the organizer user). However, because the invitee user has designated the organizer user as P1 (most trusted / most visited), all of this information is relayed via the scheduling assistant 402. Therefore, in this example, the schedule of user B displays the first event 408 between 9 am and 11:30 am and the corresponding event classification "call only", the second event 410 between 12 noon and 1 pm and the corresponding event classification "low importance (replacement)", the third event 412 between 2 pm and 3 pm and the corresponding event classification "personal", and the fourth event 414 between 3:30 pm and 5:30 pm and the corresponding event classification "busy".

[0050] In this example, pop-up window 416 has appeared on scheduling assistant 402. When the organizer user adds user B as an invitee, pop-up window 416 may have appeared automatically. In other examples, pop-up window 416 can appear when an action is taken in the meeting scheduling (e.g., selecting a send element; selecting a meeting time, etc.). Pop-up window 416 includes a selectable option to schedule the meeting as a video call. Specifically, pop-up window 416 states: "Talk only-user B has indicated that meetings during this period should only be calls. Schedule a video call?" In this example, the cross-domain calendar application service has made this option appear based in part on the sharing of the P1 designation of the organizer user and the event classification of the second event 410. That is, the scheduling assistant 402 of the organizer user has access to information in the calendar of the invitee, which indicates that the invitee will only take a call request meeting during the meeting being scheduled, so the cross-domain calendar application service and / or scheduling assistant 402 can automatically appear the video call reminder.

[0051] Figure 5A computing device 500 is shown displaying an electronic scheduling assistant 502 associated with an organizer user, the organizer user having a high importance level relationship with an invitee user and having access to a replacement calendar event from the invitee's electronic calendar. The electronic scheduling assistant 502 includes a display of typical working hours for a day when the organizer user attempts to schedule a meeting with user B. This day is Monday, December 16, 2019. The scheduling assistant 502 also includes the time when the organizer user attempts to schedule a meeting with the invitee user. The time is from 12:00 noon to 12:30 pm. The organizer user is indicated on the scheduling assistant 502 by the organizer user icon 504, which, for exemplary purposes, includes a category designation (P1) (most trusted / most accessed) for the user. Below the organizer user icon 504 is an invitee user icon 506, which corresponds to user B (a user who has provided the organizer user with P1 level access). To the right of each of these icons is the event information for each corresponding user on Monday, December 16, 2019.

[0052] The event information displayed on the organizer user's electronic scheduling assistant 502 includes information that user B has provided access rights to the organizer. The electronic scheduling assistant 502 also includes an event type key at the bottom of the display, which indicates that there are four types of event classifications that can be displayed and indicated via the scheduling assistant 502. These event classifications are: (1) busy, (2) call only, (3) personal, and (4) low importance (replacement). The low importance (replacement) event classification can indicate that the importance of the meeting and / or attendees is relatively low compared to the organizer user, and the organizer user can replace the meeting if she wishes. The low importance (replacement) event classification can be dynamic in nature and can be determined and / or assigned to events for each organizer user based on the importance level and / or importance rating of each organizer user to the user of the corresponding invitee user. In addition, a low importance (replacement) event classification can be determined and / or assigned to an event based on one or more additional factors, such as regular weekly meetings having a lower priority than non-regular meetings, and / or contextual signals from one or more of the following: the meeting agenda, the meeting invitation body, the meeting invitation attachments, and / or the meeting title identified via natural language processing and / or keyword matching.

[0053] In this example, the electronic scheduling assistant of the organizer user displays all events of the day for the invitee (user B), as well as the event type classification of each of these events. In some examples, if the invitee has specified the organizer user with a lower category designation (e.g., P2, P3), the event type classification information may not yet be available to the organizer user (i.e., the scheduling assistant 502 of the organizer user). However, because the invitee user has designated the organizer user as P1 (most trusted / most visited), the information is relayed via the scheduling assistant 502. Therefore, in this example, the schedule of user B displays the first event 508 between 9 am and 11:30 am and the corresponding event classification "call only", the second event 510 between 12 pm and 1 pm and the corresponding event classification "low importance (replacement)", the third event 512 between 2 pm and 3 pm and the corresponding event classification "personal", and the fourth event 514 between 3:30 pm and 5:30 pm and the corresponding event classification "busy".

[0054] In this example, pop-up window 516 has appeared on scheduling assistant 502. When organizer user adds user B as invitee, pop-up window 516 may have appeared automatically. In other examples, pop-up window 516 can appear when taking action in meeting scheduling (e.g., selecting send element; selecting meeting time, etc.). Pop-up window 516 includes selectable options for scheduling existing meetings on the invitee's calendar. Specifically, pop-up window 516 states: "Override event-You have the right to replace this meeting for user B. Do you want to schedule it?" In this example, the cross-domain calendar application service has made this option appear based in part on the sharing of the P1 designation of the organizer user and the event classification of the third event 512. That is, the organizer user (and the scheduled meeting) is determined to be more important than the third event 512, and therefore given the calendar permission of the organizer user and this information, the cross-domain calendar application service and / or scheduling assistant 502 can automatically appear to cover the event prompt. In an example, for a new meeting to replace an existing meeting on the invitee's calendar, the invitee user may have to accept the new meeting even though the organizer user chose to overwrite the existing meeting.

[0055] In another example, when a high priority user (e.g., P1 organizer user) views the calendar of the corresponding invitee, the cross-domain calendar application service can automatically move and / or not display the events of lower priority in the calendar, so that the organizer user can freely book those times with the invitee user. In such an example, the second event 510 can be simply not displayed and the pop-up window 516 can not be displayed.

[0056] Figure 6A computing device 600 is shown that displays an electronic scheduling assistant 602 associated with an organizer user, which has a medium-level importance level relationship with an invitee user. The electronic scheduling assistant 602 includes a display of typical working hours for a day when the organizer user attempts to schedule a meeting with user B. This day is Monday, December 16, 2019. The scheduling assistant 602 also includes the time when the organizer user attempts to schedule a meeting with the invitee user. The time is from 12:00 noon to 12:30 p.m. The organizer user is indicated on the scheduling assistant 602 by the organizer user icon 604, which includes the category designation (P2) (medium trusted / medium access) of the user for exemplary purposes. Below the organizer user icon 604 is an invitee user icon 606, which corresponds to user B (a user who has provided P2 level access to the organizer user). To the right of each of these icons is the event information for each corresponding user on Monday, December 16, 2019.

[0057] The event information displayed on the organizer user's electronic scheduling assistant 602 includes information that user B has provided access rights to the organizer. The electronic scheduling assistant 602 also includes an event type key at the bottom of the display, which indicates that there are four types of event classifications that can be displayed and indicated via the scheduling assistant 702. These event classifications are: (1) busy, (2) call only, (3) personal, and (4) low importance (replacement). The low importance (replacement) event classification can indicate that the importance of the meeting and / or attendees is relatively low compared to the organizer user, and the organizer user can replace the meeting if she wishes. The low importance (replacement) event classification can be dynamic in nature and can be determined and / or assigned to events for each organizer user based on the importance level and / or importance score of each organizer user to the user of the corresponding invitee user. Additionally, a low importance (replacement) event classification may be determined and / or assigned to an event based on one or more additional factors, such as a regular weekly meeting having a lower priority than a non-regular meeting, and / or contextual signals from one or more of the following: the meeting agenda, the meeting invitation body, the meeting invitation attachments, and / or a meeting title identified via natural language processing and / or keyword matching.

[0058] In this example, the organizer user's electronic scheduling assistant 602 displays all events for the day for the invitee (user B), as well as an event type classification for each of these events. In this example, unlike the previous example, the second event 610 only has a "busy" event classification associated with it instead of a "low importance (replacement)" event classification associated with it. That is, in this example, because the organizer user has a lower category designation P2 relative to the invitee user, the second event 610 is not indicated as unimportant and can be replaced by the organizer user.

[0059] Figure 7 A computing device 700 is shown that displays an electronic scheduling assistant 702 associated with an organizer user, which has a medium importance level relationship with an invitee user. The electronic scheduling assistant 702 includes a display of typical working hours for a day when the organizer user attempts to schedule a meeting with user B. This day is Monday, December 16, 2019. The scheduling assistant 702 also includes the time when the organizer user attempts to schedule a meeting with the invitee user. The time is from 12:00 noon to 12:30 p.m. The organizer user is indicated on the scheduling assistant 702 by the organizer user icon 704, which includes the category designation (P3) (low trusted / low access) of the user for exemplary purposes. Below the organizer user icon 704 is an invitee user icon 706, which corresponds to user B (a user who has provided P3 level access to the organizer user). To the right of each of these icons is the event information for each corresponding user on Monday, December 16, 2019.

[0060] The event information displayed on the organizer user's electronic scheduling assistant 702 includes information that user B has provided access rights to the organizer. The electronic scheduling assistant 702 also includes an event type key at the bottom of the display, which indicates that there are four types of event classifications that can be displayed and indicated via the scheduling assistant 702. These event classifications are: (1) busy, (2) call only, (3) personal, and (4) low importance (replacement). The low importance (replacement) event classification can indicate that the importance of the meeting and / or attendees is relatively low compared to the organizer user, and the organizer user can replace the meeting if she wishes. The low importance (replacement) event classification can be dynamic in nature and can be determined and / or assigned to events for each organizer user based on the importance level and / or importance rating of each organizer user to the user of the corresponding invitee user. Additionally, a low importance (replacement) event classification may be determined and / or assigned to an event based on one or more additional factors, such as a regular weekly meeting having a lower priority than a non-regular meeting, and / or contextual signals from one or more of the following: the meeting agenda, the meeting invitation body, the meeting invitation attachments, and / or a meeting title identified via natural language processing and / or keyword matching.

[0061] In this example, the organizer user's electronic scheduling assistant 702 displays only three events for user B. Furthermore, all events (second event 710, third event 712, fourth event 714) are simply indicated as user B being busy during those time periods, rather than indicating other details about the third event 712. That is, since the organizer user's category designation (P3) is relatively low, there are not many event details in the shared calendar of user B.

[0062] Figure 8 is an exemplary method for providing cross-domain access to calendar content. Method 800 begins at a start operation and flow moves to operation 802.

[0063] At operation 802, a request for scheduling an event is received. The request may include the identity of an organizer user account associated with a first domain. The first domain may be an email domain and / or an organizational domain. The request may also include the identity of an invitee user account associated with a second domain. The second domain may be an email domain and / or an organizational domain. In some examples, the request may be made through an event scheduling assistant associated with a calendar application. The request may originate from a computing device associated with the organizer user account. In other examples, the request may be made via different mechanisms, such as email requests, separate permissions user interfaces, and the like.

[0064] The process proceeds from operation 802 to operation 804, at which the importance level of the organizer user account to the invitee user account is determined. In some examples, the determination can be made based on analyzing the collaboration signal between the organizer user account and the invitee user account. The collaboration signal may include: the frequency of electronic communications between the organizer user account and the invitee user account; the number of electronic communications between the organizer user account and the invitee user account; the number of identified meetings between the organizer user account and the invitee user account; and / or the frequency of meetings identified between the organizer user account and the invitee user account. In other examples, the importance level can be determined based on the hierarchical position of the organizer and / or the invitee in their respective organizations. In other examples, the determination can be made based on relative proximity, which is based on analysis of one or more social media / connection graphs and / or professional media / connection graphs. In other examples, the determination can be made based on the relationship between the identified users (e.g., customer / sales relationship, personal relationship, colleague relationship, etc.).

[0065] The process proceeds from operation 804 to operation 806, where it is determined whether the organizer user account has access to each of the multiple events in the electronic calendar associated with the invitee user account based on the determined importance level. In some examples, it can be determined whether the organizer user account has access to each of the multiple event details based on the determined importance level. In some examples, the determined importance level can correspond to the level of access associated with it. For example, a low level can have limited calendar access (e.g., only showing the user's free and busy times), a middle level can have medium calendar access, and a high level can have a large amount of calendar access. For example, event details can include the name of the scheduled event, the time of the scheduled event, the event type (e.g., personal, business), location information associated with the event, and the relative importance of the event to the invitee.

[0066] Flow continues from operation 806 to operation 808 where one or more events and associated event details to which the organizer user account has access from the electronic calendar associated with the invitee user account are presented in an event scheduling assistant user interface associated with the organizer user account.

[0067] Flow moves from operation 808 to an end operation and method 800 ends.

[0068] Fig. 9 and Fig.10 A mobile computing device 900 is shown that can be used to implement embodiments of the present disclosure, such as a mobile phone, a smart phone, a wearable computer (e.g., smart glasses), a tablet computer, an e-reader, a laptop computer, or other AR-compatible computing device. Fig. 9, shows one aspect of a mobile computing device 900 for implementing these aspects. In a basic configuration, the mobile computing device 900 is a handheld computer having both an input unit and an output unit. The mobile computing device 900 typically includes a display 905 and one or more input buttons 910 that allow a user to input information to the mobile computing device 900. The display 905 of the mobile computing device 900 may also be used as an input device (e.g., a touch screen display). If included, an optional side input unit 915 allows further user input. The side input unit 915 may be a rotary switch, a button, or any other type of manual input unit. In alternative aspects, the mobile computing device 900 may incorporate more or fewer input units. For example, in some embodiments, the display 905 may not be a touch screen. In yet another alternative embodiment, the mobile computing device 900 is a portable telephone system (such as a cellular phone). The mobile computing device 900 may also include an optional key 935. The optional key 935 may be a physical key or a "soft" key generated on the touch screen display. In various embodiments, the output unit includes: a display 905 for displaying a graphical user interface (GUI), a visual indicator 920 (e.g., a light emitting diode), and / or an audio transducer 925 (e.g., a speaker). In some aspects, the mobile computing device 900 incorporates a vibration sensor for providing tactile feedback to the user. In yet another aspect, the mobile computing device 900 incorporates input and / or output ports, such as an audio input (e.g., a microphone jack), an audio output (e.g., a headphone jack), and a video output (e.g., an HDMI port) for sending or receiving signals to or from an external device.

[0069] Fig.10 1 is a block diagram illustrating an architecture of one aspect of a mobile computing device. That is, a mobile computing device 1000 may incorporate a system (i.e., architecture) 1002 to implement some aspects. In one embodiment, the system 1002 is implemented as a "smart phone" capable of running one or more applications (e.g., a browser, email, calendar, contact manager, messaging client, game, and media client / player). In some aspects, the system 1002 is integrated into a computing device (e.g., an integrated personal digital assistant (PDA) and a wireless phone).

[0070] One or more application programs 1066 can be loaded into the memory 1062 and run on or in conjunction with the operating system 1064. Examples of application programs include: a phone dialer, an email program, a personal information management (PIM) program, a word processing program, a spreadsheet program, an Internet browser program, a messaging program, etc. The system 1002 also includes a non-volatile storage area 1068 within the memory 1062. The non-volatile storage area 1068 can be used to store persistent information that should not be lost if the system 1002 loses power. The application programs 1066 can use and store information in the non-volatile storage area 1068, such as emails or other messages used by the email application, etc. A synchronization application (not shown) is also located on the system 1002 and is programmed to interact with a corresponding synchronization application resident on the host computer to keep the information stored in the non-volatile storage area 1068 synchronized with the corresponding information stored at the host computer. It should be appreciated that other applications may be loaded into the memory 1062 and executed on the mobile computing device 1000, which includes instructions for providing and operating a cross-domain calendar platform.

[0071] The system 1002 has a power source 1070, which may be implemented as one or more batteries. The power source 1070 may also include an external power source, such as an AC adapter or a power supply dock that supplements or replenishes or recharges the batteries.

[0072] The system 1002 may also include a radio interface layer 1072 that performs the function of sending and receiving radio frequency communications. The radio interface layer 1072 facilitates wireless connections between the system 1002 and the "outside world" via a communications carrier or service provider. Transmissions to and from the radio interface layer 1072 are performed under the control of the operating system 1064. In other words, communications received by the radio interface layer 1072 may be propagated to the application 1066 via the operating system 1064, and vice versa.

[0073] The visual indicator 920 can be used to provide visual notifications, and / or the audio interface 1074 can be used to generate auditory notifications via the audio converter 925. In the illustrated embodiment, the visual indicator 920 is a light emitting diode (LED), and the audio converter 925 is a speaker. These devices can be directly coupled to the power supply 1070 so that when activated, they remain in working state during a period of time indicated by the notification mechanism, even if the processor 1060 and other components may be turned off to save battery power. The LED can be programmed to be in working state until the user takes action to indicate the power-on state of the device. The audio interface 1074 is used to provide audio signals to the user and receive audio signals from the user. For example, in addition to being coupled to the audio converter 925, the audio interface 1074 can also be coupled to a microphone to receive audio input to facilitate telephone conversations. According to some embodiments of the present disclosure, as will be described below, the microphone can also be used as an audio sensor to facilitate the control of notifications. The system 1002 can also include a video interface 1076, which starts the operation of the camera 930 on the board to record still images, video streams, etc.

[0074] The mobile computing device 1000 implementing the system 1002 may have additional features or functionality. For example, the mobile computing device 1000 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. These additional storage devices may include: Fig.10 , shown by non-volatile storage area 1068.

[0075] Data / information generated or captured by the mobile computing device 1000 and stored via the system 1002 may be stored locally on the mobile computing device 1000 as described above, or the data may be stored on any number of storage media accessible by the device via the radio interface layer 1072 or via a wired connection between the mobile computing device 1000 and a separate computing device associated with the mobile computing device 1000 (e.g., a server computer in a distributed computing network such as the Internet). It should be appreciated that such data / information may be accessed via the mobile computing device 1000 via the radio interface layer 1072 or via a distributed computing network. Similarly, such data / information may be easily transferred between computing devices for storage and use according to well-known data / information transmission and storage means, including email and collaborative data / information sharing systems.

[0076] Fig.11is a block diagram illustrating the physical components (e.g., hardware) of a computing device 1100 that can be used to implement aspects of the present disclosure. The computing device components described below may have computer-executable instructions for facilitating cross-domain calendar access and sharing. In a basic configuration, the computing device 1100 may include at least one processing unit 1102 and a system memory 1104. Depending on the configuration and type of the computing device, the system memory 1104 may include, but is not limited to, volatile storage (e.g., random access memory), non-volatile storage (e.g., read-only memory), flash memory, or any combination of such memories. The system memory 1104 may include an operating system 1105 suitable for running one or more cross-domain calendar applications and / or services. For example, the operating system 1105 may be suitable for controlling the operation of the computing device 1100. In addition, embodiments of the present disclosure may be implemented in conjunction with a graphics library, other operating systems, or any other application, and is not limited to any particular application or system. This basic configuration is Fig.11 1108. The computing device 1100 may have additional features or functionality. For example, the computing device 1100 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage Fig.11 1109 and a non-removable storage device 1110 are shown in FIG.

[0077] As described above, a plurality of program modules and data files may be stored in the system memory 1104. When executed on the processing unit 1102, the program module 1106 (e.g., the cross-domain calendar application 1120) may perform processes including, but not limited to, the aspects described herein. According to an example, the collaborative scoring engine 1111 may perform one or more operations associated with: calculating a score between the two user accounts based on communications and / or meetings involving the two user accounts. The natural language processing engine 1113 may perform one or more operations associated with: applying a natural language processing model to meeting invitations, attachments, agendas, and related materials to identify the importance associated with those meetings / events. The hierarchical scoring engine 1115 may perform one or more operations associated with: determining the hierarchical position of a first user associated with a first domain and / or a second user associated with a second domain in an organization, and generating one or more importance scores based on these determinations. The event ranking engine 1117 may perform one or more operations associated with: ranking events based on importance to determine whether a first event can be scheduled above a second event.

[0078] In addition, embodiments of the present disclosure may be implemented in circuits including discrete electronic components, packaged or integrated electronic chips containing logic gates, circuits using microprocessors, or on a single chip containing electronic components or microprocessors. For example, embodiments of the present disclosure may be implemented via a system on a chip (SOC) in which: Fig.11 Each or many of the components shown may be integrated onto a single integrated circuit. Such a SOC device may include one or more processing units, a graphics unit, a communication unit, a system virtualization unit, and various application functions, all of which may be integrated (or "burned") onto a chip substrate as a single integrated circuit. When operated via a SOC, the functionality described herein for the ability to switch protocols for a client may be operated via an application-specific logic unit integrated with other components of the computing device 1100 on a single integrated circuit (chip). Embodiments of the present disclosure may also be implemented using other technologies capable of performing logical operations (such as, for example, AND, OR, and NOT), including but not limited to mechanical, optical, fluidic, and quantum technologies. In addition, embodiments of the present disclosure may be implemented in a general-purpose computer or in any other circuit or system.

[0079] The computing device 1100 may also have one or more input devices 1112, such as a keyboard, a mouse, a pen, a sound or voice input device, a touch or swipe input device, etc. Output devices 1114 such as a display, a speaker, a printer, etc. may also be included. The aforementioned devices are examples, and other devices may be used. The computing device 1100 may include one or more communication connections 1116 that allow communication with other computing devices 1150. Examples of suitable communication connections 1116 include, but are not limited to: radio frequency (RF) transmitters, receivers, and / or transceiver circuits, universal serial buses (USB), parallel and / or serial ports.

[0080] The term computer-readable media used herein may include computer storage media. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing such as computer-readable instructions, data structures or program modules. System memory 1104, removable storage device 1109 and non-removable storage device 1110 are all examples of computer storage media (e.g., memory storage). Computer storage media may include: RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, cassette, tape, disk storage or other magnetic storage device, or any other product that can be used to store the required information and can be accessed by the computing device 1100. Any such computer storage medium may be part of the computing device 1100. Computer storage media does not include carrier waveforms or other propagated or modulated data signals.

[0081] Communication media may be embodied as computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier waveform or other transport mechanism and includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more characteristics set or changed in a manner that encodes information in the signal. By way of example and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.

[0082] Fig.12One aspect of the architecture of a system for processing data received at a computing system from a remote source (e.g., a personal / general purpose computer 1204, a tablet computing device 1206, or a mobile computing device 1208, as described above) is shown. The content displayed at the server device 1202 can be stored in different communication channels or other storage types. For example, a directory service 1222, a portal website 1224, a mailbox service 1226, an instant messaging storage 1228, or a social networking site 1230 can be used to store various documents. The program module 1106 can be used by a client communicating with the server device 1202, and / or the program module 1106 can be used by the server device 1202. The server device 1202 can provide data to a client computing device such as a personal / general purpose computer 1204, a tablet computing device 1206, and / or a mobile computing device 1208 (e.g., a smart phone) through a network 1215. By way of example, the computer systems described herein may be implemented and embodied in a personal / general purpose computer 1204, a tablet computing device 1206, and / or a mobile computing device 1208 (e.g., a smartphone). In addition to receiving graphics data that may be used for pre-processing at a graphics originating system or post-processing at a receiving computing system, any of these embodiments of the computing device may obtain content from storage 1216.

[0083] For example, aspects of the present disclosure are described above with reference to the block diagrams and / or operational descriptions of the methods, systems, and computer program products according to aspects of the present disclosure. The functions / actions indicated in these frames may not occur in the order shown in any flow chart. For example, two frames shown as being in succession may actually be substantially executed in parallel, or these frames may sometimes be executed in reverse order, depending on the functions / actions involved.

[0084] The description and illustration of one or more aspects provided in this application are not intended to limit or restrict the scope of the disclosure claimed in any way. It is believed that the aspects, examples and details provided in this application are sufficient to convey possession, and enable others to make and use the best mode of the disclosure claimed. The disclosure claimed should not be interpreted as being limited to any aspect, example or detail provided in this application. Regardless of whether it is shown and described in combination or separately, it is intended to selectively include or omit each feature (structural and methodological) to produce an embodiment with a specific set of features. Description and illustration of the present disclosure have been provided, and those skilled in the art may conceive of variants, modifications and alternative aspects within the spirit of the broader aspects of the general inventive concept embodied in this application without departing from the broader scope of the disclosure claimed.

[0085] The above-mentioned various embodiments are provided by way of illustration only and should not be construed as limiting the appended claims. Those skilled in the art will readily appreciate that various modifications and changes may be made without following the example embodiments and applications shown and described herein, and without departing from the true spirit and scope of the appended claims.

Claims

1. A computer-implemented method for providing cross-domain access to calendar availability, the computer-implemented method comprising: A request for scheduling an event is received, the request comprising: an identity of an organizer user account, the organizer user account being associated with the first domain, and an identity of an invitee user account, the invitee user account being associated with the second domain; generating, by a first token security authentication entity, a token describing the organizer user account; authenticating, by a second token security authentication entity, the token describing the organizer user account using authorization for the organizer user account to access electronic calendar information associated with the invitee user account, sent from a device associated with the invitee user account; providing the organizer user account with access to the electronic calendar information associated with the invitee user account based on the authentication; determining an importance level of the organizer user account to the invitee user account; determining, based on the importance level, that the organizer user account has access to events in an electronic calendar associated with the invitee user account; determining whether the event is a regularly scheduled meeting; determining a relative importance of the event to the organizer user account based at least in part on the determination of whether the event is a recurring meeting; and The event is caused to appear in an event scheduling assistant user interface associated with the organizer user account, wherein the event is appeared along with an indication corresponding to the relative importance of the event with respect to the organizer user account.

2. The computer-implemented method of claim 1 , wherein: The importance level is one of a plurality of levels, each level of the plurality of levels being associated with a different set of access permissions to the electronic calendar.

3. The computer-implemented method of claim 2, wherein: The importance level is based on an importance score calculated based on a plurality of collaboration signals associated with the organizer user account and the invitee user accounts.

4. The computer-implemented method of claim 3, wherein: The collaboration signal includes two or more of the following: the frequency of electronic communications between the organizer user account and the invitee user account; the number of electronic communications between the organizer user account and the invitee user account; a number of identified meetings between the organizer user account and the invitee user accounts; and the frequency of identified meetings between the organizer user account and the invitee user accounts.

5. The computer-implemented method of claim 1 , wherein: The importance level is based on a hierarchical position of the organizer user account in an organization associated with the first domain.

6. The computer-implemented method of claim 2, wherein: The first of the multiple levels provides access to: The invitee user account has a date and time of an event scheduled in an electronic calendar associated with the invitee user account.

7. The computer-implemented method of claim 1 , wherein: determining that the event is a regularly scheduled meeting; The relative importance determined is of lower importance based on the event being a recurring meeting as compared to a non-recurring meeting; and Based on the event being a recurring meeting, the indication corresponding to the relative importance of the event relative to the organizer user account is an indication of lower importance.

8. The computer-implemented method of claim 1 , wherein: Determining that the event is a non-scheduled meeting; The relative importance determined is high compared to regular meetings; and Based on the event being a non-scheduled meeting, the indication corresponding to the relative importance of the event to the organizer user account is higher than for a scheduled meeting.

9. The computer-implemented method of claim 1 , wherein: Determining the relative importance of the event to the organizer user account further includes applying a natural language processing model to one or more contextual signals including: a meeting agenda, a meeting invitation body, a meeting invitation attachment, and a meeting title.

10. A system for providing cross-domain access to calendar availability, comprising: A memory for storing executable program code; as well as one or more processors functionally coupled to the memory, the one or more processors responsive to computer executable instructions contained in the program code and capable of executing: A request for scheduling an event is received, the request comprising: an identity of a requester user account, the requester user account being associated with the first domain, and an identity of a requestee user account, the requestee user account being associated with a second domain; A first token security authentication entity generates a token describing the requester user account; authenticating, by a second token security authentication entity, the token describing the requester user account using authorization for the requester user account to access electronic calendar information associated with the requestee user account, sent from a device associated with the requestee user account; providing, based on the authentication, the requestor user account with access to the electronic calendar information associated with the requestee user account; determining a level of importance of the requester user account to the requestee user account; determining, based on the importance level, that the requester user account has access to events in an electronic calendar associated with the requestee user account; determining whether the event is a regularly scheduled meeting; determining a relative importance of the event with respect to the requestee user account based at least in part on the determination of whether the event is a recurring meeting; and The event is caused to appear in an email application user interface associated with the requester user account, wherein the event is appeared along with an indication corresponding to the relative importance of the event with respect to the requester user account.

11. The system according to claim 10, wherein: The importance level is one of a plurality of levels, each level of the plurality of levels being associated with a different set of access permissions to the electronic calendar.

12. The system according to claim 11, wherein: The importance level is based on an importance score calculated based on a plurality of collaboration signals associated with the requester user account and the requestee user account.

13. The system according to claim 12, wherein: The collaboration signal includes two or more of the following: the frequency of electronic communications between the requester user account and the requestee user account; the number of electronic communications between the requester user account and the requestee user account; a number of identified conferences between the requestor user account and the requestee user account; and the frequency of identified meetings between the requestor user account and the requestee user account.

14. The system according to claim 10, wherein: The importance level is based on a hierarchical position of the requestor in an organization associated with the first domain.

15. A computer readable storage device comprising executable instructions that, when executed by one or more processors, facilitate providing cross-domain access to calendar availability, the computer readable storage device comprising instructions executable by the one or more processors to: A request for scheduling an event is received, the request comprising: an identity of an organizer user account, the organizer user account being associated with the first domain, and an identity of an invitee user account, the invitee user account being associated with the second domain; generating, by a first token security authentication entity, a token describing the organizer user account; authenticating, by a second token security authentication entity, the token describing the organizer user account using authorization for the organizer user account to access electronic calendar information associated with the invitee user account, sent from a device associated with the invitee user account; providing the organizer user account with access to the electronic calendar information associated with the invitee user account based on the authentication; determining an importance level of the organizer user account to the invitee user account; determining, based on the importance level, that the organizer user account has access to events in an electronic calendar associated with the invitee user account; determining whether the event is a regularly scheduled meeting; determining a relative importance of the event relative to the organizer user account based at least in part on the determination of whether the event is a recurring meeting; as well as The event is caused to appear in an event scheduling assistant user interface associated with the organizer user account, wherein the event is appeared along with an indication corresponding to the relative importance of the event with respect to the organizer user account.

Citation Information

Patent Citations

  • Personal notes on a calendar item

    CN103778526A

  • Variable access to time block information

    US10339503B1

  • System and methods for processing information regarding relationships and interactions to assist in making organizational decisions

    US20170236081A1