En primer lugar, hay que definir el main(). Esta función decide si el cuadro de diálogo debe abrirse (bajo qué condiciones) y qué cuadro de diálogo debe mostrarse.

A continuación, puede definir funciones de clic con reacciones a la opción seleccionada: onSí(), onNo(), onPrint(), onCancel().

Las propiedades públicas se mantienen entre las llamadas. De hecho, se envían al cliente y se devuelven.

Ejemplo de script de interacción con el usuario

función main(){
// Si el trabajo es en color, mostrar un cuadro de diálogo Sí/No para preguntar al usuario si quiere imprimir el trabajo en B&N.
if ($this->job->color){
$this->dialogYesNo("Los trabajos enviados a esta cola se imprimen en blanco y negro,
¿todavía quiere enviar el trabajo aquí?"); }
}
function onYes(){
// El usuario es informado de que el trabajo fue enviado a la cola de ByN a través de una notificación del CDM.
$this->job->owner->sendNotification("info", "Trabajo enviado con éxito", "Su trabajo fue enviado
a la cola de B&N");
}
function onNo(){
//El trabajo es eliminado y el usuario es informado de ello a través de una notificación del CDM.
$this->job->delete(); $this->job->owner->sendNotification("info", "Trabajo eliminado", "Su
trabajo fue eliminado");
}