Guided Tours – Client

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 5 Minuten Lesedauer
  • Stellt Methoden zum Starten und Stoppen von Guided Tours bereit.

    Diese API enthält Methoden, die in Guided Tour Designerverwendet werden.

    Guided Tours – applyListFilter(Function filter_func)

    Legt eine Funktion fest, um gefilterte Tourergebnisse abzurufen, wenn die Methode getAllTours() aufgerufen wird.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    filter_funktion Funktion Filterfunktion, die ein einzelnes Tourobjekt aus dem Tours[]- Array übernimmt, das von der getAllTours()- Methode zurückgegeben wird.
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt die grundlegende API-Nutzung.

    //create a filter function
    var filtFunction = function(tour) {
       //only return those tours whose name starts with 'my'
       return tour.name.indexOf('my') === 0);
    }
    
    //apply the filter 
    top.NOW.guided_tours.api.applyListFilter (filtFunction);
    
    //call the getAllTours method to observe the filtered tours
    top.NOW.guided_tours.api.getAllTours (function(er, tours) {
      if(!er) {
        console.log('The filtered tours are: ');
        console.log(tours);
      }
    });
    

    Das folgende Beispiel zeigt, wie das Optionsfeld im Tourobjekt verwendet wird, um JSON mit benutzerdefinierten Tourbezeichnern zum Lesen und Filtern von Touren innerhalb der Funktion filter_func() hinzuzufügen.

    top.NOW.guided_tours.api.applyListFilter(function(tour) {
           var options = (tour.options)? JSON.parse(tour.options): null;
           return (options && options.my_param) ? (options.my_param == my_value) : false;
    });

    Geführte Touren – endTour()

    Stoppt eine aktuell wiedergegebene Tour. Diese Methode wird automatisch beendet, wenn keine Touren abgespielt werden.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    NULL
    //create a callback function to end the tour if it starts correctly
    var cbFunction = function(err) {
    	if (err) {
       console.log('Error Occurred');
    }
    	else {
    	   // tour has started so we can call endTour
    	   top.NOW.guided_tours.api.endTour();
    }
    }
    
    //calling the startTour method so that we can end the tour as soon as it starts
    top.NOW.guided_tours.api.startTour('a297e04b732313007077edcc5ef6a780', 2, cbFunction);
    

    Guided Tours – Events.off(String event_name, Function listener_function)

    Entfernt einen vorhandenen Event-Listener.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    event_name Zeichenfolge Ereignisname, der aus dem Listener entfernt werden soll.
    Gültige Ereignisnamen:
    • TourGestartet
    • TourBeendet
    • TourAbgeschlossen
    • TourFehlgeschlagen
    • TourVerworfen
    • tourVerworfen
    • SchrittGestartet
    listener_function Funktion Optional. Falls vorhanden, wird die angegebene Listener-Funktion aus den verbleibenden Event-Listenern entfernt, die an dieses Event angehängt sind. Wenn nicht angegeben, werden alle an dieses Event angehängten Listener-Funktionen entfernt.
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Keine
    //create a callback function to handle the result of the api call
    var eventListenerTourStarted = function() {
       console.log('The tour has started'); 
    }
    var eventListenerTourEnded = function() {
       console.log('The tour has ended'); 
    }
    
    //attaching event listeners for tourStarted and tourEnded Events
    top.NOW.guided_tours.events.on('tourStarted',eventListenerTourStarted);
    top.NOW.guided_tours.events.on('tourEnded', eventListenerTourEnded);
    
    …
    //start a tour
    top.NOW.guided_tours.api.startTour ('a297e04b732313007077edcc5ef6a780', 2, cbFunction);
    //As soon as the tour starts the eventListenerTourStarted gets fired
    …
    top.NOW.guided_tours.api.endTour();
    // eventListenerTourEnded gets fired
    
    ….
    
    //removing the event listeners top.NOW.guided_tours.events.off('tourStarted',eventListenerTourStarted);
    top.NOW.guided_tours.events.off('tourEnded', eventListenerTourEnded);
    

    Guided Tours – Events.on(String event_name, Function listener_function)

    Hängt einen Event-Listener an ein Guided Tour-Event an.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    event_name Zeichenfolge Ereignisname, der an den Listener angehängt werden soll.
    Gültige Ereignisnamen:
    • SchrittGestartet
    • TourGestartet
    • TourBeendet
    • TourAbgeschlossen
    • TourFehlgeschlagen
    • TourVerworfen
    • tourVerworfen
    listener_function Funktion Listener, der hinzugefügt werden soll.
    Hinweis:
    Löschen Sie alle Event-Listener, nachdem sie ihren Zweck erfüllt haben.
    listener_function.obj Objekt Wird von jedem Event im folgenden Format an listener_function() übergeben:
    • Für stepStarted-Ereignisse:
      {tour: '<tour_sys_id>', step: step_num}
    • Für alle anderen Events:
      {tour: '<tour_sys_id>'}
    JSON-Parameter:
    • tour_sys_id: Zeichenfolge. Guided Tour-ID aus der Tabelle „Guided Tours“ [sys_embedded_tour_guide].
    • step_num: Nummer. Wert zwischen 0 (erster Schritt) und n (letzter Schritt)

    Das folgende Beispiel zeigt die grundlegende API-Nutzung.

    //create a callback function to handle the result of the api call
    var eventListenerTourStarted = function() {
       console.log('The tour has started'); 
    }
    var eventListenerTourEnded = function() {
       console.log('The tour has ended'); 
    }
    
    //attaching event listeners for tourStarted and tourEnded Events
    top.NOW.guided_tours.events.on('tourStarted',eventListenerTourStarted);
    top.NOW.guided_tours.events.on('tourEnded', eventListenerTourEnded);
    
    …
    //start a tour
    top.NOW.guided_tours.api.startTour ('a297e04b732313007077edcc5ef6a780', 2, cbFunction);
    //As soon as the tour starts the eventListenerTourStarted gets fired
    …
    top.NOW.guided_tours.api.endTour();
    // eventListenerTourEnded gets fired
    
    ….
    
    //removing the event listeners top.NOW.guided_tours.events.off('tourStarted',eventListenerTourStarted);
    top.NOW.guided_tours.events.off('tourEnded', eventListenerTourEnded);
    

    Das folgende Beispiel zeigt, wie der Parameter listener_function mit obj als Argument verwendet wird.

    top.NOW.guided_tours.events.on("tourStarted", function (obj){console.log(obj);});

    Guided Tours – getAllTours(Function cb_function)

    Ruft eine Liste der Touren auf der aktuellen Seite ab, von der aus diese Methode aufgerufen wird. Da diese Methode asynchron ist, muss eine Rückruffunktion übergeben werden, um den Erfolg des Vorgangs zu bestimmen und eine Liste der Touren abzurufen.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 8. Parameter
    Name Typ Beschreibung
    cb_function Funktion Rückruffunktion, die von getAllTours() aufgerufen wird, nachdem versucht wurde, alle Touren für die aktuelle Seite abzurufen, von der die Methode getAllTours() aufgerufen wird.
    cb_function.err Objekt Verweist auf das Fehlerobjekt, falls während des Vorgangs ein Fehler aufgetreten ist:

    err = {Erfolg: falsch, Nachricht: 'Zeichenfolge, die das Fehlerobjekt enthält' }

    Andernfalls NULL.

    cb_function.tours Array Liste der verfügbaren Touren für die Seite.

    Wenn auf der Seite keine Touren vorhanden sind, gibt cb_function.tours undefined zurück.

    if(!tours) console.log('Keine Tour vorhanden')

    Tabelle : 9. Ergebnisse
    Typ Beschreibung
    Keine
    //create a callback function to handle the result of the API call
    var cbFunction = function(err, tours) {
    	if (err) {
       console.log('Error Occurred');
    }
    	else {
    	    if(!tours) console.log('No tour present')
       else {
          tours.forEach(function(t) {
                   console.log(t);
                 });
              }
    }
    }
    //calling the getTours method
    top.NOW.guided_tours.api.getAllTours(cbFunction);
    

    Guided Tours – loadPlayer()

    Lädt den Guided Tours-Player auf einer Seite, auf der der Guided Tours-Player standardmäßig nicht vorhanden ist.

    Vollständige Signatur:
    NOW.guided_tours.api.loadPlayer()
    Tabelle : 10. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 11. Ergebnisse
    Typ Beschreibung
    Keine

    Guided Tours – startTour(String tour_id, Number step_number, Function cb_function)

    Startet eine Tour. Da diese Methode asynchron ist, müssen Sie eine Rückruffunktion übergeben, um den Erfolg des Vorgangs zu bestimmen.

    Die vollständige Signatur enthält top.NOW.guided_tours.api vor dem Methodennamen.

    Tabelle : 12. Parameter
    Name Typ Beschreibung
    tour_id Zeichenfolge Sys-ID der Tour aus der Tabelle „Guided Tours“ [sys_embedded_tour_guide].
    Schrittnummer Nummer Optional. Schritt, bei dem die Tour beginnen soll. Wenn nicht angegeben (oder Schrittnummer ist 0), beginnt die Tour von vorne.
    cb_function Funktion Optional. Rückruffunktion, die von der startTour()- Methode nach dem Versuch, die Tour zu starten, aufgerufen wird.
    cb_function.err Objekt Verweist auf das Fehlerobjekt, falls während des Vorgangs ein Fehler aufgetreten ist:

    err = {Erfolg: falsch, Nachricht: 'Zeichenfolge, die das Fehlerobjekt enthält' }

    Andernfalls NULL.

    Tabelle : 13. Ergebnisse
    Typ Beschreibung
    Keine
    //create a callback function to handle the result of the API call
    var cbFunction = function(err) {
    	if (err) {
       console.log('Error Occurred');
    }
    	else {
       console.log('The tour with tourid=%s was successfully launched', tourId);
    }
    }
    
    //calling the startTour method
    top.NOW.guided_tours.api.startTour('a297e04b732313007077edcc5ef6a780', 2, cbFunction);