static callSubscriptionsAPI()

in loginconnect_directintegrator/services/graph-api.js [74:114]


  static callSubscriptionsAPI(customFields) {
    // Send the HTTP request to the Subscriptions Edge to configure your webhook
    // You can use the Graph API's /{app-id}/subscriptions edge to configure and
    // manage your app's Webhooks product
    // https://developers.facebook.com/docs/graph-api/webhooks/subscriptions-edge
    console.log(
      `Setting app ${config.appId} callback url to ${config.webhookUrl}`
    );

    let fields =
      "messages, messaging_postbacks, messaging_optins, \
        message_deliveries, messaging_referrals";

    if (customFields !== undefined) {
      fields = fields + ", " + customFields;
    }

    console.log(fields);

    request(
      {
        uri: `${config.mPlatfom}/${config.appId}/subscriptions`,
        qs: {
          access_token: config.appId + "|" + config.appSecret,
          object: "page",
          callback_url: config.webhookUrl,
          verify_token: config.verifyToken,
          fields: fields,
          include_values: "true"
        },
        method: "POST"
      },
      (error, _res, body) => {
        if (!error) {
          console.log("Request sent:", body);
        } else {
          console.error("Unable to send message:", error);
        }
      }
    );
  }