Usually, it is necessary to dial all 10 digits when calling or sending and SMS message to a Twilio US or Canadian phone number.
7-digit dialing may or may not be supported by the caller's carrier, and is only possible when the "from" and "to" numbers are within the same "local dialing area". What qualifies as a "local dialing area" is determined by the caller's carrier and is out of Twilio's control. "Local dialing areas" tend to be geographically close areas and are not always synonymous with area codes. There may be multiple "local dialing areas" in a single area code.
When a caller places a call with 7 digits, the carrier will assume that the number you dialed must belong to the local dialing area and will attempt to complete the call for you. If the "to" number is outside the local dialing area (as determined by the carrier), the call will need to be dialed with the area code in order for the call to be completed.
We recommend that, whenever possible, you encourage users to dial all 10 digits of the US or Canadian number. In addition to being more reliable, it is also better for mobile phone users who have moved into the area (because this XKCD comic is very accurate).