Patent ID: 8600391

Claim:
A computer-implemented method, comprising: receiving a location of a mobile device, the mobile device configured to communicate with a telecom service provider and a virtual private branch exchange (vPBX) service provider, wherein the vPBX service provider is different from the telecom service provider, and wherein the mobile device is configured to send outbound calls or receive inbound calls using at least one of the telecom service provider account or the vPBX service provider, and wherein the mobile device is provisioned with one or more vPBX communication services; accessing at least one location rule for relating the location of the mobile device to at least one pre-determined location, the at least one location rule including a proximity parameter, the proximity parameter defining a proximity distance associated with the at least one pre-determined location, wherein data defining the at least one location rule is provided through an interface associated with the vPBX service provider on the mobile device; updating a status based on the at least one location rule including updating the status when the location of the mobile device satisfies the proximity distance associated with the at least one pre-determined location; applying at least one action rule based on the at least one pre-determined location upon receiving a call to the mobile device based on the status, wherein the at least one action rule determines a routing plan based on the pre-determined location; and routing the call according to the routing plan, wherein relating the location of the mobile device to the at least one pre-determined location comprises determining that a distance between a geographic location of the mobile device and the at least one pre-determined location is less than or equal to the proximity distance.