How to check for when a publishing job is complete

I am automating the publication of several language outputs. I need to know when the publishing job is complete, so I can start the next publishing job. The sample code from an ISHRemote webinar handles this with Start-Sleep like this:

$ishObject = Publish-IshPublicationOutput -IshSession $ishSession -LogicalId $guid -Version 2 -LanguageCombination "en-us" -OutputFormat "PDF (XPP A4)"

Start-Sleep -Seconds 60

This works, but it's not very flexible for when there are longer publishing jobs, etc. What is a good way to check for publication status in real time? I notice that getting the publication object in a variable $publication like below is static and does not update in real time:

$publication = Get-IshPublicationOutput -LogicalId $PubGuid

$publication[1].fishpubstatus

I had the idea of getting the publication newly again every 10 seconds or so, and then checking on fishpubstatus. Is there a better way to go?

Thanks, Mark