Let me first start off with pointing out that Bob isn't likely to be very on your side. He may be able to explain things better, but Joe at least felt Bob would support him, or he wouldn't chosen Bob to be his implicit supporter. Unfortunately, unless you are able to better describe what happened to somebody local to you, Bob is likely the best option you have.
When I experienced something like this, it was only about an hour of this. But it sounds like yours might have been less stressful, as mine was with my supervisor from my client and my team lead from my client. It wasn't likely they could really get me fired, but they could certainly have tossed me back to my employer, requiring me to find another assignment, which would've been only slightly more pleasant than interviewing for another job.
I'd been teaching my coworkers about better work practices. These were things that normally are dictated by management, if they're done at all in an organization. This management team did not dictate any such practices. I had been following these practices myself, and my coworkers had noticed that I had better handling of certain situations, and had asked to know how I did that.
My supervisor apparently felt like I was trying to usurp his position, which was rather crazy because I was a contractor and couldn't possibly do that. Also, I was mostly instructing my fellow contractors. This could've been handled off-site, but they wanted this training for better handling their jobs at that customer site, so it was quite relevant. There were a few employees who were interested from time to time in listening to what I had to say, but they weren't his employees.
But my supervisor did not actually talk directly about any of that. I only found that out from talking to the team lead. My supervisor talked about teamwork and following the same processes and going for the same goal. He asked what I was trying to accomplish, who I thought I was, what my purpose was. He complained about things that were done improperly before I was even part of the team and wouldn't have been my responsibility even if I had been around already and attributed them to me.
It's my thought you probably want something like,
Bob, please help me, because I really don't understand the meeting the other day. I understand Joe is upset with me. But Joe was speaking so indirectly I couldn't understand what his real concern is. Joe often does this. You are often able to explain things that he says in a way I can better understand. Please help me understand what his concern is. I'm really wanting to know his real concern, if you understand it, but I know from prior experience with him that he wouldn't tell me that.
That said, when I had this problem, I went into the equivalent person's cubicle after the other guy left for the day (the supervisor came in before pretty much everybody, the team lead stayed at work until most people went home. There were several hours each day when only one of them was around.) and said something along the lines of
"Bob", could you tell me why Joe is upset? I sat and listened to him through that whole thing, but I couldn't believe that he was really complaining about me not being a team player, or any of the other things he was going on about.
My approach technically worked, as "Bob" did explain the real issue. However, "Bob" also reported back to "Joe" the manner in which I approached him. I was really lucky, because there was another supervisor in that work group who did like me. Her employees were the ones who were eager to learn about better processes for managing changes. My better processes weren't amazing, but they basically had "well, try this thing, and if it works, great. Otherwise, try something else." So when my supervisor talked about maybe getting rid of me, she volunteered to handle his problem contractor for him.
This was all very many years ago. Since then, I've had experiences that were basically in Bob's role. The approach I first suggested is more or less the gist of the requests that most of the people who come to me for this assistance make. Being in this other position in this process doesn't require a great deal of communication skills on my part. The various people who've played the "Joe" role and had me be their "Bob" generally ranted to me about their real issue for at least half an hour at various points before the meeting. I'm not sure why they couldn't communicate their issues directly.
I'm not the team lead that I had to deal with in my time in the OP's position, and I've never explained to the people who called any of those meetings how the person they'd had issues had approached me. But it feels like the way most of them have approached me probably would've been seen as less abrasive than my approach if I did relate them on to others.