Patent ID: 8750902

Claim:
A method comprising: storing, by a processor, user profiles corresponding to first users, wherein the user profiles include biographical information identifying respective first locations and respective first topics associated with the first users; receiving, by the processor, an assistance request from a second user, wherein the assistance request is related to a second topic and a second geographic location; scoring, by the processor, the user profiles with respect to the assistance request, wherein scoring the user profiles, includes: comparing the respective first geographic locations and the second geographic location to produce first comparison results, wherein the first comparison results identify respective geographic distances between the respective first geographic locations and the second geographic location, comparing the respective first topics and the second topic to produce second comparison results, and calculating scores for the user profiles based on the first comparison results and the second comparison results, each of the scores indicating a likelihood that a respective one of the first users can correctly answer the assistance request, wherein calculating the scores includes summing, for each of the user profiles, a first weighted value associated with a corresponding one of the respective geographic distances, a second weighted value associated with a corresponding one of the second comparison results, and varying weighted values associated with each of the user profiles; selecting, by the processor and based on the scores, one or more candidate user profiles of the user profiles; sending, by the processor, information associated with the one or more candidate user profiles to the second user; receiving, by the processor and based on sending the information associated with the one or more candidate user profiles, a selection of a particular user profile of the one or more candidate user profiles, wherein the particular user profile is associated with a particular first user of the first users; and establishing, by the processor, a personal assistance communication session between the particular first user and the second user after identifying whether the first user is network active; wherein the user profiles include information pertaining to user's time availability, choice of communication, and at least one of level of education or category of expertise.