Group sip trunc:s with macro

I still very new in the asterisk world.
I need some small help to solve group problem.
every sip trunc are connected to anouther asterisk, and in the dial plan, look like this.
and so on,

Before we group the Dahdi, but what we debug down, are that
Time to time the Asterisk, mix up the channels about CID and CEID.

So my idea are to have 4 sip truncs name: SipCmd1, SipCmd2, SipCmd3, SipCmd4

and i will group them with macro, or something, what i understand
are that not a normal group, like then in Dahdi for sip truncs ?

so the result will be something
exten = _x,1,dial(SIP/Macro or group) ; there Macro or group = SipCmd1 to 4.

When SipCmd1 is busy, it should dial SipCmd2 and so on
Maybe we need to set maximun one sip channel per sip trunc.

Hope you understand the problemn

Brg /Richard