Error message

User warning: The following module is missing from the file system: fast_404. For information about how to fix this, see the documentation page. in _drupal_trigger_error_with_delayed_logging() (line 1143 of /mnt/www/html/ooyala/docroot/includes/bootstrap.inc).

API del bus de mensajes

Podrá comunicarse con el bus de mensajes por medio de las funciones publish, subscribe y otras funciones.

El reproductor de Ooyala expone las siguientes funciones para comunicarse con el bus de mensajes.

subscribe ( eventName, subscriber, callback ) - le permite suscribirse a los eventos que se publican en el bus de mensajes. Por ejemplo:

messageBus.subscribe(OO.Events."eventName", …);

messageBus.subscribe(OO.Events."metadataFetched");

myplayer.subscribe(OO.Events."eventName", …);
Para suscribirse a todos los eventos publicados por el bus de mensajes, puede utilizar:
messageBus.subscribe("*");

unsubscribe (eventName, subscriber, callback) - le permite cancelar la suscripción de los eventos publicados. Los parámetros pueden tomar cualquiera de los siguientes:

  • nombre de un evento específico.

  • carácter comodín * para cancelar la suscripción de todos los eventos.

Para cancelar la suscripción de un evento específico publicado por el bus de mensajes, puede utilizar:
 mb.unsubscribe('pause')  
Para cancelar la suscripción de todos los eventos publicados por el bus de mensajes, puede utilizar:
 messageBus.unsubscribe("*");  

publish (' eventName ') - le permite publicar eventos en el bus de mensajes a los que se pueden suscribir otros mediante el mismo bus de mensajes. Se debe publicar un evento para que un suscriptor reciba el evento. Por ejemplo:

 messageBus.publish('eventName')  messageBus.publish('play')   
addDependent - puede enviar un mensaje de publicación o suscripción en función de una condición o evento con la función addDependent. Por ejemplo, es posible que desee cambiar la interfaz de usuario en función de una condición, como la ubicación o la hora del día en que se reproduce el vídeo. Por ejemplo, para suscribirse a un mensaje en función de una condición, deberá agregar una línea similar a la siguiente:
 messageBus.addDependent(OO.EVENTS.eventNAME, 'name_of_condition', 
 'example', function( eventName ) {  

intercept (eventName, subscriber, callback) - le permite suscribirse a eventos que se publican en el bus de mensajes añadiendo una función callback.

Los parámetros de opciones pueden tomar cualquiera de los siguientes:
  • eventName - el nombre de un evento específico que se desea interceptar.

  • subscriber - nombre del suscriptor (por ejemplo, el nombre del módulo).

  • callback - es una función que devuelve una lista de los argumentos que se deben utilizar en posteriores activaciones de eventos. Esto le permite manipular la carga y el nombre del evento. Para cancelar la propagación de un evento mediante un interceptor, debe devolver false en lugar de una matriz.

Ejemplo: En el siguiente ejemplo nos suscribimos al evento ‘play’ publicado en el bus de mensajes y especificamos ‘test-plugin’ como el suscriptor y definimos una carga como ‘hello’. Cuando incluimos una intersección que intercambia ‘goodbye’ en la carga, si el bus de mensajes publica el evento ‘play’, la consola imprime ‘goodbye’ en lugar de ‘hello’.
mb.subscribe("play", "test-plugin", function(eventName, payload) {  
 console.log(eventName+": "+payload); });
mb.publish("play", "hello");
 Console would output "play: hello"
mb.intercept("play, "test-plugin", function(eventName, payload)
 { return ["goodbye"]; });
  Console would output "play: goodbye"