Here's a technique I've used. When I invite people to a game I tell them that the game we're playing is a homebrew system called "Valadil's Game" which is loosely based on D&D.
This does a couple things. Firstly, it scares off rules lawyers who want to play RAW. I figure those players aren't compatible with my games anyway and I'd rather just nip that in the bud. It also signals to the players that this isn't another kick down the door, slay the monster, loot the treasure D&D game. It removes that expectation and opens them up to something with more story.
If you want to get technical about it, this is just a restatement of Rule 0. But it works.
I play online almost exclusively these days, using Mote. I DM two campaigns, and this particular issue comes up often enough.
First, you have to keep things interesting. Try to design combats with more than just "attack roll -> damage roll". It's not a simple task, but it's really important to make combats interesting. Add some ranged enemies, healing enemies, mages, etc. Throw in environmental hazards, or effects which occur between turns. Give the PCs a time crunch to win. Give them a reason to be concerned.
In terms of process, I have found that the method of forfeiting turns does help. If they take too long, they lose their turn. However, I found that rewarding them for taking swift actions is far more effective. I give my players a +1 circumstance bonus per five levels to any rolls they make during their turn if they begin taking actions within fifteen seconds. I call this bonus "seizing opportunities." It works phenomenally. That, plus some recommendation for the players to plan actions during someone else's turn, means that they are likely to have their plans ready and in motion within those fifteen seconds. The bonus is big enough to be worth striving for, without being so big that it's not worth sacrificing for the occasional tactical overview. Players are much more likely to confer with each other this way. This has sped up our gameplay immensely.
You can adjust the bonus, time limit, and everything else to whatever works for you. I just insist that rewarding players is a more effective motivator than punishing them. It also makes them feel good and have more fun. That is the most important thing.
EDIT: Now that I think of it, this is also a pretty effective way to speed up offline tabletop combat, for anyone else who might be doing one or the other or both.
EDIT EDIT: One other thing I should mention is that when playing through an online tabletop you usually have computing tools available. Take advantage of them! The human brain is great at lots of amazing stuff, like creativity, imagination, reason, and emotion. One thing it has a hard time with is mathematics. Fortunately, computers rock that stuff. It helps to shave more time off of a turn if you have as much action content (rolls, initiative order, etc.) hard-coded beforehand. Dice macros are a simple example.
On a non-computing basis, it also helps to have actions listed out in front of the player. I know there was a lot of hate around 4e's action system, but having a sheet of actions clearly delineated in front of the player was a huge advantage for newbies. Having some clear options in front of them helps remind them of what they can do, and thereby lets them make a decision sooner.
Naturally, you do not have to be as hard-and-fast as 4e. You can even go as simply as reminding the player of what they can do in your game, or give them some soft suggestions.
Best Answer
Unless this makes the game boring for you as a GM, don't make it a goal in itself to have the players vary their characters. The players won't like being forced into roles they don't want to play, and the game can be a lot of fun even with a homogeneous group.
Draw your inspiration from westerns and other action movies where all of the characters are gunslingers, like Young Guns and The Expendables. Focus on combat, but don't be afraid to throw in other types of challenges every once in a while. Ingenious players will always find some way to solve a problem.
If the players are having a hard time getting past a noncombat obstacle you put in their path, consider tossing in an NPC with the required skills—and then have the bad guys attack him. While the NPC is doing his work, it falls upon the players to protect him. Dramatic scenes like these are usually enjoyed by everyone at the table, and the players won't feel that the NPC did all the work.
Finally, encourage the players to flesh out how their are gunslingers are different from each other. While their skills may be similar, there can be a great deal of difference in their personalities and backgrounds. If the players are reluctant to provide this backstory themselves, consider adding social encounters (like negotiations) or moral dilemmas (like hostage situations) into the game to have these differences form naturally during play.