Pay attention to Eric's excellent answer. Remember that Agile covers a wide range of ways to work, Scrum being just one possibility. Most agile methods are in fact merely a collection of techniques that you can pick and choose, pick up and drop as needed.
Personally, I see no value in daily stand-up meetings; reporting status can be done via tool (e.g. basecamp) or email and most of the information reported is of little or no use to the rest of the team. IF your team is virtual across several time zones, a daily standup becomes a huge inconvenience for everyone - if you insist on doing it, you should be able to prove that it adds value.
Similarly, with a highly skilled team there's little return (and a lot of waste) doing pair programming, much less remote pair programming.
The ability and facility to do these things when they are necessary must be there, but always doing them as a habit when they don't pay off is not wise. Sometimes you may want/need to have a standup, so Skype (or for small teams, Google+ Hangout) or similar is useful for this. But try a sprint without standups and see if things fall apart - they probably won't. Same for pair programming - great to have the ability for programmers to assist one another, can be a terrific waste of productivity for some teams to do it all the time. Try doing without it for a sprint and see if your velocity changes.
Test and measure
Don't think of agile as a formula that must be followed. Try pieces of it, keep what works, use/discard the rest as appropriate for your team and project