Heat olive oil in a large pan over medium-high heat. Add in the mushrooms and then shallot. Stir around until soft. Add in the barbecue sauce and combine, while cooking, for 1 to 2 minutes.
In a bowl, separate the meat. Add the onion, Worcestershire sauce, garlic and salt, and pepper. Combine well. Separate the meat into 6 equal pieces. Flatten them down and use your thumb to indent the center so it cooks evenly.
Put them on the grill flipping after about 4 minutes and then grill the other side for another 4 minutes.
When finished grilling, put them in the buns and promptly top with swiss cheese and then the barbecue sauce and mushroom topping.