-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathurldecoder.php
More file actions
41 lines (26 loc) · 8.81 KB
/
Copy pathurldecoder.php
File metadata and controls
41 lines (26 loc) · 8.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
$request1 = 'https://dd1d3ea6.transport.nest.com:9443/v1/subscribe?jsonp=jQuery17109312352163251489_1346199892382&payload=%257B%2522keys%2522%253A%255B%257B%2522key%2522%253A%2522user.95235%2522%252C%2522version%2522%253A-692306766%252C%2522timestamp%2522%253A1345163053000%257D%252C%257B%2522key%2522%253A%2522user_alert_dialog.95235%2522%252C%2522version%2522%253A309440379%252C%2522timestamp%2522%253A1345165243000%257D%252C%257B%2522key%2522%253A%2522user_settings.95235%2522%252C%2522version%2522%253A1774552342%252C%2522timestamp%2522%253A1345163284301%257D%252C%257B%2522key%2522%253A%2522structure.df299080-e801-11e1-aced-1231391ee0b5%2522%252C%2522version%2522%253A1597304755%252C%2522timestamp%2522%253A1346186872000%257D%252C%257B%2522key%2522%253A%2522device.01AA02AB2012002C%2522%252C%2522version%2522%253A2110395182%252C%2522timestamp%2522%253A1346198238000%257D%252C%257B%2522key%2522%253A%2522shared.01AA02AB2012002C%2522%252C%2522version%2522%253A1511296264%252C%2522timestamp%2522%253A1346199287000%257D%252C%257B%2522key%2522%253A%2522schedule.01AA02AB2012002C%2522%252C%2522version%2522%253A-230643720%252C%2522timestamp%2522%253A1346089596000%257D%252C%257B%2522key%2522%253A%2522track.01AA02AB2012002C%2522%252C%2522version%2522%253A-1888764112%252C%2522timestamp%2522%253A1346199893126%257D%252C%257B%2522key%2522%253A%2522energy_latest.01AA02AB2012002C%2522%257D%255D%257D&X-nl-subscribe-timeout=8&_method=POST&X-nl-client-timestamp=1346199894965&X-nl-session-id=134619989298443399928.556755185&X-nl-protocol-version=1&Authorization=Basic+ai5mZWJjODk4NmExNjI5MmI1OTkxY2U1ODFkM2ZmMWYyOTRiYzdkYWZmMTAxODBlN2NjYmExYzk2OGQxYmRjZGZiNzAwODA5NDk1MWI2YjQxYjJiNWZhOTdjZjg1ZGM0NDgyYmJlNDJmYQ%3D%3D';
var_dump('SENT Request: ' . $request1);
$decoded = urldecode(urldecode($request1));
var_dump('SENT URL Decoded Request: ' . $decoded);
$params = explode('&', $decoded);
$paramArray = array();
foreach($params as $param)
{
$pair = explode('=', $param);
$paramArray[$pair[0]] = $pair[1];
}
var_dump('SENT params: ');
var_dump($paramArray);
var_dump('SENT Payload: ');
var_dump(json_decode($paramArray['payload'], true));
var_dump('RETURNED Payload: ');
var_dump(json_decode('{"status":200,"headers":{"X-nl-service-timestamp":1346199988093},"payload":{"tuneups":{"01AA02AB2012002C":{"$version":-1689196263,"$timestamp":1345161585000}},"metadata":{"01AA02AB2012002C":{"$version":-951200053,"$timestamp":1346199893000,"last_connection":1346199893089,"last_ip":"67.246.60.32"}},"track":{"01AA02AB2012002C":{"$version":-1888764112,"$timestamp":1346199893126,"online":true,"last_connection":1346199893126,"last_ip":"67.246.60.32"}},"user_settings":{"95235":{"$version":1774552342,"$timestamp":1345163284301,"email_verified":true,"tos_accepted_version":1319500800000,"receive_marketing_emails":true,"receive_nest_emails":true,"receive_support_emails":true,"max_structures":2,"max_thermostats":10,"max_thermostats_per_structure":10,"tos_minimum_version":1319500800000,"tos_current_version":1319500800000,"lang":"en"}},"structure":{"df299080-e801-11e1-aced-1231391ee0b5":{"$version":1597304755,"$timestamp":1346186872000,"away_timestamp":1346186872,"away":false,"location":"Schenectady, NY","postal_code":"12309","name":"Home","creation_time":1345163053448,"devices":["device.01AA02AB2012002C"],"user":"user.95235","country_code":"US","away_setter":0}},"link":{"01AA02AB2012002C":{"$version":-2006783396,"$timestamp":1345165243000,"structure":"structure.df299080-e801-11e1-aced-1231391ee0b5"}},"device":{"01AA02AB2012002C":{"$version":2110395182,"$timestamp":1346198238000,"heat_pump_comp_threshold":-31.5,"learning_days_completed_cool":12,"local_ip":"192.168.0.167","backplate_bsl_version":"1.1","switch_system_off":false,"away_temperature_high":24.444444444444446,"current_schedule_mode":"COOL","hvac_wires":"Heat,Cool,Fan,Rh","leaf_threshold_cool":24.215973,"fan_cooling_state":false,"leaf":false,"type":"TBD","switch_preconditioning_control":false,"click_sound":"on","away_temperature_low_enabled":true,"fan_mode":"auto","has_x2_heat":false,"rssi":75.0,"heat_pump_comp_threshold_enabled":false,"leaf_away_high":24.215881,"fan_cooling_readiness":"ready","capability_level":2.1,"schedule_learning_reset":false,"temperature_scale":"F","battery_level":3.843,"ob_orientation":"O","hvac_pins":"W1,Y1,Rh,G","away_temperature_high_enabled":true,"range_enable":true,"learning_days_completed_heat":0,"auto_away_enable":true,"lower_safety_temp_enabled":true,"upper_safety_temp_enabled":false,"has_fan":true,"current_humidity":44,"postal_code":"12309","backplate_mono_version":"3.7.3","nlclient_state":"","has_heat_pump":false,"current_version":"2.1","learning_state":"steady","away_temperature_low":15.555555555555557,"auto_away_reset":false,"temperature_lock":false,"time_to_target_training":"training","upper_safety_temp":35.0,"target_time_confidence":0.0,"forced_air":true,"backplate_serial_number":"01BA02AB201200YL","backplate_mono_info":"TFE (BP_DVT) 3.7.3 (ehs@ubuntu) 2012-03-07 10:43:21","leaf_threshold_heat":1000.0,"creation_time":1345161584898,"learning_time":32,"learning_days_completed_range":0,"learning_mode":true,"leaf_schedule_delta":1.109985,"leaf_learning":"ready","has_aux_heat":false,"backplate_bsl_info":"BSL","user_brightness":"medium","leaf_away_low":16.669998,"serial_number":"01AA02AB2012002C","mac_address":"18b43006597e","lower_safety_temp":7.0,"time_to_target":0,"equipment_type":"gas","backplate_model":"Backplate-1.9a","model_version":"Diamond-1.13","heat_pump_aux_threshold_enabled":true,"heat_pump_aux_threshold":10.0}},"schedule":{"01AA02AB2012002C":{"$version":-230643720,"$timestamp":1346089596000,"days":{"3":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}},"2":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}},"1":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}},"0":{"0":{"touched_by":4,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"touched_id":"2012-08-09-0361686-66-195-66-","type":"COOL","touched_at":1345210703}},"6":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}},"5":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}},"4":{"0":{"touched_by":1,"time":0,"touched_tzo":-14400,"entry_type":"setpoint","temp":23.106,"type":"COOL","touched_at":1345179587}}},"schedule_mode":"COOL","name":"Nest Current Schedule","ver":2}},"shared":{"01AA02AB2012002C":{"$version":1511296264,"$timestamp":1346199287000,"auto_away":0,"auto_away_learning":"ready","compressor_lockout_enabled":false,"target_temperature_type":"cool","hvac_heater_state":false,"can_heat":true,"compressor_lockout_timeout":0,"target_temperature_high":24.0,"hvac_aux_heater_state":false,"hvac_heat_x2_state":false,"target_temperature_low":20.0,"target_temperature":23.09956,"hvac_ac_state":true,"hvac_fan_state":true,"target_change_pending":false,"name":"Nest","current_temperature":22.98,"can_cool":true}},"user_alert_dialog":{"95235":{"$version":309440379,"$timestamp":1345165243000,"dialog_id":"confirm-pairing","dialog_data":""}},"user":{"95235":{"$version":-692306766,"$timestamp":1345163053000,"name":"hostetcl@gmail.com","structures":["structure.df299080-e801-11e1-aced-1231391ee0b5"]}}}}', true));
var_dump(urldecode(urldecode('%257B%2522keys%2522%253A%255B%257B%2522key%2522%253A%2522user.95235%2522%252C%2522version%2522%253A-692306766%252C%2522timestamp%2522%253A1345163053000%257D%252C%257B%2522key%2522%253A%2522user_alert_dialog.95235%2522%252C%2522version%2522%253A309440379%252C%2522timestamp%2522%253A1345165243000%257D%252C%257B%2522key%2522%253A%2522user_settings.95235%2522%252C%2522version%2522%253A1774552342%252C%2522timestamp%2522%253A1345163284301%257D%252C%257B%2522key%2522%253A%2522structure.df299080-e801-11e1-aced-1231391ee0b5%2522%252C%2522version%2522%253A1597304755%252C%2522timestamp%2522%253A1346186872000%257D%252C%257B%2522key%2522%253A%2522device.01AA02AB2012002C%2522%252C%2522version%2522%253A15307653%252C%2522timestamp%2522%253A1346207343000%257D%252C%257B%2522key%2522%253A%2522shared.01AA02AB2012002C%2522%252C%2522version%2522%253A-1037798501%252C%2522timestamp%2522%253A1346207496000%257D%252C%257B%2522key%2522%253A%2522schedule.01AA02AB2012002C%2522%252C%2522version%2522%253A-230643720%252C%2522timestamp%2522%253A1346089596000%257D%252C%257B%2522key%2522%253A%2522track.01AA02AB2012002C%2522%252C%2522timestamp%2522%253A1346207649304%252C%2522version%2522%253A1007791575%257D%252C%257B%2522key%2522%253A%2522energy_latest.01AA02AB2012002C%2522%252C%2522timestamp%2522%253A1346130611291%252C%2522version%2522%253A1%257D%255D%257D')));
$greet = function($name)
{
printf("Hello %s\r\n", $name);
};
$greet('World');
$greet('PHP');
?>