как получить ответ webhooks при выполнении действий через API - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь интегрировать URBAN PIPER API в мою систему POS. Этим я мог добавить детали к приборной панели. После добавления деталей есть обратный вызов, который должен быть перенаправлен в мою систему POS с ответом, указывающим добавленные детали. Нормальный ответ получается, но мне нужен также ответ webhook. Я не могу ответить на них, потому что я не знаю, где вызвать URL или где разместить функцию.

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://your-callback-url.com",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>"{\n    \"reference\": 
\"c3dc80c67f0a4fb69f2c7bc2048b9f93\", \n    \"stats\": {\n        
\"created\": 2, \n        \"errors\": 0, \n        \"updated\": 0\n    }, 
\n    \"stores\": [\n        {\n            \"active\": true, \n            
\"address\": \"2nd Cross 5th Main\", \n            \"city\": 
\"Bangalore\", \n            \"contact_phone\": \"9999999999\", \n            
\"excluded_platforms\": [\n                \"zomato\", \n                
\"swiggy\"\n            ], \n            \"geo_latitude\": 12.9354922, \n            
\"geo_longitude\": 77.6146828, \n            \"hide_from_ui\": false, \n            
\"min_delivery_time\": 1800, \n            \"min_order_value\": 0, \n            
\"min_pickup_time\": 900, \n            \"name\": \"Koramanagala\", \n            
\"notification_emails\": [\n                \"xyz@mai.com\", \n                
\"bc@m.com\"\n            ], \n            \"notification_phones\": [\n                
\"+91999999999\", \n                \"+91999999999\"\n            ], \n            
\"ordering_enabled\": true, \n            \"ref_id\": \"STORE_POS_ID_1\", 
\n            \"timings\": [\n                {\n                    
\"day\": \"monday\", \n                    \"slots\": [\n                        
{\n                            \"end_time\": \"22:30:00\", \n                            
\"start_time\": \"10:00:00\"\n                        }\n                    
]\n                }, \n                {\n                    \"day\": 
\"tuesday\", \n                    \"slots\": [\n                        
{\n                            \"end_time\": \"22:30:00\", \n                            
\"start_time\": \"10:00:00\"\n                        }\n                    
]\n                }\n            ], \n            \"translations\": [], 
\n            \"upipr_status\": {\n                \"action\": \"A\", \n                
\"error\": false, \n                \"id\": 6907\n            }, \n            
\"zip_codes\": [\n                \"560034\"\n            ]\n        }, \n        
{\n            \"active\": true, \n            \"address\": \"Sector 21, D 
- block\", \n            \"city\": \"delhi\", \n            
\"contact_phone\": \"+919999999999\", \n            
\"excluded_platforms\": [\n                \"zomato\", \n                
\"swiggy\"\n            ], \n            \"geo_latitude\": 28.6289332, \n            
\"geo_longitude\": 77.2065322, \n            \"hide_from_ui\": false, \n            
\"min_delivery_time\": 1800, \n            \"min_order_value\": 0, \n            
\"min_pickup_time\": 900, \n            \"name\": \"Connaught Place\", \n            
\"notification_emails\": [\n                \"EFG@mail.com\", \n                
\"LMN@mail.com\"\n            ], \n            \"notification_phones\": 
[\n                \"+919999999999\", \n                
\"+919999999999\"\n            ], \n            \"ordering_enabled\": 
true, \n            \"ref_id\": \"STORE_POS_ID_2\", \n            
\"timings\": [\n                {\n                    \"day\": 
\"wednesday\", \n                    \"slots\": [\n                        
{\n                            \"end_time\": \"22:30:00\", \n                            
\"start_time\": \"10:00:00\"\n                        }\n                    
]\n                }, \n                {\n                    \"day\": 
\"thursday\", \n                    \"slots\": [\n                        
{\n                            \"end_time\": \"22:30:00\", \n                            
\"start_time\": \"10:00:00\"\n                        }\n                    
]\n                }\n            ], \n            \"translations\": [\n                
{\n                    \"language\": \"fr\", \n                    
\"name\": \"...\"\n                }\n            ], \n            
\"upipr_status\": {\n                \"action\": \"A\", \n                
\"error\": false, \n                \"id\": 6908\n            }, \n            
\"zip_codes\": [\n                \"110001\"\n            ]\n        }\n    
]\n}",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
?>

Выше приведен код, предоставленный URBAN PIPER. Я не знаю, как вызвать эту функцию.

...