FINALLY! I have been going insane over this for the last couple of months, today I finally got it all working.
So thanks again to everybody who tried to help but it appears there was an 'error' in one of the extra permission blocks suggested by ABG above. (I put 'error' in inverted commas because there may not have been an error and there might have been something else wrong, no idea, but what I added solved the problem).
So I changed the second block to this and it all sprang into life.
As you can see, I added a second 'call' box which solved the problem. Maybe someone who understands it all far better than I do can dissect my solution and decide if it was good/bad/needed or whatever!
All I know is that it worked, so thanks again for all the help and I hope someone else may find my solution helpful.