/** * Gets meeting or content URL * * With SWITCHaai it's not possible to get the meeting url by folder_id! Because we have no permissions to do this! * * @param String $sco_id Meeting or content id * @param String $folder_id Parent folder id * @param String $session Session id * @param String $type Used for SWITCHaai meeting|content|... * @return String Meeting or content URL, or NULL if something is wrong */ public function getURL($sco_id, $folder_id, $session, $type) { global $ilLog; switch ($type) { case 'meeting': $url = $this->getApiUrl(array('action' => 'report-my-meetings', 'session' => $session)); $xml = $this->getCachedSessionCall($url); if ($xml->status['code'] == "ok") { foreach ($xml->{'my-meetings'}->meeting as $meeting) { if ($meeting['sco-id'] == $sco_id) { return (string) $meeting->{'url-path'}; } } } $ilLog->write('AdobeConnect getURL Request: ' . $url); $ilLog->write('AdobeConnect getURL Response: ' . $xml->asXML()); return NULL; break; default: return parent::getURL($sco_id, $folder_id, $session); break; } }
/** * Reads records from Adobe Connect server */ public function readRecords() { $session = $this->xmlApi->getBreezeSession(); if ($session != NULL && $this->xmlApi->login($this->adminLogin, $this->adminPass, $session)) { $ids = $this->xmlApi->getRecordIds($this->sco_id, $session); foreach ($ids as $id) { $date_created = $this->xmlApi->getDateCreated($id, $this->sco_id, $session); $attributes_records = array("sco-id" => $id, "name" => $this->xmlApi->getName($id, $this->getScoId(), $session), "url" => $this->xmlApi->getURL($id, $this->sco_id, $session), "date-created" => new ilDateTime(substr($date_created, 0, 10) . " " . substr($date_created, 11, 8), IL_CAL_DATETIME), "duration" => $this->xmlApi->getDuration($id, $this->sco_id, $session), "description" => $this->xmlApi->getDescription($id, $this->sco_id, $session), "type" => "record"); $this->contents->addContent($attributes_records); } return true; } else { return false; } }