Make a texting applet for QLab and QDisplay

Make a texting applet for QLab and QDisplay – Created to solve the problem of verbal communication between a mix engineer and wireless engineer during performances. Using AppleScript, QLab and QDisplay, create a non-verbal communication method to allow the A2 to warn the A1 of wireless mic dropouts, and the A1 to acknowledge receipt without getting on the com.

This method utilizes QDisplay from Figure53, a companion application to QLab, AppleScript, and Remote Apple Events (System Preferences>Sharing). Ensure QDisplay is installed on the both machines, then enable Apple Remote Events (again, on both machines). On the sending side, paste the following into AppleScript Editor and save it as a script. Placing it in ~/Library/Scripts will put it in the menu bar if “Show Script menu in menu bar” is selected in Script Editor>Preferences.

Note: you will need the administrative user name and password for the receiving machine, as well as its IP address. Use static addressing for show networks.

set remoteMachine to "eppc://username:password@IPaddress"
-- update to username, password and IPaddress of remote (receiving) machine
-- do not use special characters '@' or ':' in password

display dialog "Send Message:" default answer "" buttons {"Cancel", "Send"} default button 2 with title "FOH Messaging"
set theMessage to the text returned of the result

try
	using terms from application "QDisplay"
		tell application "QDisplay" of machine remoteMachine
			set message to "--INCOMING--"
			set messageSize to 80
			set messageColor to "red"
			delay 0.5
			repeat 4 times -- set repeat iterations here
				set message to "" -- clears the message window
				delay 0.5
				set message to "-- INCOMING --"
				delay 0.5
			end repeat
			set message to ""
			delay 0.5
			set message to theMessage
		end tell
	end using terms from
end try

Create another Script cue on the target machine that clears the message window:

tell application “QDisplay”
set message to “”  — no message generates an empty window
end tell

If using a MIDI-enabled console, set this “clear” script to fire via a MIDI message and map that message to a user defined key on the desk. Otherwise, use a hotkey trigger. Next, create a third script cue on the target machine which continues from the “clear” script cue, and contains the following:

 set remoteMachine to "eppc://username:password@IPaddress" -- update to username, password and IPaddress of remote (receiving) machine
-- do not use special characters '@' or ':' in password
 
try
	using terms from application "QDisplay"
		tell application "QDisplay" of machine remoteMachine
			set message to "--RECEIVED--"
			set messageSize to 80
			set messageColor to "red"
		end tell
	end using terms from
end try

Lastly, create a duplicate “clear window” script on the A2 side, to purge the QDisplay window after the “received” message is printed.