Tin trả lời riêng tư

Tài liệu này hướng dẫn bạn cách thêm Tin trả lời riêng tư vào trải nghiệm nhắn tin của bạn theo lập trình.

Cách thức hoạt động

Với Tin trả lời riêng tư, tài khoản Công việc trên Instagram có thể gửi một tin nhắn cho người dùng đã bình luận về bài viết, bài viết quảng cáo, thước phim hoặc tin trực tiếp do tài khoản Công việc trên Instagram của bạn đăng.

Khi nhận được thông báo webhooks comments hoặc live_comments thông qua API Đồ thị trên Instagram cho biết rằng một người dùng đã bình luận về bài viết, bài viết quảng cáo, thước phim hoặc tin trực tiếp do tài khoản Công việc trên Instagram của bạn đăng, bạn có thể sử dụng ID bình luận để gửi trực tiếp câu trả lời riêng tư cho người dùng đó. Hệ thống sẽ gửi tin trả lời này trong thư mục Hộp thư của người dùng nếu người dùng theo dõi tài khoản Công việc trên Instagram của doanh nghiệp hoặc đến thư mục Tin nhắn đang chờ của người dùng nếu người dùng không theo dõi tài khoản đó.

Bạn có thể gửi tin trả lời riêng tư này trong vòng 7 ngày kể từ thời điểm tạo bình luận, nhưng chỉ có thể gửi tin trả lời riêng tư trong quá trình phát trực tiếp đối với Instagram Live. Tin nhắn sẽ chứa một liên kết đến bài viết mà người dùng đã bình luận.

Webhooks

  • Khi lưu trữ tin trên Instagram Live, hãy đảm bảo rằng máy chủ của bạn có thể xử lý lượng thông báo tăng lên do sự kiện webhooks live_comments kích hoạt thông qua API Instagram và rằng hệ thống của bạn có thể phân biệt thông báo live_comments với thông báo comments.
  • Thông báo webhooks comments của API Đồ thị trên Instagram cho bài viết quảng cáo sẽ chứa ID và tiêu đề của quảng cáo. Bạn có thể cần cập nhật máy chủ webhooks của mình để xử lý các trường mới này.

    Hệ thống sẽ trả về ad_idad_title trong đối tượng file phương tiện khi người dùng bình luận về bài viết được quảng cáo trên Instagram hoặc bài viết quảng cáo trên Instagram. Việc này có thể dẫn đến thông báo webhook trùng lặp.

Giới hạn

  • Bạn chỉ có thể gửi một tin nhắn cho người dùng đã bình luận
  • Bạn phải gửi tin nhắn trong vòng 7 ngày kể từ thời điểm tạo bình luận cho bình luận về bài viết, bài viết quảng cáo hoặc thước phim
  • Do tính chất tạm thời của Tin trên Instagram Live, bạn chỉ có thể gửi tin trả lời riêng tư cho các bình luận về Tin trên Instagram Live trong quá trình phát trực tiếp. Ngay khi sự kiện phát trực tiếp kết thúc, bạn không thể gửi tin trả lời riêng tư nữa.
  • Chỉ khi người dùng trả lời tin nhắn riêng tư thì bạn mới có thể tiếp tục cuộc trò chuyện trong khoảng thời gian nhắn tin 24 giờ.
  • Ứng dụng có Quyền truy cập tiêu chuẩn chỉ có thể truy cập dữ liệu của những người có vai trò trong ứng dụng
  • Không hỗ trợ tin trả lời riêng tư cho bình luận trên IGTV
  • API v7.0 trở xuống cần có tính năng Human Agent và Thẻ tin nhắn Human Agent thì mới gửi được tin trả lời riêng tư

Trước khi bạn bắt đầu

Hướng dẫn này giả định rằng bạn đã đọc phần Tổng quan về nền tảng MessengerTổng quan về tính năng Nhắn tin trên Instagram, cũng như triển khai các thành phần cần thiết.

Bạn sẽ cần có:

  • ID Trang Facebook liên kết với tài khoản Công việc trên Instagram
  • ID bình luận của người dùng mà bạn sẽ gửi tin trả lời riêng tư. Bạn có thể lấy ID này từ webhook comments trên Instagram đối với bài viết, bài viết quảng cáo, thước phim và webhook live_comments trên Instagram đối với tin trực tiếp (khuyên dùng để tránh bị giới hạn tốc độ) hoặc từ lệnh gọi API đến điểm cuối /page/feed
  • Quyền instagram_manage_commentspages_messaging, được lấy qua phương thức Đăng nhập bằng Facebook
  • Mã truy cập Trang do người dùng có thể thực hiện tác vụ MESSAGING trên Trang Facebook liên kết với tài khoản Công việc trên Instagram của bạn yêu cầu
  • Tính năng Human Agent
  • Quyền truy cập nâng cao

Gửi tin trả lời riêng tư

Để gửi tin trả lời riêng tư cho người dùng đã bình luận về bài viết, thước phim hoặc tin trực tiếp của bạn, hãy gửi yêu cầu POST đến điểm cuối /PAGE-ID/messages, trong đó thông số recipient chứa ID bình luận và thông số message chứa văn bản bạn muốn gửi.

Được định dạng để dễ đọc.
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
  }
);

Nếu thành công, ứng dụng của bạn sẽ nhận được phản hồi sau đây:

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

Xem thêm

Hỗ trợ nhà phát triển