Thanks Alex. I am testing this in the lab so I don't have a production config loaded, I am really focused on the carrierroute module and trying to figure that out so I'm running bare bones using the module example. I looked into the RR functions and read in the CR module that it invokes the TM when necessary so I was thinking it would take care of keeping track of dialogs. The thing that threw me off was the handling of the scenario 1 session with sipp was ok but with asterisk scenario 2 it was not.
So I loaded in the record_route function in the main routing block and it did take care of the complete session with the asterisk server, so that problem is solved.
What I am running into now is the failure route. If the initial session can not compete to the fist carrierroute, the call switches over to the failure-route[1] which invokes carrierroute again with another domain. Then the receiving asterisk server retransmits the initial OK 6 times, so the transaction is lost or not held in kamailio state, then the whole session drops after a few more seconds. I think there is something going on with the append_branch function that is throwing me off. It is needed so the failure route completes but it's not handling the complete dialog or I could be totally off.
Thanks.
JR