For a start, don't try to explain these dynamic collaborations using the connectors on your class diagram.
The direction of the arrow connectors on the class diagram just specifies the who knows who. That means, the dependencies between classes. With those arrows you can communicate which classes need what other classes, but you don't have to explain there how are the dynamics of the collaboration between those clases. That's what UML dynamic diagrams are for.
Start with your class diagram, which is the static view of the system, and then add some dynamic diagrams.
As dynamic diagrams, together with sequence diagrams that are the most common, you can also use:
- Activity diagrams
- State diagrams
- Collaboration diagrams
Each has its own point of interest, and the main strategy is that you reuse some of the objects defined in your class diagram in order to describe specific scenarios.
For each one of the 'interesting' scenarios on your system, you should make one of these dynamic diagrams to describe what happens between the objects that you specified on your class diagram.
Typically, each use case will be described by one class diagram and one or more dynamic diagrams. All these design information together is called the use case realization, because they describe the design that will make your use case real when the code is built.
Check out Fowler's UML Distilled for a concise but excellent explanation of this design workflow using UML.