Geführte Touren  – Client

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 5 Minuten Lesedauer
  • Die Guided Tours -API bietet Methoden zum Starten und Stoppen von geführten Touren.

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

    Geführte Touren –applyListFilter(Function filter_func)

    Legt eine Funktion zum Abrufen gefilterter Tourergebnisse fest, 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_func Funktion Filterfunktion, die ein einzelnes Tourobjekt aus dem Array „Tours[]“ übernimmt, das von der Methode „ getAllTours() “ 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 Sie das Optionsfeld im Tourobjekt verwenden, um JSON mit anwenderdefinierten Tourbezeichnern zum Lesen und Filtern von Touren in 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 derzeit 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);
    

    Geführte Touren – event.off(String event_name, Function listener_function)

    Entfernt einen vorhandenen Ereignis-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
    • Tour – Fehlgeschlagen
    • TourVerworfen
    • TourVerworfen
    • stepStarted
    listener_function Funktion Optional. Falls angegeben, wird die angegebene Listenerfunktion aus den verbleibenden Ereignis-Listenern entfernt, die an dieses Ereignis angehängt sind. Wenn nicht angegeben, werden alle an dieses Ereignis angehängten Listenerfunktionen 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);
    

    Geführte Touren – event.on(Zeichenfolge event_name, Funktion listener_function)

    Hängt einen Ereignis-Listener an ein Ereignis einer geführten Tour 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:
    • stepStarted
    • TourGestartet
    • TourBeendet
    • TourAbgeschlossen
    • Tour – Fehlgeschlagen
    • TourVerworfen
    • TourVerworfen
    listener_function Funktion Hinzuzufügender Listener.
    Hinweis:
    Löschen Sie alle Ereignis-Listener, nachdem ihr Zweck gelöst wurde.
    listener_function.obj Objekt Wird von jedem Ereignis im folgenden Format an listener_function() übergeben:
    • Für stepStarted-Ereignisse:
      {tour: '<tour_sys_id>', step: step_num}
    • Für alle anderen Ereignisse:
      {tour: '<tour_sys_id>'}
    JSON-Parameter:
    • Tour_sys_id: Zeichenfolge. ID der geführten Tour aus der Tabelle „Geführte Touren“ [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 dem Argument obj verwendet wird.

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

    Geführte Touren – getAllTours(Function cb_function)

    Ruft eine Liste der Touren auf der aktuellen Seite ab, von der 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 zu erhalten.

    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() nach dem Versuch aufgerufen wird, alle Touren für die aktuelle Seite abzurufen, von der die Methode getAllTours() aufgerufen wird.
    cb_function.err Objekt Verweist auf das Fehlerobjekt, wenn während des Vorgangs eines 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 “ den Wert „nicht definiert“ 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);
    

    Geführte Touren – 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

    Geführte Touren – 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 „Geführte Touren“ [sys_embedded_tour_guide]
    step_number Nummer Optional. Schritt, bei dem die Tour gestartet werden 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, wenn während des Vorgangs eines 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);