Wiki Connect
  • RSS Feed

Last modified on 29.11.2013 13:44 by User.

Tags:

Wiki Connect

Struktura databáze ConnectSubscriptions

DB tabulka CoursesCache Poznámky
ID  
CourseId (scoid) SCO ID kurzu v Connectu
CourseName Název kurzu z Connectu
CourseUrl relativní url ke kurzu v Connectu
IsCurr true/false (pokud je obsah curriculum, nastavíme na true, jinak false)
   
 
 
DB tabulka Subscriptions Poznámky
   
ID Interní ID
CourseId (scoid) SCO ID kurzu z Connectu
CourseName název kurzu z API
CourseUrl relativní url kurzu z API
DateCourseDeadline datum, do kdy má dotyčný dokončit kurz
SapId SAP číslo zaměstnance (slouží zároveň jako přihlašovací jméno)
ConnectId  (principal ID uživatele - musíme si vytáhnout z API)
Jmeno Jméno uživatele
Prijmeni Příjmení uživatele
MissingCounter  (zvyšuje se o 1,  když dotyčný není ve statusu Finished a zároveň chybí v CSV, pokud v aktuálně zpracovávaném CSV je resetuje se na 0)
Email
EmailManager email nadřízeného
Invitations (počet odeslaných pozvánek, budeme zvyšovat od nuly)
Warnings počet odeslaných upomínek
StatusID [New, Subscribed, Finished] status zapsaání k danému kurzu
DateCreated datum zípisu
DateFinished datum dokončení (vyplňuje se po dokončení kurzu v Connectu)
FinishedOk (boolean) dokončeno úspěšně (true/false). Pokud je True, měly by být k dispozici i hodnoty Certificate Number, Score, Date Taken apod.
FinishedStatus (string) status dokončení (přebírá hodnoty z Connectu)
CertificateNumber číslo certifikátu (dostupné po dokončení kurzu)
Score dosažené skóre
MaxScore maximální skóre testu
DateTaken datum absolvování z API 5
TimeTaken délka, za jakou byl kurz absolvován
ResultsXml  
Sent2Sap (výchozí false)  
DateSent2Sap  
   
   
 

Použitá API volání

 
1. Zjištění principal ID uživatele
permissions-update
 
/api/xml?action=principal-list&filter-login=ConnectAdmin
 
filter-login=login dané osoby (v našem případě SAP ID) 
 

	
<results>
<status code="ok"/>
<principal-list>
<principal principal-id="1143307186" account-id="956581214" type="user" has-children="false" is-primary="false" is-hidden="false" training-group-id="">
<name>Admin Admin</name>
<login>ConnectAdmin</login>
<email>standa@digitalmedia.cz</email>
<display-uid>ConnectAdmin</display-uid>
</principal>
</principal-list>
</results>
 
 
2. Zapsání uživatele do kurzu
permissions-update
 
/api/xml?action=permissions-update&acl-id=1150361025&principal-id=1137709813&permission-id=view
 
acl-id=SCO našeho kurzu či obsahu 
principal-id=principal id uživatele nebo skupiny
 
<results>
    <status code="ok"/>
</results>

 

3. odebrání uživatele z kurzu
permissions-update
 
/api/xml?action=permissions-update&acl-id=1150361025&principal-id=1137709813&permission-id=denied
 
acl-id=SCO našeho kurzu či obsahu 
principal-id=principal id uživatele nebo skupiny
 
<results>
<status code="ok"/>
</results>
 
 
4. informace o kurzu (název, relativní URL a sco-id)
sco-info
 
/api/xml?action=sco-info&sco-id=integer
 
sco-id=SCO našeho kurzu či obsahu 
 
<results>
<status code="ok"/>
<sco account-id="956581214" disabled="" display-seq="0" folder-id="1143213093" icon="course" lang="en" max-retries="" sco-id="1151782977" source-sco-id="1095170519" type="content" version="1">
<date-begin>2013-03-12T22:45:00.000-12:00</date-begin>
<date-created>2013-03-12T22:47:46.457-12:00</date-created>
<date-end>2014-03-12T22:45:00.000-12:00</date-end>
<date-modified>2013-03-12T22:48:03.753-12:00</date-modified>
<name>ZarovkyCRS</name>
<url-path>/p2dgus7qyt8/</url-path>
<passing-score>24</passing-score>
<duration>39431.0</duration>
<section-count>6</section-count>
<max-score>30</max-score>
<update-linked-item>true</update-linked-item>
</sco>
<seminar-session-expiry-info>
<seminar-session-expired>false</seminar-session-expired>
</seminar-session-expiry-info>
<source-sco>
<source-sco account-id="956581214" disabled="" display-seq="0" folder-id="956274331" icon="producer" lang="en" max-retries="" sco-id="1095170519" source-sco-id="" type="content" version="1">
<date-created>2012-10-17T07:24:40.137-12:00</date-created>
<date-modified>2012-10-17T07:27:02.470-12:00</date-modified>
<name>TestZarovka</name>
<url-path>/p856ov748pa/</url-path>
<update-linked-item>true</update-linked-item>
<duration>39431.0</duration>
<max-score>30</max-score>
<section-count>6</section-count>
<passing-score>24</passing-score>
</source-sco>
</source-sco>
</results>

	
 
nové 15.11.2013
Podle hodnoty v parametru type (zeleně) odlišíme, zda je obsah jeden nebo se jedná o tzv. Curriculum - tedy několik kurzů v jednom balíku:
 
a/ type="content" nebo jiné
b/ type="curriculum"
 
A: type="content" nebo jiné
Pokud je type cokoliv jiného něž Curriculum, zapíšeme do CoursesCache k tomuto kurzu příznak IsCurr = false a jdeme na další krok
 
B: type="curriculum
Pokud je type Curriculum, zapíšeme do CoursesCache k tomuto kurzu příznak IsCurr = true 
 
 
 
5. stav absolvování kurzu uživatelem
report-quiz-takers
 
/api/xml?action=report-quiz-takers&sco-id=1151782977&principal-id=1143307186
 
sco-id=SCO našeho kurzu či obsahu 
principal-id=principal ID uživatele 
 
<results>
<status code="ok"/>
<report-quiz-takers>
<row transcript-id="1315060736" sco-id="1151782977" principal-id="1143307186" status="user-passed" score="30" max-score="30" asset-id="1095162145" permission-id="" attempts="1" time-aicc="29000" time-taken="31823certificate="1315060736" answered-survey="1" version="1">
<name>ZarovkyCRS</name>
<login>ConnectAdmin</login>
<date-created>2013-10-24T01:37:22.260-12:00</date-created>
<principal-name>Admin Admin</principal-name>
<override>false</override>
</row>
</report-quiz-takers>
</results>
 
 
 
Statusy:
  • not-attempted (uživatel se na kurz ještě nepodíval)
  • incomplete (uživatel se na kurz již díval, ale zatím ho nedokončil)
  • user-failed (kurz s testem - dokončeno neúspěšně)
  • user-passed (kurz s testem, dokončeno úspěšně - vygeneruje se i certifikát)
  • completed (kurz bez testu - dokončeno úspěšně - vygeneruje se certifikát)
 
Pokud bude status user-passed nebo completed, reportujeme jako úspěšné dokončení kurzu do naší cache a uložíme i tyto hodnoty z XML:
 
  • certificate (číslo certifikátu)
  • attempts (počet pokusů)
  • score
  • max-score
  • date-taken
  • XML s odpověďmi (?  musíme najít API call)
 
 
*********************************************************
Testy a ostatní info
 
API pro práci s Curriculy:

 

/api/xml?action=report-curriculum-taker&user-id=1143307186&sco-id=1146991829

<results>
<status code="ok"/>
<report-curriculum-taker>
<sco transcript-id="1334330497" path-type="prereq-none" asset-id="1081605305" sco-id="1146965579" depth="1" folder-id="1146991829" type="link" icon="course" lang="en" max-retries="" source-sco-id="1147009138" source-sco-type="0" status="incomplete" score="0" certificate="" max-score="0" attempts="1">
<access>access-open</access>
<credit-granted>false</credit-granted>
<name>SUPER</name>
<url-path>/l40b5wqxv3i/</url-path>
<date-created>2013-11-15T04:38:34.920-12:00</date-created>
<date-modified>2013-02-28T22:14:26.757-12:00</date-modified>
<date-taken>2013-11-15T04:38:34.920-12:00</date-taken>
<override>false</override>
</sco>
<sco transcript-id="" path-type="prereq-none" asset-id="" sco-id="1333948362" depth="1" folder-id="1146991829" type="link" icon="course" lang="en" max-retries="" source-sco-id="1333948361" source-sco-type="0" status="not-attempted" score="" certificate="" max-score="" attempts="0">
<access>access-blocked</access>
<credit-granted>false</credit-granted>
<name>Obrazek-dinosaurus</name>
<url-path>/l3eozhidwdr/</url-path>
<description>Obrázek dinosaura</description>
<date-modified>2013-11-14T22:38:43.373-12:00</date-modified>
<override>false</override>
</sco>
<sco transcript-id="1146973198" path-type="prereq-none" asset-id="" sco-id="1146991829" depth="0" folder-id="1143213093" type="curriculum" icon="curriculum" lang="en" max-retries="" source-sco-id=""source-sco-type="" status="completed" score="0" certificate="1146973198" max-score="0" attempts="1">
<access>access-open</access>
<credit-granted>false</credit-granted>
<name>API</name>
<url-path>/p2j50v1dzs1/</url-path>
<date-begin>2013-02-28T21:45:00.000-12:00</date-begin>
<date-end>2014-02-28T21:45:00.000-12:00</date-end>
<date-created>2013-02-28T22:03:33.103-12:00</date-created>
<date-modified>2013-02-28T21:45:24.137-12:00</date-modified>
<date-taken>2013-02-28T22:03:33.103-12:00</date-taken>
<override>false</override>
</sco>
</report-curriculum-taker>
</results>
 
/api/xml?action=sco-contents&sco-id=integer
<results>
<status code="ok"/>
<scos>
<sco sco-id="1333948362" source-sco-id="1333948361" folder-id="1146991829" type="link" icon="course" display-seq="1" duration="" is-folder="0">
<name>Obrazek-dinosaurus</name>
<description>Obrázek dinosaura</description>
<url-path>/l3eozhidwdr/</url-path>
<date-created>2013-11-14T22:38:43.373-12:00</date-created>
<date-modified>2013-11-14T22:38:43.373-12:00</date-modified>
<is-seminar>false</is-seminar>
</sco>
<sco sco-id="1146965579" source-sco-id="1147009138" folder-id="1146991829" type="link" icon="course" display-seq="0" duration="" is-folder="0">
<name>SUPER</name>
<url-path>/l40b5wqxv3i/</url-path>
<date-created>2013-02-28T22:14:26.757-12:00</date-created>
<date-modified>2013-02-28T22:14:26.757-12:00</date-modified>
<is-seminar>false</is-seminar>
</sco>
</scos>
</results>