<?php
//create route to verify whatsapp url
function whatsapp_verify_register_route(){
register_rest_route( 'wpcargo-v1', '/whatsapp', array(
'methods' =>'GET',
'callback' => 'whatsapp_verification',
'show_in_index' => false,
'permission_callback' => '__return_true',
));
}
add_action( 'rest_api_init', 'whatsapp_verify_register_route' );
// Generate callback URL Response
function whatsapp_verification(){
$verify_token = get_option('verify_token') ? get_option('verify_token') : 'whatsapptesttoken123';
$get_params = $_GET;
$error = 'Please check you token and verify again';
if (!empty($get_params)) {
$mode = $get_params["hub_mode"];
$token = $get_params["hub_verify_token"];
$challenge = $get_params["hub_challenge"];
if (!empty($mode) && !empty($token)) {
// Check the mode and token sent are correct
if ($mode === "subscribe" && $token === $verify_token) {
// Respond with 200 OK and challenge token from the request
$http_code = 200;
return $data = intval($challenge);
} else {
// Responds with '403 Forbidden' if verify tokens do not match
$http_code = 403;
}
}
}
return $error;
}
