Risposte private

Questo documento mostra come aggiungere in modo programmatico le risposte private alla tua esperienza di messaggistica.

Come funziona

Le risposte private consentono a un account Instagram per professionisti di inviare un singolo messaggio a una persona che ha commentato un post, un post per le inserzioni, un reel o una live story di Instagram per professionisti.

Quando ricevi una notifica webhook comments o live_comments tramite l'API Instagram Graph nel momento in cui qualcuno commenta post, post per inserzioni, reel o live story del tuo account Instagram per professionisti, puoi usare l'ID del commento per inviare una risposta privata direttamente a quella persona. Se la persona in questione segue l'account Instagram per professionisti dell'azienda, la risposta sarà consegnata sua nella cartella Messaggi. In caso contrario, sarà consegnata nelle Richieste.

Puoi inviare questa risposta privata entro 7 giorni dalla creazione del commento, tranne nel caso di Instagram Live, per cui puoi inviare una risposta privata solo durante la diretta. Il messaggio conterrà un link al post che la persona ha commentato.

Webhook

  • Quando organizzi una live story su Instagram, assicurati che il tuo server possa gestire l'aumento del carico di notifiche attivate dagli live_commentseventi webhook tramite l'API Instagrame che il tuo sistema possa distinguere notifiche live_comments e comments.
  • Le notifiche webhook comments dell'API Instagram Graph dei post per inserzioni includeranno ID e titolo dell'inserzione. Potresti dover aggiornare il tuo server webhook per la gestione di questi nuovi campi.

    ad_id e ad_title saranno restituiti nell'oggetto multimediale quando una persona commenta un post di Instagram in evidenza o un post di inserzioni di Instagram e ciò potrebbe determinare notifiche webhook duplicate.

Limitazioni

  • È possibile inviare un solo messaggio alla persona che ha commentato
  • Il messaggio deve essere inviato entro 7 giorni dalla creazione del commento per i commenti su un post, un post per le inserzioni o un reel
  • A causa della natura transitoria delle storie in diretta di Instagram, le risposte private su Instagram Live Stories possono essere inviate solo durante la diretta stessa. Una volta finita la diretta non si potranno più inviare risposte in privato.
  • Solo quando una persona risponde al messaggio privato puoi proseguire la conversazione entro la finestra di 24 ore per l'invio di messaggi.
  • Le app con accesso standard possono accedere ai dati solo per le persone che hanno un ruolo nell'app
  • Le risposte private per i commenti di IGTV non sono supportate
  • L'API v7.0 o successive ha bisogno della funzionalità Agente umano e del tag Message dell'Agente umano per le risposte in privato

Prima di iniziare

Questo tutorial presuppone che tu abbia letto la Panoramica della Piattaforma Messenger e la Panoramica dei messaggi di Instagram e abbia implementato i componenti necessari.

Ecco cosa ti servirà:

  • L'ID della Pagina Facebook collegata al tuo account Instagram per professionisti.
  • L'ID del commento fatto dalla persona a cui stai inviando la risposta privata. L'ID può essere ottenuto dai webhook comments di Instagram per post, post per inserzioni e reel, e dai webhook live_comments di Instagram per le storie in diretta (consigliati per evitare il rate limiting) o con una chiamata API all'endpoint /page/feed
  • Le autorizzazioni instagram_manage_comments e pages_messaging, ottenute tramite Facebook Login
  • Un token di accesso alla Pagina richiesto da una persona che può completare l'attività MESSAGING sulla Pagina Facebook collegata al tuo account Instagram per professionisti
  • La funzione Agente umano
  • Accesso avanzato

Invio di una risposta privata

Per inviare una risposta privata a una persona che ha commentato il tuo post, il tuo reel o la tua storia in diretta, invia una richiesta POST all'endpoint /PAGE-ID/messages, in cui il parametro recipient contiene l'ID del commento e il parametro message contiene il testo che vuoi inviare.

Formattato per una maggiore leggibilità.
curl -i -X POST "https://graph.facebook.com/PAGE-ID/messages
  ?recipient: { comment_id: COMMENT-ID }
  &message: { "text": "Thanks for reaching out, how can I help?" }
  &access_token=PAGE-ACCESS-TOKEN"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/1353269864728879/messages",
  new JSONObject("{\"recipient\":\"{comment_id: 18000158536435933}\",\"message\":\"{\\\"text\\\": \\\"It is cool\\\"}\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/1353269864728879/messages"
           parameters:@{ @"recipient": @"{comment_id: 18000158536435933}",@"message": @"{"text": "It is cool"}",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/1353269864728879/messages',
  'POST',
  {"recipient":"{comment_id: 18000158536435933}","message":"{\"text\": \"It is cool\"}"},
  function(response) {
      // Insert your code here
  }
);

In caso di azione eseguita correttamente, l'app riceve la seguente risposta:

{
  "recipient_id": "526...",   // The Instagram-scoped ID 
  "message_id": "aWdfZ..."    // The message ID for your private reply
}

Altri contenuti da consultare

Assistenza per gli sviluppatori