Dear Bogdan and Everybody,
it seems that I successfully solved my problem. I think the problem exactly was that I used uac_restore_from twice within the same route run and/or my route logic script contained some unwanted functions which I removed now --- they might have had some side effects, in my opinion. Another reason may be that I wrote record_route several times, probably it should have been called only once.
I had to decrease the log level to 3 to follow what happens in the route logic script. Now I almost completely understood what is going on during a telephone call (I mean the SIP transfer). Interesting! ;-) For me it was a surprise that it is usual that a route logic script can be re-run twice using the original and the re-written SIP header. So, using very similar data, it is very common that route(), route(1), route() and then route(1) are used again.
Since I'm a novice in route scripting, I'm happy to made it work. ;-)
My solution, if somebody is interested, can be found on http://particio.com/openser2.cfg.txt
.
Best regards, Zoltan