Techniques enable contextually-aware selections of event forums. Scheduling data can be analyzed to identify a context associated with an appointment. A forum that is appropriate for the identified context can be selected and utilized. The analysis can also utilize traffic data, map data, weather data, user preferences, and other contextual data to select one or more forums. A forum can be a place or communication medium. A service provider can associate one or more forums with a particular skill set. For example, a legal office can associate an online forum, such a videoconference, with a first category of services, and an on-site location for a second category of services. Depending on a category of services identified in one or more user preferences and/or meeting requests, a forum can be selected. Other factors, which may include weather conditions, traffic conditions, and commute times can also influence the selection of a forum.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer-implemented method comprising: receiving, at a computing device, scheduling data defining a first calendar event, wherein the scheduling data indicates a meeting time and a subject; receiving, at the computing device, contextual data defining an association between at least one location and one or more subject categories; selecting the at least one location associated with the one or more subject categories if the subject indicated in the scheduling data is related to the one or more subject categories; obtaining stored scheduling data defining an existing calendar event preceding or succeeding the time of the received calendar event; determining a probability of a commute between a location associated with the existing calendar event and the at least one location, wherein the probability of the commute is based on a ratio of successful commutes of one or more projected routes within a predetermined commute time; and causing a display of location data indicating the at least one location if the probability of the commute meets or exceeds a threshold, wherein the display of the scheduling data is on a user interface of a display in communication with the computing device. 2. The method of claim 1, wherein the probability of the commute is further based on the ratio of successful commutes of the one or more projected routes that are based, at least in part, on weather data. 3. The method of claim 1, wherein the probability of the commute is further based on the ratio of successful commutes of the one or more projected routes that are based, at least in part, on traffic data. 4. The method of claim 1, further comprising receiving workflow data defining a multi-stage process, wherein selecting the at least one location, comprises: determining if a stage of the multi-stage process is associated with the at least one location; and selecting the at least one location if the stage of the multi-stage process is associated with the at least one location. 5. The method of claim 1, further comprising updating the scheduling data defining the first calendar event with the location data indicating the at least one location in response to receiving a selection of the at least one location. wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein selecting the at least one location is further based on the level of interruptability. 6. The method of claim 1, wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein the predetermined commute time is varied based on the level of interruptability. 7. A system, comprising: a processor; and a memory in communication with the processor, the memory having computer-readable instructions stored thereupon that, when executed by the processor, cause the system to perform a method comprising receiving scheduling data defining a first calendar event, wherein the scheduling data indicates a meeting time and a subject; receiving contextual data defining an association between at least one location and one or more subject categories; selecting the at least one location associated with the one or more subject categories if the subject indicated in the scheduling data is related to the one or more subject categories; obtaining stored scheduling data defining an existing calendar event preceding or succeeding the time of the received calendar event; determining a probability of a commute between a location associated with the existing calendar event and the at least one location, wherein the probability of the commute is based on a ratio of successful commutes of one or more projected routes within a predetermined commute time; updating the scheduling data defining the first calendar event with location data indicating the at least one location if the probability of the commute meets or exceeds a threshold; and causing a display of the scheduling data defining the first calendar event with the location data indicating the at least one location. 8. The system of claim 7, wherein the probability of the commute is further based on the ratio of successful commutes of the one or more projected routes that are based, at least in part, on weather data. 9. The system of claim 7, wherein the probability of the commute is further based on the ratio of successful commutes of the one or more projected routes that are based, at least in part, on traffic data. 10. The system of claim 7, wherein the method further comprises receiving workflow data defining a multi-stage process, wherein selecting the at least one location, comprises: determining if a stage of the multi-stage process is associated with the at least one location; and selecting the at least one location if the stage of the multi-stage process is associated with the at least one location. 11. The system of claim 7, wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein selecting the at least one location is further based on the level of interruptability. 12. The system of claim 7, wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein the predetermined commute time is varied based on the level of interruptability. 13. The system of claim 7, wherein the method further comprises: receiving updated weather data defining weather forecasts approximate to the meeting time; determining an updated probability of the commute between the location associated with the existing calendar event and the at least one location, wherein the updated probability of the commute is based, at least in part, on the updated weather data; and selecting an alternative forum if the updated probability does not meet or exceed the threshold. 14. The system of claim 7, wherein the method further comprises: receiving updated traffic data defining traffic forecasts approximate to the meeting time; determining an updated probability of the commute between the location associated with the existing calendar event and the at least one location, wherein the updated probability of the commute is based, at least in part, on the updated traffic data; selecting an alternative forum if the updated probability does not meet or exceed the threshold; and updating the scheduling data defining the first calendar event with location data indicating the alternative forum. 15. A computer storage medium having computer executable instructions stored thereon which, when executed by one or more processors, cause the processors to execute a method comprising: exposing an application programming interface configured to receive, at a computing device, scheduling data defining a first calendar event, wherein the scheduling data indicates a meeting time and a subject; receive, at the computing device, contextual data defining an association between at least one location and one or more subject categories; selecting the at least one location associated with the one or more subject categories if the subject indicated in the scheduling data is related to the one or more subject categories; obtaining stored scheduling data defining an existing calendar event preceding or succeeding the time of the received calendar event; determining a probability of a commute between a location associated with the existing calendar event and the at least one location, wherein the probability of the commute is based on a ratio of successful commutes of one or more projected routes within a predetermined commute time; updating the scheduling data defining the first calendar event with location data indicating the at least one location if the probability of the commute meets or exceeds a threshold; and causing a display of the scheduling data defining the first calendar event with the location data indicating the at least one location, wherein the display of the scheduling data is on a user interface of a display in communication with the computing device. 16. The computer storage medium of claim 15, wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein selecting the at least one location is further based on the level of interruptability. 17. The computer storage medium of claim 15, wherein the scheduling data indicates a level of interruptability associated with the existing calendar event, wherein the predetermined commute time is varied based on the level of interruptability. 18. The computer storage medium of claim 15, wherein the method further comprises: receiving updated weather data defining weather forecasts approximate to the meeting time; determining an updated probability of the commute between the location associated with the existing calendar event and the at least one location, wherein the updated probability of the commute is based, at least in part, on the updated weather data; and selecting an alternative forum if the updated probability does not meet or exceed the threshold. 19. The computer storage medium of claim 15, wherein the method further comprises: receiving updated traffic data defining traffic forecasts approximate to the meeting time; determining an updated probability of the commute between the location associated with the existing calendar event and the at least one location, wherein the updated probability of the commute is based, at least in part, on the updated traffic data; and selecting an alternative forum if the updated probability does not meet or exceed the threshold. 20. The computer storage medium of claim 15, wherein the method further comprises receiving workflow data defining a multi-stage process, wherein selecting the at least one location, comprises: determining if a stage of the multi-stage process is associated with the at least one location; and selecting the at least one location if the stage of the multi-stage process is associated with the at least one location.