payload, "set", $event); } public function get() { publish($this, $this->payload, "get", $event); } } class ranges { public $start; //datetime public $end; //datetime } class event { public $ieeeAddress; public $topic; public $param; public $value; public $device; public $published; public $dateTimeEvent; // datetime : next occurence for recurrent event public $startDatetime; public $stopDatetime; public $recurrenceInterval; // interval : for recurrent event public $exceptionInterval; // array of object ranges } class interval { public $startDate; public $endDate; } ?>