Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function start_exam_auth($verb = 'GET', $canonical_path = '', $content_length = 0) {
- $result = $this->start_exam_id . ":";
- $StringToSign = strtoupper($verb) . ' ' . strtolower($canonical_path) . ' ' . str_replace('+0000','GMT',gmdate(DATE_RFC1123)) .' '. $content_length;
- $hash = hash_hmac('sha256', utf8_encode($StringToSign), $this->start_exam_secret_key, true);
- $Signature = $result . base64_encode($hash);
- return $Signature;
- }
- function start_exam_register() {
- $method = "POST";
- $xml = '<?xml version="1.0" encoding="utf-16"?>
- <RegisterParticipantsQuery xmlns="https://api.startexam.com/v1/xml">
- <Center>at19629</Center>
- <ValidFrom>2015-01-16T00:00:00Z</ValidFrom>
- <ValidTill>2016-01-31T23:59:59Z</ValidTill>
- <Test>2eca1305-a99f-4f43-bdb9-ba93e5ca86af</Test>
- <Participant>
- <Data key="FirstName" value="John" />
- <Data key="LastName" value="Lennon" />
- <Data key="Email" value="lennon@gmail.com" />
- <Data key="f1094d46-fe61-49fc-89a7-d534e9a2c013" value="000000000" />
- </Participant>
- <Participant>
- <Data key="FirstName" value="Paul" />
- <Data key="LastName" value="McCartney" />
- <Data key="Email" value="paulmccartney@hotmail.com" />
- <Data key="f1094d46-fe61-49fc-89a7-d534e9a2c013" value="999999999" />
- </Participant>
- </RegisterParticipantsQuery>';
- //----------------------
- $opts = array(
- 'http' => array(
- 'Method' => $method,
- 'Header' => 'Authorization: SharedKey '.$this->start_exam_auth($method, '/v1/participants', strlen($xml)). "\r\n".
- 'Accept: application/json; charset=utf-8'. "\r\n".
- 'Content-Length: '.strlen($xml). "\r\n".
- 'Date: '.str_replace('+0000','GMT',gmdate(DATE_RFC1123)). "\r\n".
- 'Host: api.startexam.com',
- 'Content' => $xml
- )
- );
- //print_r($opts);
- //exit();
- $context = stream_context_create($opts);
- $result = file_get_contents("https://api.startexam.com/v1/participants", false, $context);
- return $result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement