I guess it depends on the kind of company I was running but probably not, I would want the team dealing with customers to sit in house and be as close to others as possible. Product, relationship management and strategy functions, etc.
Definitely yes providing product is mature enough, and there is a solid framework around the outsourcing (e.g. outsource level 0, keep levels 1 and 2 in-house, have a script ran and tested for Level 0 staff, conduct masked testing, run trainings at least twice a year, run satisfaction surveys with customers, have crystal-clear conditions for elevations to L1 and L2 and last but not least very clear KPIs - waiting time, average call duration etc.).
Under these conditions, it is perfectly doable to outsource. We have done it on our previous startup and it worked a charm.
Like anything else, to get it right there is a fair bit of involvement and hard work from the outset with constant evaluation.
But done right, there can be significant benefits (24/7 availability, multiple languages, lower cost).