πώς να στήσετε «Ξεκινήστε» κουμπί στο facebook messenger bot και πότε να στείλετε μήνυμα καλωσορίσματος

ψήφοι
8

Ξεκίνα

Προσπάθησα αποστολή του αιτήματος για αυτό το url

https://graph.facebook.com/v2.6/PAGE_ID/thread_settings?access_token=PAGE_ACCESS_TOKEN

Αλλά δεν λειτούργησε.

Δημοσιεύθηκε 27/06/2016 στις 07:32
πηγή χρήστη
Σε άλλες γλώσσες...                            


10 απαντήσεις

ψήφοι
2

θα πρέπει να εκτελέσετε μια κατάλληλη εντολή μπούκλα να το δημιουργήσει. ελέγξτε αυτό το link και να δούμε το παράδειγμά τους. https://developers.facebook.com/docs/messenger-platform/implementation#send_api

Απαντήθηκε 28/06/2016 στις 14:27
πηγή χρήστη

ψήφοι
3

ευχαριστίες για τις πολύτιμες παρατηρήσεις, μετά από κάποια λύση βρήκαν αυτό το εργασιακό λύση, σύμφωνα με τις κατευθυντήριες γραμμές facebook

πρέπει να στείλετε ένα ανεξάρτητο αίτηση POST σε αυτό το URL μόνο ΜΙΑ ΦΟΡΑ

https://graph.facebook.com/v2.6/PAGE_ID/thread_settings?access_token=PAGE_ACCESS_TOKEN

μεταχειρισμένα ταχυδρόμος για να στείλετε το αίτημα όπως αυτό εδώ

Εάν η Ξεκινήστε κουμπί τέθηκε με επιτυχία, θα πάρετε την ακόλουθη απάντηση

{
  "result": "Successfully added new_thread's CTAs"
}
Απαντήθηκε 30/06/2016 στις 07:26
πηγή χρήστη

ψήφοι
13

Πραγματοποίηση κλήσης POST με API JSON σώμα ως κατωτέρω.

curl -X POST -H "Content-Type: application/json" -d '{
"setting_type":"call_to_actions",
"thread_state":"new_thread",
"call_to_actions":[
 {
  "payload":"USER_DEFINED_PAYLOAD"
 }
]
}' "https://graph.facebook.com/v2.6/me/thread_settings?access_token=PAGE_ACCESS_TOKEN"

Ref: Facebook messenger να ξεκινήσετε το κουμπί

Ταχυδρόμος screentshot

Απαντήθηκε 01/07/2016 στις 20:22
πηγή χρήστη

ψήφοι
0

Μια καλύτερη λύση κατά τη γνώμη μου, είναι να χρησιμοποιήσετε το πλαίσιο της Microsoft Bot και η χρήση του / FIRSTRUN για να στείλετε το κουμπί αγγελιοφόρο να ξεκινήσετε

function firstRun(session) {
  console.log('This user is running our bot the first time')
  createUser(session)
  platforms.firstRun(session.message.user.id, session.message.address.channelId)
    .then((values) => {
      for (let value of values) {
        if (value.data.firstName && value.data.lastName) {
          session.userData.user.profile = value.data
        }
      }
    })
    .catch((errors => {
      console.log(errors);
    }))
  reply(session)
  session.endDialog()
}

Η platforms.firstRun φαίνεται όπως φαίνεται παρακάτω

platforms.firstRun = function (userId, channel) {
    switch (channel) {
        case platforms.channels.emulator:
            return Promise.reject('none')
        case platforms.channels.facebook:
            return platforms.facebook.firstRun(userId)
        case platforms.channels.skype:
            return Promise.reject('none')
        default:
            return Promise.reject('none')
    }
}

Αυτό με τη σειρά του απαιτεί platforms.facebook.firstRun

platforms.facebook.firstRun = function (userId) {
    return Promise.all([
        platforms.facebook.sendThread(facebookTemplates.greet(), 'Greeting'),
        platforms.facebook.sendThread(facebookTemplates.getStarted(), 'Get Started'),
        platforms.facebook.sendThread(facebookTemplates.getPersistentMenu(), 'Persistent Menu'),
        platforms.facebook.sendThread(facebookTemplates.getDomainWhitelisting(), 'Domain Whitelisting'),
        platforms.facebook.getProfile(userId)
    ])
}

Η platforms.facebook.sendThread φαίνεται όπως φαίνεται παρακάτω // καλεί το γράφημα api Facebook για να αλλάξετε τις ρυθμίσεις του bot

platforms.facebook.sendThread = function (template, cmd) {

    return new Promise((resolve, reject) => {
        // Start the request
        request({
            url: platforms.facebook.GRAPH_BASE_URI + '/me/thread_settings?access_token=' + endpoints.FACEBOOK_PAGE_ACCESS_TOKEN,
            method: 'POST',
            headers: { 'Content-Type': 'application/json' },
            form: template
        },
            function (error, response, body) {
                if (!error && response.statusCode == 200) {
                    // Print out the response body
                    resolve({ status: response.statusCode, data: body })
                } else {
                    // TODO: Handle errors
                    reject({ status: response.statusCode, data: error })
                }
            });
    })
}

Ανακοίνωση για την facebookTemplates.getStarted (), ότι έχει πράγματι την JSON για να ξεκινήσετε το οποίο μοιάζει όπως φαίνεται παρακάτω

templates.getStarted = function () {
    return {
        setting_type: "call_to_actions",
        thread_state: "new_thread",
        call_to_actions: [
            {
                payload: payloads.FACEBOOK_GET_STARTED
            }
        ]
    }
}

Πλήρως συνδεόμενο αρχιτεκτονική κώδικα για την εκτέλεση μιας πρώτης λειτουργίας τρέχει σε όλες τις πλατφόρμες chatbot. Λειτουργεί τέλεια σε bot μου ΕΔΩ

Απαντήθηκε 17/11/2016 στις 16:24
πηγή χρήστη

ψήφοι
4

Είναι δυνατόν να το ρυθμίσετε με επιτυχία, αλλά δεν το βλέπουμε επειδή έχετε ήδη μια υπάρχουσα συνομιλία με τη σελίδα facebook.

Μετά την επιτυχή ρύθμιση της νήμα «Get Started», θα το δείτε μόνο αν διαγράψετε τα υπάρχοντα νήμα συνομιλία σας και να ξεκινήσετε ένα νέο.

Ξεκινήστε το κουμπί εμφανίζεται μόνο όταν αλληλεπιδρούν με τη σελίδα facebook, για πρώτη φορά, οπότε αν έχετε στείλει μήνυμα στο παρελθόν τη σελίδα, δεν θα είστε σε θέση να δείτε το «Get Started» εκτός και αν διαγράψετε το νήμα από τον πελάτη σας στο Facebook Messenger ( είτε κινητό ή σταθερό).

Από τα Έγγραφα FB Messenger:

Υπάρχουν ορισμένες προϋποθέσεις για να δει την οθόνη υποδοχής και τη Ξεκινήστε κουμπί:

  • Θα παρέχονται μόνο την πρώτη φορά που ο χρήστης αλληλεπιδρά με την σελίδα στον Messenger
  • Μόνο οι διαχειριστές / προγραμματιστές / δοκιμαστές της εφαρμογής μπορείτε να το δείτε όταν η εφαρμογή είναι σε κατάσταση ανάπτυξης
  • Η εφαρμογή σας θα πρέπει να εγγραφεί σε postbacks για webhook σας
Απαντήθηκε 16/04/2017 στις 17:33
πηγή χρήστη

ψήφοι
2

Υπάρχει μια βιβλιοθήκη στο NPM που τυλίγει τη λειτουργικότητα του POST / DELETE ενέργειες εδώ: https://www.npmjs.com/package/fb-get-started-button

$ npm install -g fb-get-started-button

$ fb-get-started-button add <YOUR PAGE ACCESS TOKEN>
Adding "Get Started" button with the payload "GET_STARTED"
Successfully added new_thread's CTAs

$ fb-get-started-button remove <YOUR PAGE ACCESS TOKEN>
Removing "Get Started" button
Successfully deleted all new_thread's CTAs
Απαντήθηκε 23/04/2017 στις 06:24
πηγή χρήστη

ψήφοι
3

Η σημερινή μορφή είναι, https://graph.facebook.com/v2.6/me/messenger_profile?access_token=PAGE_ACCESS_TOKEN

{ "Get_started": { "ωφέλιμο φορτίο": "GET_STARTED_PAYLOAD"}}

Απαντήθηκε 07/09/2017 στις 12:23
πηγή χρήστη

ψήφοι
0

Στην περίπτωσή μας, τα εξής εργαστεί:

  • Χτυπήστε το thread_settingsAPI

    https://graph.facebook.com/v2.6/me/thread_settings?access_token=<YOU FACEBOOK PAGE'S PAGE ACCESS TOKEN>

  • Πέρασε το ακόλουθο δείγμα JSON

    {
      "Setting_type": "call_to_actions",
      "Thread_state": "new_thread",
      "Call_to_actions": [
        {
          "Ωφέλιμο φορτίο": "Start"
        }
      ]
    }
  • Το API παρέχει τα ακόλουθα ως αποτέλεσμα:
    {
        «Αποτέλεσμα»: «CTAs επιτυχία πρόσθεσε new_thread του»
    }
Απαντήθηκε 03/12/2017 στις 07:30
πηγή χρήστη

ψήφοι
1

Αποστολή αιτήματος μετά τη χρήση της σελίδας διακριτικό πρόσβασης σας

https://graph.facebook.com/v2.6/me/messenger_profile?access_token=YOUR-TOKEN

με τα ακόλουθα δεδομένα

{ 
  "get_started":{
     "payload":"<GET_STARTED_PAYLOAD>"
   }
}

Έγγραφα Facebok: Ξεκινήστε Button

Ελπίζω αυτή η νέα μέθοδος να λύσει το πρόβλημά σας. Μην ξεχάσετε να διαγράψετε τα απεσταλμένα μηνύματα πρώτη χρήση του Facebook στο Web για να δείτε το κουμπί στη δράση.

Απαντήθηκε 12/01/2018 στις 20:56
πηγή χρήστη

ψήφοι
0

Πολύ απλή λύση, απλά ανοίξτε το τερματικό και να πάει στη θέση του φακέλου που σας φιλοξενεί, (στη δική μου /var/www/html/booking/public/facebookbot) και επικολλήστε τον παρακάτω κώδικα:

curl -X POST -H "Content-type: application/json" -d '{ 
    "setting-type":"call_to_actions",
    "thread_state":"new_thread",
  "get_started":{
     "payload":"GET_STARTED_PAYLOAD"
   }
}' "https://graph.facebook.com/v2.6/me/messenger_profile?access_token=YOUR_ACCESS_TOKEN"

και πατήστε enter, φροντίστε να βάλετε σωστό κωδικό πρόσβασης σας, επίσης μπορείτε να αναγνωρίζουμε όταν ξεκινήσατε το κουμπί σας πιέζεται από το ωφέλιμο φορτίο που είναι GET_STARTED_PAYLOAD στο παραπάνω δείγμα κώδικα.

Απαντήθηκε 01/02/2019 στις 17:41
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more