How does the semantics of message routing work (involving resources)?

I have come up with the following (for a message sent to [EMAIL 
PROTECTED]<mailto:[EMAIL PROTECTED]>):


1.       Is the destination on this server?

a.       No -> Open or use S2S connection and route the packet there.

2.       Does it have a resource?

a.       No -> Find the lowest resource and route.

3.       Is the resource online?

a.       Yes -> Route it to that connection.

b.      No -> Is the user online?

                                                               i.      Yes -> 
*What to do here?* (Assuming that [EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]> 
or [EMAIL PROTECTED]/resource<mailto:[EMAIL PROTECTED]/resource> is online)

                                                             ii.      No -> 
Store it in DB for later.

I know this has come up before,  but what about duplicate destinations? If a 
*nuclear reactor is overheating* packet is sent to [EMAIL 
PROTECTED]<mailto:[EMAIL PROTECTED]> and he has three resources:

[EMAIL PROTECTED]/mobile<mailto:[EMAIL PROTECTED]/mobile> (0)
[EMAIL PROTECTED]/pc<mailto:[EMAIL PROTECTED]/pc> (1)
[EMAIL PROTECTED]/allfail<mailto:[EMAIL PROTECTED]/allfail> (0)

Thus now he has identical resources in case a message is sent to his mobile, 
and it needs urgent action (but he isn't online). Can't messages be routed to 
all resources with identical priorities?

Thanks for your time.

Reply via email to