can you split your checks from nat_uac_test("23") to individual checks (like nat_uac_test("1"), nat_uac_test("2"), ...) and see which one fails?
Via parameter 'received' contains (always, as per spec) only the IP address, rport is for received port. Perhaps adding [] would not harm, but otherwise should be ok now.
For path module, I pushed a patch. Maybe you can test and report the results for it.