URScripts sent by socket limitations

Hi,

We usually control UR Robots remotely by sending script movement commands, through 30003 port. We use single script movements like:

“movej([1.553317, -1.40479197, 1.09063797, -1.24562061, -1.60061463, -0.0575949], a=1, v=3)”

or functions like:

“def leave_object( ): \n
movej([0.977368, -1.064633, 2.09436, -2.635403, -1.466052, 0], a=1.5, v=3, r=0.25)\n
movel(pose_trans(p[-0.755,-0.91,-0.07965,2.22,2.22,0],p[-0.000711,0.003563,0,0,0,2.72264]),a=1.5,v=0.3)\n
end”

This kind of remote scripts works perfect. The problem is i’m trying to also use loops, force_modes or threads in these scripts sent by socket, and don’t seem to work.

Is this normal?
Are there limitations in the kind of script functions we can use in scripts sent?

Thanks