1* REGISTER transactions: 2 Currently siproxd does only support *one* Contact header in REGISTER 3 transactions. If an UA does send multiple (which is legal) funny things 4 may happen. 5 There are one or two funnies associated with REGISTER transactions that 6 should be mentioned: 7 1) There can be multiple Contact URIs in the request. It is legal 8 (although very rare) to register multiple extensions at the same 9 time. 10 When multiple extensions need to be registered, they are generally 11 registered separately. You probably don't need to worry about this 12 for the time being, but it is probably worth bearing it in mind. 13 2) There can be multiple Contact URIs in the response. If more than 14 one UA has registered for the same AOR, then the response to the 15 REGISTER will contain all the registered AORs and their current 16 expiry times. 17 None or some of these may need 'unmapping'. Again, this probably 18 isn't something you will come across that often, but knowing it can 19 happen may save you some debugging time later. 20 3) The Contact in the request may contain '*'. This is used by some 21 phones to deregister all registrations for the specified AOR. 22 4) Sometimes, there is no Contact in the request. This happens when 23 a UA is querying the registration database. This is sometimes used 24 for diagnostic purposes, although I suppose a phone could do this 25 automatically for some reason. 26 5) The definitive expires time is not found in the request. This is 27 simply a suggested value. The actual value is in the response from 28 the registrar. 29 For the definitive description -> RFC3261 section 10. 30 31