<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.inlogic.dk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mej</id>
	<title>UmsWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.inlogic.dk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mej"/>
	<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php/Special:Contributions/Mej"/>
	<updated>2026-04-30T09:44:14Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4721</id>
		<title>InLogic SMS Gateway</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4721"/>
		<updated>2023-03-17T10:49:29Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Update/Install USB modeswitch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Important==&lt;br /&gt;
To be able to send SMS, the inLogic SMS Gateway requires GSM modems with USB interface. We recommend &amp;quot;HUAWEI LTE USB Stick Model: E3372&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Hardware Compatibility List===&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3531/specs/ Huawei E3531]&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3372/ Huawei E3372] (inLogic&#039;s choice)&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/lk/mobile-broadband/dongles/features/e3131-lk.htm Huawei E3131i]&lt;br /&gt;
&lt;br /&gt;
[http://www.tp-link.com/la/products/details/cat-5090_MA260.html TP-Link MA260]&lt;br /&gt;
&lt;br /&gt;
==Network Port Openings==&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from server to gateway. TCP port opening where UMS sms sever service run.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|SSH access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from gateway to server.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|80&lt;br /&gt;
|HTTP access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Prepare Modem==&lt;br /&gt;
{|&lt;br /&gt;
![[File:20180516 104258-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
!Plug-in Modems&lt;br /&gt;
&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|[[File:20180516 104358-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
|&#039;&#039;&#039;Plug-in Ethernet cable&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Plug-in power cable&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==System Login==&lt;br /&gt;
Once the gateway is [[#Prepare Modem|prepared]] and booted, open a browser and go to http://192.168.1.2. Login through the &#039;Login&#039; button in the top right corner. &lt;br /&gt;
[[File:Main Login button.png|none|thumb|1240x1240px]]&lt;br /&gt;
You will now see a login box where you can log in with with USERNAME: admin and PASSWORD: admin.&lt;br /&gt;
[[File:Login.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Main Page==&lt;br /&gt;
After logging in, the system info page appears. This page shows the gateway&#039;s status.[[File:Main.png|none|thumb|1240x1240px]]&lt;br /&gt;
To open the menu, click on this icon:  [[File:Foxbox menu button.png|frameless|23x23px]]&lt;br /&gt;
[[File:Main with menu.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Network Configuration==&lt;br /&gt;
Click on menu tab &#039;Network config&#039;.&lt;br /&gt;
&lt;br /&gt;
Change the IP settings and press &#039;Save Configuration&#039;. When you have saved your settings, [[InLogic SMS Gateway#Reboot|Reboot]] the gateway as instructed below in &#039;Modem Settings&#039;.&lt;br /&gt;
[[File:Network Config.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Modem Settings==&lt;br /&gt;
&lt;br /&gt;
===Hostname and Frontend Settings===&lt;br /&gt;
&lt;br /&gt;
====Hostname====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Set &#039;Modem Hostname&#039; as FQDN and save your changes. Your modem will now restart.[[File:Modem Settings Hostname.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
====Frontend====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
If redirect is enable on iis set (HTTPS) &lt;br /&gt;
&lt;br /&gt;
Change &#039;FrontEnd Address&#039; to fit your configuration and save your settings.[[File:Modem Settings Frontend.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Certificate Settings (https)===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Click &#039;Choose File&#039; and choose a .pfx certificate from your computer.&lt;br /&gt;
&lt;br /&gt;
Entera a .pfx certificate password in the &#039;Certificate Password&#039; field and click &#039;Save&#039;.&lt;br /&gt;
[[File:Modem Settings Certificate.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===User Settings===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
The default admin user password is &#039;admin&#039;. To change the default admin user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field admin.&lt;br /&gt;
&lt;br /&gt;
The default sendsms user password is &#039;sendsms&#039;. To change the default sendsms user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field sendsms.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to confirm the password change.&lt;br /&gt;
[[File:Modem Settings User.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Control Panel==&lt;br /&gt;
Open the menu and go to &#039;Control Panel&#039;. &lt;br /&gt;
&lt;br /&gt;
Here, you can see staus, as well as turn on and off, the SMS Engine.[[File:Control Panel.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==SMS==&lt;br /&gt;
&lt;br /&gt;
===Inbox===&lt;br /&gt;
To see a log for incoming messages, open the menu and go to &#039;Inbox&#039;. &lt;br /&gt;
[[File:Inbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Outbox===&lt;br /&gt;
To see a log for outgoing messages, open the menu and go to &#039;Outbox&#039;. &lt;br /&gt;
[[File:Outbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Failed===&lt;br /&gt;
To see a log for failed messages, open the menu and go to &#039;Failed&#039;. &lt;br /&gt;
[[File:Failed.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Write New===&lt;br /&gt;
To write a new SMS, open the menu and go to &#039;Write New&#039;.&lt;br /&gt;
&lt;br /&gt;
Choose the modem you wish to send your message from in the drop down menu &#039;Outgoing channel&#039;. If left blank, the system will choose the first available modem.&lt;br /&gt;
&lt;br /&gt;
Enter the phone number you wish to send your SMS to in the &#039;To&#039; field. Pleas note that international prefix is mandatory.&lt;br /&gt;
&lt;br /&gt;
Write your message in the &#039;Message&#039; field.&lt;br /&gt;
&lt;br /&gt;
When you have finished, click &#039;Send&#039;.[[File:Write New guide.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Time Zone Settings==&lt;br /&gt;
Open the menu and go to &#039;Time Zone Settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The NTP &amp;amp; Time Zone Settings is by default set to enable external NTP. &lt;br /&gt;
&lt;br /&gt;
For internal NTP, uncheck the &#039;Enable External NTP&#039; box and write a list of NTP servers separated by comma, in the &#039;Internal NTP&#039; field.&lt;br /&gt;
&lt;br /&gt;
To change your time zone, choose a time zone from the &#039;Time Zone&#039; drop down menu.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to change your settings.&lt;br /&gt;
[[File:Time Zone Settings.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Tools==&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
===Shell===&lt;br /&gt;
Use &#039;in browser&#039; shell to change advanced settings. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;u style=&amp;quot;color:red;&amp;quot;&amp;gt;Use with caution!&amp;lt;/u&amp;gt; Please note that if you make any changes without consulting us first, support will be charged accordingly with our hourly rate.&lt;br /&gt;
[[File:Modem Settings Shell.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Root Settings===&lt;br /&gt;
Change of root password require putty.exe. Default root password can be requested from inlogic. &lt;br /&gt;
&lt;br /&gt;
Use Putty.exe to connect to Inlogic Gateway, run command &#039;&#039;(sudo passwd root&#039;&#039;) and follow the instructions on screen.&lt;br /&gt;
[[File:Modem Settings Root.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Additional information==&lt;br /&gt;
Additional information about the product, users, and programs used in the tutorial.&lt;br /&gt;
====Usernames and passwords====&lt;br /&gt;
====SSH Clients====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of SSH Clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|PuTTy&lt;br /&gt;
|https://www.putty.org/&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Open source FTP Client====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of FTP clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|WinSCP&lt;br /&gt;
|https://winscp.net/eng/index.php&lt;br /&gt;
|-&lt;br /&gt;
|FileZilla&lt;br /&gt;
|https://filezilla-project.org/&lt;br /&gt;
|}&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
===Linux commands===&lt;br /&gt;
&lt;br /&gt;
==== Update ubuntu ====&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
&lt;br /&gt;
====Update inLogic files and Database from command line====&lt;br /&gt;
 rm -rf /mnt/Update/update&lt;br /&gt;
 wget --no-check-certificate &amp;lt;nowiki&amp;gt;https://downloads.inlogic.dk/inlogicgatewaymodem/Update.zip&amp;lt;/nowiki&amp;gt; -O /mnt/Update/Update.zip&lt;br /&gt;
 unzip /mnt/Update/Update.zip -d /mnt/Update/update&lt;br /&gt;
 chmod 777 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Commands&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Commands shows Status of Apache (systemctl status apache2.service)&lt;br /&gt;
*update system ( apt-get udate  apt-get update)&lt;br /&gt;
&lt;br /&gt;
====Update/Install USB modeswitch====&lt;br /&gt;
 sudo wget &amp;lt;nowiki&amp;gt;https://www.draisberghof.de/usb_modeswitch/usb-modeswitch-2.6.0.tar.bz2&amp;lt;/nowiki&amp;gt; -O /tmp/usb-modeswitch-2.6.0.tar.bz2&lt;br /&gt;
 sudo tar xvf /tmp/usb-modeswitch-2.6.0.tar.bz2 -C /tmp&lt;br /&gt;
 sudo wget &amp;lt;nowiki&amp;gt;https://downloads.inlogic.dk/inlogicgatewaymodem/usb_modeswitch/usb_modeswitch_dispatcher.tcl&amp;lt;/nowiki&amp;gt; -O /tmp/usb-modeswitch-2.6.0/usb_modeswitch_dispatcher.tcl&lt;br /&gt;
 cd /tmp/usb-modeswitch-2.6.0&lt;br /&gt;
 make;make install&lt;br /&gt;
&lt;br /&gt;
====Update ubuntu from 18 to 20====&lt;br /&gt;
Use default answers when running these commands.&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list.d/odroid.list&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
 sudo apt-get dist-upgrade -y&lt;br /&gt;
&lt;br /&gt;
====How to change IP settings====&lt;br /&gt;
&lt;br /&gt;
*nano /etc/netplan/01-netconf.yaml&lt;br /&gt;
*reboot&lt;br /&gt;
&lt;br /&gt;
====Logs====&lt;br /&gt;
&lt;br /&gt;
=====Log viewers=====&lt;br /&gt;
&lt;br /&gt;
*tail&lt;br /&gt;
*tail -f (this is similar to using cmtrace in windows)&lt;br /&gt;
*nano&lt;br /&gt;
*vim&lt;br /&gt;
&lt;br /&gt;
=====Log files=====&lt;br /&gt;
&lt;br /&gt;
*/var/log/smstools/smsd.log&lt;br /&gt;
*/var/log/syslog&lt;br /&gt;
*/var/log/mysql/error.log&lt;br /&gt;
*/var/log/apache2/error.log&lt;br /&gt;
&lt;br /&gt;
=====See USB devices=====&lt;br /&gt;
&lt;br /&gt;
*lsusb&lt;br /&gt;
&lt;br /&gt;
==Rest API==&lt;br /&gt;
Theres a REST API to use, to send messages from the inLogic SMS Gateway.&lt;br /&gt;
&lt;br /&gt;
===Send SMS===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|source/send_sms.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
To&lt;br /&gt;
&lt;br /&gt;
Message&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns ID of send SMS&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|source/send_sms.php?username=smsuser&amp;amp;pwd=testpassword123&amp;amp;from=ums&amp;amp;to=22446688&amp;amp;message=Dette er en test besked&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST &amp;lt;nowiki&amp;gt;https://modem.ums.dk/source/send_sms.php?username=&amp;lt;/nowiki&amp;gt;&amp;lt;USERNAME&amp;gt;&amp;amp;pwd=&amp;lt;PASSWORD&amp;gt;&amp;amp;from=ums&amp;amp;to=&amp;lt;RECIEPIENT&amp;gt;&amp;amp;message=&amp;lt;MESSAGE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Check SMS Status===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|webservice/getstatus.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
ID&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns status of send SMS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ScheduledToSend = -1&lt;br /&gt;
&lt;br /&gt;
OK = 0&lt;br /&gt;
&lt;br /&gt;
OK_WithError = 1&lt;br /&gt;
&lt;br /&gt;
InUMSQueue = 2&lt;br /&gt;
&lt;br /&gt;
InModemQueue = 3&lt;br /&gt;
&lt;br /&gt;
Failed = 4&lt;br /&gt;
&lt;br /&gt;
IDNotFound = 5&lt;br /&gt;
&lt;br /&gt;
SentViaMail = 100&lt;br /&gt;
&lt;br /&gt;
FailedSendingViaMail = 101&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|webservice/getstatus.php?=smsuser&amp;amp;pwd=testpassword123&amp;amp;id=1&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST https://modem.ums.dk/webservice/getstatus.php?username=&amp;amp;#x3C;USERNAME&amp;amp;#x3E;&amp;amp;pwd=&amp;amp;#x3C;PASSWORD&amp;amp;#x3E;&amp;amp;id=&amp;amp;#x3C;ID&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4720</id>
		<title>InLogic SMS Gateway</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4720"/>
		<updated>2023-03-17T10:48:54Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Update USB modeswitch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Important==&lt;br /&gt;
To be able to send SMS, the inLogic SMS Gateway requires GSM modems with USB interface. We recommend &amp;quot;HUAWEI LTE USB Stick Model: E3372&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Hardware Compatibility List===&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3531/specs/ Huawei E3531]&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3372/ Huawei E3372] (inLogic&#039;s choice)&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/lk/mobile-broadband/dongles/features/e3131-lk.htm Huawei E3131i]&lt;br /&gt;
&lt;br /&gt;
[http://www.tp-link.com/la/products/details/cat-5090_MA260.html TP-Link MA260]&lt;br /&gt;
&lt;br /&gt;
==Network Port Openings==&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from server to gateway. TCP port opening where UMS sms sever service run.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|SSH access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from gateway to server.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|80&lt;br /&gt;
|HTTP access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Prepare Modem==&lt;br /&gt;
{|&lt;br /&gt;
![[File:20180516 104258-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
!Plug-in Modems&lt;br /&gt;
&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|[[File:20180516 104358-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
|&#039;&#039;&#039;Plug-in Ethernet cable&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Plug-in power cable&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==System Login==&lt;br /&gt;
Once the gateway is [[#Prepare Modem|prepared]] and booted, open a browser and go to http://192.168.1.2. Login through the &#039;Login&#039; button in the top right corner. &lt;br /&gt;
[[File:Main Login button.png|none|thumb|1240x1240px]]&lt;br /&gt;
You will now see a login box where you can log in with with USERNAME: admin and PASSWORD: admin.&lt;br /&gt;
[[File:Login.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Main Page==&lt;br /&gt;
After logging in, the system info page appears. This page shows the gateway&#039;s status.[[File:Main.png|none|thumb|1240x1240px]]&lt;br /&gt;
To open the menu, click on this icon:  [[File:Foxbox menu button.png|frameless|23x23px]]&lt;br /&gt;
[[File:Main with menu.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Network Configuration==&lt;br /&gt;
Click on menu tab &#039;Network config&#039;.&lt;br /&gt;
&lt;br /&gt;
Change the IP settings and press &#039;Save Configuration&#039;. When you have saved your settings, [[InLogic SMS Gateway#Reboot|Reboot]] the gateway as instructed below in &#039;Modem Settings&#039;.&lt;br /&gt;
[[File:Network Config.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Modem Settings==&lt;br /&gt;
&lt;br /&gt;
===Hostname and Frontend Settings===&lt;br /&gt;
&lt;br /&gt;
====Hostname====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Set &#039;Modem Hostname&#039; as FQDN and save your changes. Your modem will now restart.[[File:Modem Settings Hostname.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
====Frontend====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
If redirect is enable on iis set (HTTPS) &lt;br /&gt;
&lt;br /&gt;
Change &#039;FrontEnd Address&#039; to fit your configuration and save your settings.[[File:Modem Settings Frontend.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Certificate Settings (https)===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Click &#039;Choose File&#039; and choose a .pfx certificate from your computer.&lt;br /&gt;
&lt;br /&gt;
Entera a .pfx certificate password in the &#039;Certificate Password&#039; field and click &#039;Save&#039;.&lt;br /&gt;
[[File:Modem Settings Certificate.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===User Settings===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
The default admin user password is &#039;admin&#039;. To change the default admin user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field admin.&lt;br /&gt;
&lt;br /&gt;
The default sendsms user password is &#039;sendsms&#039;. To change the default sendsms user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field sendsms.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to confirm the password change.&lt;br /&gt;
[[File:Modem Settings User.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Control Panel==&lt;br /&gt;
Open the menu and go to &#039;Control Panel&#039;. &lt;br /&gt;
&lt;br /&gt;
Here, you can see staus, as well as turn on and off, the SMS Engine.[[File:Control Panel.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==SMS==&lt;br /&gt;
&lt;br /&gt;
===Inbox===&lt;br /&gt;
To see a log for incoming messages, open the menu and go to &#039;Inbox&#039;. &lt;br /&gt;
[[File:Inbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Outbox===&lt;br /&gt;
To see a log for outgoing messages, open the menu and go to &#039;Outbox&#039;. &lt;br /&gt;
[[File:Outbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Failed===&lt;br /&gt;
To see a log for failed messages, open the menu and go to &#039;Failed&#039;. &lt;br /&gt;
[[File:Failed.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Write New===&lt;br /&gt;
To write a new SMS, open the menu and go to &#039;Write New&#039;.&lt;br /&gt;
&lt;br /&gt;
Choose the modem you wish to send your message from in the drop down menu &#039;Outgoing channel&#039;. If left blank, the system will choose the first available modem.&lt;br /&gt;
&lt;br /&gt;
Enter the phone number you wish to send your SMS to in the &#039;To&#039; field. Pleas note that international prefix is mandatory.&lt;br /&gt;
&lt;br /&gt;
Write your message in the &#039;Message&#039; field.&lt;br /&gt;
&lt;br /&gt;
When you have finished, click &#039;Send&#039;.[[File:Write New guide.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Time Zone Settings==&lt;br /&gt;
Open the menu and go to &#039;Time Zone Settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The NTP &amp;amp; Time Zone Settings is by default set to enable external NTP. &lt;br /&gt;
&lt;br /&gt;
For internal NTP, uncheck the &#039;Enable External NTP&#039; box and write a list of NTP servers separated by comma, in the &#039;Internal NTP&#039; field.&lt;br /&gt;
&lt;br /&gt;
To change your time zone, choose a time zone from the &#039;Time Zone&#039; drop down menu.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to change your settings.&lt;br /&gt;
[[File:Time Zone Settings.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Tools==&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
===Shell===&lt;br /&gt;
Use &#039;in browser&#039; shell to change advanced settings. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;u style=&amp;quot;color:red;&amp;quot;&amp;gt;Use with caution!&amp;lt;/u&amp;gt; Please note that if you make any changes without consulting us first, support will be charged accordingly with our hourly rate.&lt;br /&gt;
[[File:Modem Settings Shell.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Root Settings===&lt;br /&gt;
Change of root password require putty.exe. Default root password can be requested from inlogic. &lt;br /&gt;
&lt;br /&gt;
Use Putty.exe to connect to Inlogic Gateway, run command &#039;&#039;(sudo passwd root&#039;&#039;) and follow the instructions on screen.&lt;br /&gt;
[[File:Modem Settings Root.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Additional information==&lt;br /&gt;
Additional information about the product, users, and programs used in the tutorial.&lt;br /&gt;
====Usernames and passwords====&lt;br /&gt;
====SSH Clients====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of SSH Clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|PuTTy&lt;br /&gt;
|https://www.putty.org/&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Open source FTP Client====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of FTP clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|WinSCP&lt;br /&gt;
|https://winscp.net/eng/index.php&lt;br /&gt;
|-&lt;br /&gt;
|FileZilla&lt;br /&gt;
|https://filezilla-project.org/&lt;br /&gt;
|}&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
===Linux commands===&lt;br /&gt;
&lt;br /&gt;
==== Update ubuntu ====&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
&lt;br /&gt;
====Update inLogic files and Database from command line====&lt;br /&gt;
 rm -rf /mnt/Update/update&lt;br /&gt;
 wget --no-check-certificate &amp;lt;nowiki&amp;gt;https://downloads.inlogic.dk/inlogicgatewaymodem/Update.zip&amp;lt;/nowiki&amp;gt; -O /mnt/Update/Update.zip&lt;br /&gt;
 unzip /mnt/Update/Update.zip -d /mnt/Update/update&lt;br /&gt;
 chmod 777 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Commands&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Commands shows Status of Apache (systemctl status apache2.service)&lt;br /&gt;
*update system ( apt-get udate  apt-get update)&lt;br /&gt;
&lt;br /&gt;
====Update/Install USB modeswitch====&lt;br /&gt;
 sudo wget https://www.draisberghof.de/usb_modeswitch/usb-modeswitch-2.6.0.tar.bz2 -O /tmp/usb-modeswitch-2.6.0.tar.bz2&lt;br /&gt;
 sudo tar xvf /tmp/usb-modeswitch-2.6.0.tar.bz2 -C /tmp&lt;br /&gt;
 sudo wget https://downloads.inlogic.dk/inlogicgatewaymodem/usb_modeswitch/usb_modeswitch_dispatcher.tcl -O /tmp/usb-modeswitch-2.6.0/usb_modeswitch_dispatcher.tcl&lt;br /&gt;
 cd /tmp/usb-modeswitch-2.6.0&lt;br /&gt;
 make;make install&lt;br /&gt;
&lt;br /&gt;
====Update ubuntu from 18 to 20====&lt;br /&gt;
Use default answers when running these commands.&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list.d/odroid.list&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
 sudo apt-get dist-upgrade -y&lt;br /&gt;
&lt;br /&gt;
====How to change IP settings====&lt;br /&gt;
&lt;br /&gt;
*nano /etc/netplan/01-netconf.yaml&lt;br /&gt;
*reboot&lt;br /&gt;
&lt;br /&gt;
====Logs====&lt;br /&gt;
&lt;br /&gt;
=====Log viewers=====&lt;br /&gt;
&lt;br /&gt;
*tail&lt;br /&gt;
*tail -f (this is similar to using cmtrace in windows)&lt;br /&gt;
*nano&lt;br /&gt;
*vim&lt;br /&gt;
&lt;br /&gt;
=====Log files=====&lt;br /&gt;
&lt;br /&gt;
*/var/log/smstools/smsd.log&lt;br /&gt;
*/var/log/syslog&lt;br /&gt;
*/var/log/mysql/error.log&lt;br /&gt;
*/var/log/apache2/error.log&lt;br /&gt;
&lt;br /&gt;
=====See USB devices=====&lt;br /&gt;
&lt;br /&gt;
*lsusb&lt;br /&gt;
&lt;br /&gt;
==Rest API==&lt;br /&gt;
Theres a REST API to use, to send messages from the inLogic SMS Gateway.&lt;br /&gt;
&lt;br /&gt;
===Send SMS===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|source/send_sms.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
To&lt;br /&gt;
&lt;br /&gt;
Message&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns ID of send SMS&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|source/send_sms.php?username=smsuser&amp;amp;pwd=testpassword123&amp;amp;from=ums&amp;amp;to=22446688&amp;amp;message=Dette er en test besked&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST &amp;lt;nowiki&amp;gt;https://modem.ums.dk/source/send_sms.php?username=&amp;lt;/nowiki&amp;gt;&amp;lt;USERNAME&amp;gt;&amp;amp;pwd=&amp;lt;PASSWORD&amp;gt;&amp;amp;from=ums&amp;amp;to=&amp;lt;RECIEPIENT&amp;gt;&amp;amp;message=&amp;lt;MESSAGE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Check SMS Status===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|webservice/getstatus.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
ID&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns status of send SMS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ScheduledToSend = -1&lt;br /&gt;
&lt;br /&gt;
OK = 0&lt;br /&gt;
&lt;br /&gt;
OK_WithError = 1&lt;br /&gt;
&lt;br /&gt;
InUMSQueue = 2&lt;br /&gt;
&lt;br /&gt;
InModemQueue = 3&lt;br /&gt;
&lt;br /&gt;
Failed = 4&lt;br /&gt;
&lt;br /&gt;
IDNotFound = 5&lt;br /&gt;
&lt;br /&gt;
SentViaMail = 100&lt;br /&gt;
&lt;br /&gt;
FailedSendingViaMail = 101&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|webservice/getstatus.php?=smsuser&amp;amp;pwd=testpassword123&amp;amp;id=1&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST https://modem.ums.dk/webservice/getstatus.php?username=&amp;amp;#x3C;USERNAME&amp;amp;#x3E;&amp;amp;pwd=&amp;amp;#x3C;PASSWORD&amp;amp;#x3E;&amp;amp;id=&amp;amp;#x3C;ID&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4719</id>
		<title>InLogic SMS Gateway</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=InLogic_SMS_Gateway&amp;diff=4719"/>
		<updated>2023-03-17T10:45:25Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Update inLogic files and Database from command line */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Important==&lt;br /&gt;
To be able to send SMS, the inLogic SMS Gateway requires GSM modems with USB interface. We recommend &amp;quot;HUAWEI LTE USB Stick Model: E3372&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Hardware Compatibility List===&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3531/specs/ Huawei E3531]&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/en/mobile-broadband/e3372/ Huawei E3372] (inLogic&#039;s choice)&lt;br /&gt;
&lt;br /&gt;
[http://consumer.huawei.com/lk/mobile-broadband/dongles/features/e3131-lk.htm Huawei E3131i]&lt;br /&gt;
&lt;br /&gt;
[http://www.tp-link.com/la/products/details/cat-5090_MA260.html TP-Link MA260]&lt;br /&gt;
&lt;br /&gt;
==Network Port Openings==&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from server to gateway. TCP port opening where UMS sms sever service run.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|SSH access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TCP port openings from gateway to server.====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Port&lt;br /&gt;
!Usage&lt;br /&gt;
|-&lt;br /&gt;
|80&lt;br /&gt;
|HTTP access&lt;br /&gt;
|-&lt;br /&gt;
|443&lt;br /&gt;
|HTTPS access&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Prepare Modem==&lt;br /&gt;
{|&lt;br /&gt;
![[File:20180516 104258-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
!Plug-in Modems&lt;br /&gt;
&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|[[File:20180516 104358-50%.jpg|none|thumb|800x800px]]&lt;br /&gt;
|&#039;&#039;&#039;Plug-in Ethernet cable&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Plug-in power cable&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==System Login==&lt;br /&gt;
Once the gateway is [[#Prepare Modem|prepared]] and booted, open a browser and go to http://192.168.1.2. Login through the &#039;Login&#039; button in the top right corner. &lt;br /&gt;
[[File:Main Login button.png|none|thumb|1240x1240px]]&lt;br /&gt;
You will now see a login box where you can log in with with USERNAME: admin and PASSWORD: admin.&lt;br /&gt;
[[File:Login.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Main Page==&lt;br /&gt;
After logging in, the system info page appears. This page shows the gateway&#039;s status.[[File:Main.png|none|thumb|1240x1240px]]&lt;br /&gt;
To open the menu, click on this icon:  [[File:Foxbox menu button.png|frameless|23x23px]]&lt;br /&gt;
[[File:Main with menu.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Network Configuration==&lt;br /&gt;
Click on menu tab &#039;Network config&#039;.&lt;br /&gt;
&lt;br /&gt;
Change the IP settings and press &#039;Save Configuration&#039;. When you have saved your settings, [[InLogic SMS Gateway#Reboot|Reboot]] the gateway as instructed below in &#039;Modem Settings&#039;.&lt;br /&gt;
[[File:Network Config.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Modem Settings==&lt;br /&gt;
&lt;br /&gt;
===Hostname and Frontend Settings===&lt;br /&gt;
&lt;br /&gt;
====Hostname====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Set &#039;Modem Hostname&#039; as FQDN and save your changes. Your modem will now restart.[[File:Modem Settings Hostname.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
====Frontend====&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
If redirect is enable on iis set (HTTPS) &lt;br /&gt;
&lt;br /&gt;
Change &#039;FrontEnd Address&#039; to fit your configuration and save your settings.[[File:Modem Settings Frontend.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Certificate Settings (https)===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
Click &#039;Choose File&#039; and choose a .pfx certificate from your computer.&lt;br /&gt;
&lt;br /&gt;
Entera a .pfx certificate password in the &#039;Certificate Password&#039; field and click &#039;Save&#039;.&lt;br /&gt;
[[File:Modem Settings Certificate.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===User Settings===&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
The default admin user password is &#039;admin&#039;. To change the default admin user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field admin.&lt;br /&gt;
&lt;br /&gt;
The default sendsms user password is &#039;sendsms&#039;. To change the default sendsms user password, write the new password in the &#039;Password&#039; field just below the &#039;Username&#039; field sendsms.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to confirm the password change.&lt;br /&gt;
[[File:Modem Settings User.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Control Panel==&lt;br /&gt;
Open the menu and go to &#039;Control Panel&#039;. &lt;br /&gt;
&lt;br /&gt;
Here, you can see staus, as well as turn on and off, the SMS Engine.[[File:Control Panel.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==SMS==&lt;br /&gt;
&lt;br /&gt;
===Inbox===&lt;br /&gt;
To see a log for incoming messages, open the menu and go to &#039;Inbox&#039;. &lt;br /&gt;
[[File:Inbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Outbox===&lt;br /&gt;
To see a log for outgoing messages, open the menu and go to &#039;Outbox&#039;. &lt;br /&gt;
[[File:Outbox.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
===Failed===&lt;br /&gt;
To see a log for failed messages, open the menu and go to &#039;Failed&#039;. &lt;br /&gt;
[[File:Failed.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Write New===&lt;br /&gt;
To write a new SMS, open the menu and go to &#039;Write New&#039;.&lt;br /&gt;
&lt;br /&gt;
Choose the modem you wish to send your message from in the drop down menu &#039;Outgoing channel&#039;. If left blank, the system will choose the first available modem.&lt;br /&gt;
&lt;br /&gt;
Enter the phone number you wish to send your SMS to in the &#039;To&#039; field. Pleas note that international prefix is mandatory.&lt;br /&gt;
&lt;br /&gt;
Write your message in the &#039;Message&#039; field.&lt;br /&gt;
&lt;br /&gt;
When you have finished, click &#039;Send&#039;.[[File:Write New guide.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Time Zone Settings==&lt;br /&gt;
Open the menu and go to &#039;Time Zone Settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The NTP &amp;amp; Time Zone Settings is by default set to enable external NTP. &lt;br /&gt;
&lt;br /&gt;
For internal NTP, uncheck the &#039;Enable External NTP&#039; box and write a list of NTP servers separated by comma, in the &#039;Internal NTP&#039; field.&lt;br /&gt;
&lt;br /&gt;
To change your time zone, choose a time zone from the &#039;Time Zone&#039; drop down menu.&lt;br /&gt;
&lt;br /&gt;
Click &#039;Save&#039; to change your settings.&lt;br /&gt;
[[File:Time Zone Settings.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Tools==&lt;br /&gt;
Open the menu and go to &#039;Modem Settings&#039;. &lt;br /&gt;
&lt;br /&gt;
===Shell===&lt;br /&gt;
Use &#039;in browser&#039; shell to change advanced settings. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;u style=&amp;quot;color:red;&amp;quot;&amp;gt;Use with caution!&amp;lt;/u&amp;gt; Please note that if you make any changes without consulting us first, support will be charged accordingly with our hourly rate.&lt;br /&gt;
[[File:Modem Settings Shell.png|none|thumb|1240x1240px]]&lt;br /&gt;
===Root Settings===&lt;br /&gt;
Change of root password require putty.exe. Default root password can be requested from inlogic. &lt;br /&gt;
&lt;br /&gt;
Use Putty.exe to connect to Inlogic Gateway, run command &#039;&#039;(sudo passwd root&#039;&#039;) and follow the instructions on screen.&lt;br /&gt;
[[File:Modem Settings Root.png|none|thumb|1240x1240px]]&lt;br /&gt;
&lt;br /&gt;
==Additional information==&lt;br /&gt;
Additional information about the product, users, and programs used in the tutorial.&lt;br /&gt;
====Usernames and passwords====&lt;br /&gt;
====SSH Clients====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of SSH Clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|PuTTy&lt;br /&gt;
|https://www.putty.org/&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Open source FTP Client====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+A list of FTP clients&lt;br /&gt;
!Program name&lt;br /&gt;
!URL&lt;br /&gt;
|-&lt;br /&gt;
|WinSCP&lt;br /&gt;
|https://winscp.net/eng/index.php&lt;br /&gt;
|-&lt;br /&gt;
|FileZilla&lt;br /&gt;
|https://filezilla-project.org/&lt;br /&gt;
|}&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
===Linux commands===&lt;br /&gt;
&lt;br /&gt;
==== Update ubuntu ====&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
&lt;br /&gt;
====Update inLogic files and Database from command line====&lt;br /&gt;
 rm -rf /mnt/Update/update&lt;br /&gt;
 wget --no-check-certificate &amp;lt;nowiki&amp;gt;https://downloads.inlogic.dk/inlogicgatewaymodem/Update.zip&amp;lt;/nowiki&amp;gt; -O /mnt/Update/Update.zip&lt;br /&gt;
 unzip /mnt/Update/Update.zip -d /mnt/Update/update&lt;br /&gt;
 chmod 777 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
 /mnt/Update/update/mnt/flash/root/updateservice/update.sh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Commands&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Commands shows Status of Apache (systemctl status apache2.service)&lt;br /&gt;
*update system ( apt-get udate  apt-get update)&lt;br /&gt;
&lt;br /&gt;
====Update USB modeswitch====&lt;br /&gt;
 sudo wget https://www.draisberghof.de/usb_modeswitch/usb-modeswitch-2.6.0.tar.bz2 -O /tmp/usb-modeswitch-2.6.0.tar.bz2&lt;br /&gt;
 sudo tar xvf /tmp/usb-modeswitch-2.6.0.tar.bz2 -C /tmp&lt;br /&gt;
 sudo wget https://downloads.inlogic.dk/inlogicgatewaymodem/usb_modeswitch/usb_modeswitch_dispatcher.tcl -O /tmp/usb-modeswitch-2.6.0/usb_modeswitch_dispatcher.tcl&lt;br /&gt;
 cd /tmp/usb-modeswitch-2.6.0&lt;br /&gt;
 make;make install&lt;br /&gt;
&lt;br /&gt;
====Update ubuntu from 18 to 20====&lt;br /&gt;
Use default answers when running these commands.&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list&lt;br /&gt;
 sudo sed -i &#039;s/bionic/focal/g&#039; /etc/apt/sources.list.d/odroid.list&lt;br /&gt;
 sudo apt-get update -y&lt;br /&gt;
 sudo apt-get upgrade -y&lt;br /&gt;
 sudo apt-get dist-upgrade -y&lt;br /&gt;
&lt;br /&gt;
====How to change IP settings====&lt;br /&gt;
&lt;br /&gt;
*nano /etc/netplan/01-netconf.yaml&lt;br /&gt;
*reboot&lt;br /&gt;
&lt;br /&gt;
====Logs====&lt;br /&gt;
&lt;br /&gt;
=====Log viewers=====&lt;br /&gt;
&lt;br /&gt;
*tail&lt;br /&gt;
*tail -f (this is similar to using cmtrace in windows)&lt;br /&gt;
*nano&lt;br /&gt;
*vim&lt;br /&gt;
&lt;br /&gt;
=====Log files=====&lt;br /&gt;
&lt;br /&gt;
*/var/log/smstools/smsd.log&lt;br /&gt;
*/var/log/syslog&lt;br /&gt;
*/var/log/mysql/error.log&lt;br /&gt;
*/var/log/apache2/error.log&lt;br /&gt;
&lt;br /&gt;
=====See USB devices=====&lt;br /&gt;
&lt;br /&gt;
*lsusb&lt;br /&gt;
&lt;br /&gt;
==Rest API==&lt;br /&gt;
Theres a REST API to use, to send messages from the inLogic SMS Gateway.&lt;br /&gt;
&lt;br /&gt;
===Send SMS===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|source/send_sms.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
To&lt;br /&gt;
&lt;br /&gt;
Message&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns ID of send SMS&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|source/send_sms.php?username=smsuser&amp;amp;pwd=testpassword123&amp;amp;from=ums&amp;amp;to=22446688&amp;amp;message=Dette er en test besked&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST &amp;lt;nowiki&amp;gt;https://modem.ums.dk/source/send_sms.php?username=&amp;lt;/nowiki&amp;gt;&amp;lt;USERNAME&amp;gt;&amp;amp;pwd=&amp;lt;PASSWORD&amp;gt;&amp;amp;from=ums&amp;amp;to=&amp;lt;RECIEPIENT&amp;gt;&amp;amp;message=&amp;lt;MESSAGE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Check SMS Status===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Title&lt;br /&gt;
!&lt;br /&gt;
|-&lt;br /&gt;
|URL&lt;br /&gt;
|webservice/getstatus.php&lt;br /&gt;
|-&lt;br /&gt;
|Method&lt;br /&gt;
|POST&lt;br /&gt;
|-&lt;br /&gt;
|URL Parameters&lt;br /&gt;
|Username&lt;br /&gt;
&lt;br /&gt;
Password&lt;br /&gt;
&lt;br /&gt;
ID&lt;br /&gt;
|-&lt;br /&gt;
|Success Response&lt;br /&gt;
|200 - Success&lt;br /&gt;
Returns status of send SMS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ScheduledToSend = -1&lt;br /&gt;
&lt;br /&gt;
OK = 0&lt;br /&gt;
&lt;br /&gt;
OK_WithError = 1&lt;br /&gt;
&lt;br /&gt;
InUMSQueue = 2&lt;br /&gt;
&lt;br /&gt;
InModemQueue = 3&lt;br /&gt;
&lt;br /&gt;
Failed = 4&lt;br /&gt;
&lt;br /&gt;
IDNotFound = 5&lt;br /&gt;
&lt;br /&gt;
SentViaMail = 100&lt;br /&gt;
&lt;br /&gt;
FailedSendingViaMail = 101&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|401 - Unauthorized&lt;br /&gt;
|-&lt;br /&gt;
|Error Resposne&lt;br /&gt;
|403 - Forbidden&lt;br /&gt;
|-&lt;br /&gt;
|Error Response&lt;br /&gt;
|500 - Internal server error&lt;br /&gt;
|-&lt;br /&gt;
|Sample Request&lt;br /&gt;
|webservice/getstatus.php?=smsuser&amp;amp;pwd=testpassword123&amp;amp;id=1&lt;br /&gt;
|-&lt;br /&gt;
|Notes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
 curl -X POST https://modem.ums.dk/webservice/getstatus.php?username=&amp;amp;#x3C;USERNAME&amp;amp;#x3E;&amp;amp;pwd=&amp;amp;#x3C;PASSWORD&amp;amp;#x3E;&amp;amp;id=&amp;amp;#x3C;ID&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=SSO&amp;diff=4622</id>
		<title>SSO</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=SSO&amp;diff=4622"/>
		<updated>2023-01-16T08:09:56Z</updated>

		<summary type="html">&lt;p&gt;Mej: Corrected spelling error on Set-AdfsSslCertificate -Thumbprint&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Single-Sign-On-SSO-DK.png|thumb]]&lt;br /&gt;
Our Single Sign-on (SSO) module is designed for schools that would like to make it easy for employees and students to use the school&#039;s various electronic systems. With the SSO module, users get one login and password that logs them into all the associated services at once.&lt;br /&gt;
&lt;br /&gt;
For example, students can Access the school&#039;s LMS system, library system, digital dictionaries and databases with scientific publications - all by signing in with SSO once and for all.&lt;br /&gt;
&lt;br /&gt;
This saves time and effort whenever users need to use one of the school&#039;s systems. At the same time, it gives users a simpler everyday life because they do not have to worry about having to keep in mind several logins.&lt;br /&gt;
&lt;br /&gt;
==Prerequisite and purpose==&lt;br /&gt;
&lt;br /&gt;
===Prerequisite===&lt;br /&gt;
This requires that:&lt;br /&gt;
&lt;br /&gt;
*An installed Active Directory federation services (AD FS) server.&lt;br /&gt;
*Access to configuration snap in. Either via Remote PowerShell or directly on the server.&lt;br /&gt;
*An UMS installation, licensed to SSO from inLogic.&lt;br /&gt;
*A star or new certificate for the address that the AD FS server needs.&lt;br /&gt;
&lt;br /&gt;
===purpose===&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
&lt;br /&gt;
===Installation===&lt;br /&gt;
&lt;br /&gt;
==Change ADFS certificates in UMS==&lt;br /&gt;
The UMS server also needs the certificates from the ADFS server. This is done by consuming the metadata. &#039;&#039;You can use &amp;lt;nowiki&amp;gt;https://samlmd2cert.azurewebsites.net/&amp;lt;/nowiki&amp;gt; to get the certificate files.&#039;&#039; &amp;lt;!-- You can use https://samlmd2cert.azurewebsites.net/ to get the certificate files. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When you have the new and updated certificates from ADFS it needs to be in rootfolder of the UMS Application.&lt;br /&gt;
&lt;br /&gt;
Physical path (C:\inetpub\wwwroot).&lt;br /&gt;
&lt;br /&gt;
And we need to update the records in the UMS database, if the name of the file has changed.&lt;br /&gt;
 Update SSOSetting set PartnerCertificateFile = &#039;TheNameOfCertificate_signing.cer&#039;&lt;br /&gt;
 Where ID = &amp;lt;The id of the active setting&amp;gt;&lt;br /&gt;
It is the signing certificate the UMS needs from the ADFS.&lt;br /&gt;
&lt;br /&gt;
Now delete the old certificate files from your UMS folder, do an iisreset to let the UMS resolve the newly entered information in the databse.&lt;br /&gt;
&lt;br /&gt;
==Changing the Self Signed Certificate in SSO.==&lt;br /&gt;
&lt;br /&gt;
#Get started by clicking on the house icon in the menu. Search for IIS and click on Internet Information Services (IIS) Manager.[[File:Sso iis manager.png|none|thumb]]&lt;br /&gt;
#In the Connections column on the left, click on the name of the server. Double-click on Server Certificates.[[File:IIS-Cert-1.png|none|thumb|497x497px]]&lt;br /&gt;
#In the Actions column on the right, click on Create Self-Signed Certificate.[[File:IIS-Cert-2.png|none|thumb|499x499px]]&lt;br /&gt;
#Enter any friendly name and then click OK.[[File:IIS-Cert-3.png|none|thumb|508x508px]]&lt;br /&gt;
#You will now have an IIS Self Signed Certificate valid for 1 year listed under Server Certificates.&lt;br /&gt;
#Right click on the new create certificate and then click &#039;&#039;&#039;Export.&#039;&#039;&#039;[[File:IIS-Cert-4.png|none|thumb|742x742px]]&lt;br /&gt;
#Remember to delete the old self signed certificate (C:\inetpub\wwwroot).[[File:IIS-Cert-5.png|none|thumb|573x573px]]&lt;br /&gt;
#Enter the path (C:\inetpub\wwwroot\UMS-SSO). The new password you type will be used later on when you set up your environment. Please remember this password. Click OK.[[File:IIS-Cert-8.png|none|thumb|771x771px]]&lt;br /&gt;
#Open SQl Management Studio and type “&#039;&#039;select * from SSOSetting&#039;&#039;”. You will see all settings for UMS SSO.&lt;br /&gt;
#Update the Certificate by typing “&#039;&#039;update SSOSetting set LocalCertificateFile =&#039;UMS-SSO.pfx&#039;&#039;”&lt;br /&gt;
#Update the Password by typing “&#039;&#039;update SSOSetting set LocalCertificatePassword =&#039;Velk0mmen2018&#039;&#039;”.[[File:IIS-Cert-9.png|none|thumb|781x781px]]&lt;br /&gt;
#Open the IIS Server and click Start. Click Run type IISReset and then click OK.[[File:IIS-Cert-10.png|none|thumb|377x377px]]&lt;br /&gt;
#Open the AD FS Server and search for AD FS. Click on AD FS Management.[[File:IIS-Cert-11.png|none|thumb|305x305px]]&lt;br /&gt;
#Click on the Trust Relationships folder and then click on Relying Party Trusts.&lt;br /&gt;
#In the details panel, click the relying party trust that you want to update from federation metadata.&lt;br /&gt;
#In the Action panel, click Update from Federation Metadata.&lt;br /&gt;
#In the properties dialog box for the trust, click Update to start the update.&lt;br /&gt;
#When the update is complete, click OK.[[File:IIS-Cert-12.png|none|thumb|745x745px]]&lt;br /&gt;
&lt;br /&gt;
==Certificates - Update Service Communication Certificate==&lt;br /&gt;
&lt;br /&gt;
===Things to have ready:===&lt;br /&gt;
A new updated certificate with private key - &amp;lt;file&amp;gt;.pfx&lt;br /&gt;
&lt;br /&gt;
A connection to AD FS server, with administrator rights.&lt;br /&gt;
&lt;br /&gt;
First install the certificate on the server, select my computer when asked.&lt;br /&gt;
&lt;br /&gt;
Now go to AD FS -&amp;gt; Service -&amp;gt; Certificates -&amp;gt; Set Service Communications Certificate...&lt;br /&gt;
&lt;br /&gt;
Now select &amp;quot;view more&amp;quot; -&amp;gt; And select the new certificate&lt;br /&gt;
&lt;br /&gt;
[[File:ADFSChangeCertificate.png|1389x1389px]]&lt;br /&gt;
&lt;br /&gt;
And now we need to set the certificate on the http.sys on adfs&lt;br /&gt;
 Set-AdfsSslCertificate -Thumbprint xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&lt;br /&gt;
Now go to Services and restart the AD FS Service&lt;br /&gt;
&lt;br /&gt;
==Certificates - Automatic rollover==&lt;br /&gt;
Out of the box, ADFS generates two self-signed certificates that are good for one year. One certificate for token signing, and one for token encryption.&lt;br /&gt;
&lt;br /&gt;
The token signing certificate is for signing the tokens used in the user sign on process, and it is considered the “bedrock of security” for ADFS. If someone gained access to this certificate (the public/private key pair), they could impersonate your ADFS environment.&lt;br /&gt;
&lt;br /&gt;
The token decryption certificate is used for encrypting the tokens used in the user sign on process. This certificate isn’t used very often.&lt;br /&gt;
&lt;br /&gt;
For more information about AD FS Certificates see https://blogs.technet.microsoft.com/askpfeplat/2015/01/26/adfs-deep-dive-certificate-planning/&lt;br /&gt;
&lt;br /&gt;
===Token Certificate Validity Periods===&lt;br /&gt;
By default, ADFS is configured to generate self-signed token certificates with a duration of one year. This duration can be changed, but keep in mind that the token-signing certificate is the foundation of the sign on process, and therefore, it really shouldn’t have a duration longer than 3 years.&lt;br /&gt;
&lt;br /&gt;
===ADFS Federation Metadata===&lt;br /&gt;
The public key portion of both certificates are included in the ADFS Federation Metadata, and are available from a public URL endpoint on all ADFS servers in the farm. Relying Party (RP) applications that can consume federation metadata will automatically pick up certificate changes whenever they pull the federation metadata file (FederationMetadata.xml) from your ADFS environment.&lt;br /&gt;
&lt;br /&gt;
Example URL&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;https://adfs.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Before performing a token certificate rollover, you will want to reach out to your RP partners (application owners) to see how often their application pulls the federation metadata so that they will experience little to no downtime before trusting the new certificates.&lt;br /&gt;
&lt;br /&gt;
However, most applications do not automatically retrieve the federation metadata on a schedule. Instead, an application owner will need to import the federation metadata from an XML file, or manually force the application to retrieve the federation metadata from the URL endpoint.&lt;br /&gt;
&lt;br /&gt;
And then there’s the applications that don’t consume federation metadata at all — they have to be manually updated. This means you will need to send the public key portion of the new certificates to the application owners.&lt;br /&gt;
&lt;br /&gt;
===Certificate and Rollover Settings===&lt;br /&gt;
Run the following PowerShell command on the primary ADFS server to view the properties related to certificates:&lt;br /&gt;
 Get-AdfsProperties | FL AutoCert*, Certificate*&lt;br /&gt;
&lt;br /&gt;
===ADFS Properties Related to Certificate Renewal===&lt;br /&gt;
&#039;&#039;&#039;Auto Certificate Rollover&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When the auto-rollover process is enabled (set to “True”), ADFS will automatically generate new “Secondary” certificates before the current ones expire, and then eventually promote them to be “Primary”.  For a manual renewal process, this should be set to “False” until you’re ready to generate new “Secondary” certificates.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Certificate Generation Threshold&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
New certificates will be generated this number of days before the expiration of the current “Primary” certificates.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Certificate Promotion Threshold&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Number of days the newly generated certificate will exist before being promoted from the “Secondary” certificate to the “Primary” certificate.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Certificate Critical Threshold&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Number of days prior to expiry of the certificates before a new certificate is generated and promoted to the “Primary” certificate.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Certificate Duration&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Validity period of the auto-generated certificates. Default is 1 year.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Certificate Rollover Interval&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Number of minutes at which ADFS checks to see if a new certificate needs to be generated.&lt;br /&gt;
&lt;br /&gt;
===Token Certificate Rollover Process===&lt;br /&gt;
There are 3 approaches for rolling over the token certificates. Which one to use will depend on the number of relying party trusts you have, the level of control you wish to exert upon the process, and the timing of the certificate expirations.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automatic Staged Rollover&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You would use this process when ADFS controls when the new self-signed token certificates are generated, and when they are promoted to become the “Primary” certificates.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Manual Staged Rollover&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You would use this process to manually control when the new self-signed token certificates are generated, and when they are promoted to become the “Primary” certificates.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Immediate Manual Rollover&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Think of this as a certificate cut-over process.  You would do this if you wanted to roll over your certificates immediately without having a set of primary and secondary certificates.  You would also do this if your current certificates expired and you need to renew immediately.&lt;br /&gt;
&lt;br /&gt;
Keep in mind that there will be outage when Token certificates are immediately generated &amp;amp; promoted.  The relying parties (application owners) must update their configuration with the new certificates, but until they do so, single sign-on will not work.&lt;br /&gt;
&lt;br /&gt;
===Automatic Staged Rollover===&lt;br /&gt;
This process should only be used if you have already communicated to all your relying party application owners with information about the schedule for which the new certificates will be generated, when they will be promoted to the “Primary” certificate, and when the old certificates will expire.&lt;br /&gt;
&lt;br /&gt;
Note that an ADFS administrator will need to export the public portion of the new certificates and send them to the application owners.&lt;br /&gt;
&lt;br /&gt;
Additionally, you can use this process if all of the relying party applications pull your ADFS federation metadata automatically on a schedule. However, this is very rare because most SaaS providers do not want to incur the expense of querying federation metadata changes for hundreds, thousands, or even millions of endpoints. More than likely, you will need to coordinate with the application owners to update their applications.&lt;br /&gt;
&lt;br /&gt;
Permissions: Domain Admin &amp;amp; Local Admin on the primary ADFS server in the farm.&lt;br /&gt;
&lt;br /&gt;
Step 1: Certificate Duration&lt;br /&gt;
&lt;br /&gt;
Set the number of days that will become the validity period of the new self-signed token certificates.&lt;br /&gt;
&lt;br /&gt;
*1 Year: 365&lt;br /&gt;
*3 Years: 1095&lt;br /&gt;
*5 Years: 1827&lt;br /&gt;
&lt;br /&gt;
 Set-ADFSProperties -CertificateDuration 1095&lt;br /&gt;
Step 2: Certificate Generation Threshold&lt;br /&gt;
&lt;br /&gt;
Set the number of days before the expiration date of the current certificates that ADFS should generate the new certificates. Thirty days is usually a good number, but you could make it more.&lt;br /&gt;
 Set-ADFSProperties -CertificateGenerationThreshold 30&lt;br /&gt;
Step 3: Certificate Promotion Threshold&lt;br /&gt;
&lt;br /&gt;
When ADFS generates the new self-signed certificates, they are initially set as “Secondary” certificates. ADFS will then use the value of this property to determine the number of days after the new certificates are generated to promote them to be the “Primary” certificates.&lt;br /&gt;
 Set-ADFSProperties -CertificatePromotionThreshold 25&lt;br /&gt;
Step 4: Certificate Critical Threshold&lt;br /&gt;
&lt;br /&gt;
If for some reason ADFS has not generated new self-signed certificates, or newly generated certificates have not been promoted to “Primary”, ADFS will perform these actions within the number of days set in this property prior to expiry of the current primary certificates. Leaving the default 2 days is usually best.&lt;br /&gt;
 Set-ADFSProperties -CertificateCriticalThreshold 2&lt;br /&gt;
Step 5: Auto Certificate Rollover&lt;br /&gt;
&lt;br /&gt;
This enables/disables the ADFS certificate rollover process, which uses the properties configured in the previous steps to rollover (renew &amp;amp; promote) the token certificates. This needs to be enabled.&lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $true&lt;br /&gt;
Step 6: Export the New Certificates&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, export the new certificates without their private keys. You can do this while the new certificates are set as “Secondary”.&lt;br /&gt;
&lt;br /&gt;
Open the ADFS Management Console: ADFS &amp;gt; Service &amp;gt; Certificates&lt;br /&gt;
&lt;br /&gt;
For each token certificate, perform the following:&lt;br /&gt;
&lt;br /&gt;
*Right-click the certificate &amp;gt; View Certificate…&lt;br /&gt;
*In the new window &amp;gt; Details (tab) &amp;gt; Copy to File (button) &amp;gt; Next&lt;br /&gt;
*Select: DER Encoded Binary X.509 (.CER) -or- Base-64 Encoded X.509 (.CER)&lt;br /&gt;
*Next &amp;gt; Browse to a location to save the file and give it a name&lt;br /&gt;
*Next &amp;gt; Finish&lt;br /&gt;
&lt;br /&gt;
Note: To export the certificate in .PEM format, choose Base-64 Encoded X.509 (.CER), and then rename the saved file with the .pem file extension.&lt;br /&gt;
&lt;br /&gt;
Step 7: Export the Federation Metadata XML&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, run the below PowerShell commands on the ADFS server to export the new ADFS Federation Metadata XML file. Make sure you modify the File Path before running the commands.&lt;br /&gt;
 # Set the file path&lt;br /&gt;
 $FilePath = &amp;quot;C:\Users\ADFSAdmin\Desktop\ADFS-MetaData.xml&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt; Export MetaData XML&lt;br /&gt;
 $mUrl = (Get-ADFSEndpoint | where Protocol -eq &amp;quot;Federation Metadata&amp;quot;).FullUrl.ToString()&lt;br /&gt;
 $httpHelper = new-object System.Net.WebClient&lt;br /&gt;
 $metadataAsString = $httpHelper.DownloadString($mUrl)&lt;br /&gt;
 $httpHelper.DownloadFile($mUrl , &amp;quot;$($FilePath)&amp;quot;)&lt;br /&gt;
Note:  If you export the metadata while there are both primary and secondary certificates, both of the certificates will be included in the XML file.  After the secondary certificates are promoted to primary, and the old certificates are deleted, you should generate a new XML file for future use.&lt;br /&gt;
&lt;br /&gt;
===Manual Staged Rollover===&lt;br /&gt;
You would use this process to manually control when the new self-signed token certificates are generated, and when they are promoted to become the “Primary” certificates. You will have full control over the rollover process. ADFS will not do anything automatically.&lt;br /&gt;
&lt;br /&gt;
Permissions: Domain Admin &amp;amp; Local Admin on the primary ADFS server in the farm.&lt;br /&gt;
&lt;br /&gt;
Step 1: Auto Certificate Rollover&lt;br /&gt;
&lt;br /&gt;
This enables/disables the ADFS certificate rollover process, which uses the properties configured in the below steps to rollover (renew &amp;amp; promote) the token certificates automatically. This should be set to False. If not, run the following command.&lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $false&lt;br /&gt;
Step 2: Certificate Duration&lt;br /&gt;
&lt;br /&gt;
Set the number of days that will become the validity period of the new self-signed token certificates.&lt;br /&gt;
&lt;br /&gt;
*1 Year: 365&lt;br /&gt;
*3 Years: 1095&lt;br /&gt;
*5 Years: 1827&lt;br /&gt;
&lt;br /&gt;
 Set-ADFSProperties -CertificateDuration 1095&lt;br /&gt;
Step 3: Certificate Generation Threshold&lt;br /&gt;
&lt;br /&gt;
Set the number of days before the expiration date of the current certificates that ADFS should generate the new certificates. Depending on when you plan to manually generate the new certificates, this number should be greater than the number of days between when you generate the new certificates, and when the old certificates expire.&lt;br /&gt;
&lt;br /&gt;
You need to set this because you have to enable the ADFS auto rollover process in order to generate the new certificates. After you generate the new certificates, you will immediately disable the auto rollover process.&lt;br /&gt;
&lt;br /&gt;
Assuming you will generate the new certificates 30 days before the old ones expire, you could set this to 40.&lt;br /&gt;
 Set-ADFSProperties -CertificateGenerationThreshold 40&lt;br /&gt;
Step 4: Certificate Promotion Threshold&lt;br /&gt;
&lt;br /&gt;
When ADFS generates the new self-signed certificates, they are initially set as “Secondary” certificates. ADFS will then use the value of this property to determine the number of days after the new certificates are generated to promote them to be the “Primary” certificates.&lt;br /&gt;
&lt;br /&gt;
Even though the ADFS auto rollover process will be disabled, this property should be set to a number lower than the above Certificate Generation Threshold property.&lt;br /&gt;
 Set-ADFSProperties -CertificatePromotionThreshold 35&lt;br /&gt;
Step 5: Certificate Critical Threshold&lt;br /&gt;
&lt;br /&gt;
If for some reason ADFS has not generated new self-signed certificates, or newly generated certificates have not been promoted to “Primary”, ADFS will perform these actions within the number of days set in this property prior to expiry of the current primary certificates. Leaving the default 2 days is usually best.&lt;br /&gt;
 Set-ADFSProperties -CertificateCriticalThreshold 2&lt;br /&gt;
Step 6: Generate the New Certificates&lt;br /&gt;
&lt;br /&gt;
When you are ready to generate the new token certificates as “Secondary” certificates, use the below PowerShell commands. Both the current “Primary” certificates and the new “Secondary” certificates will be available to the relying party applications.&lt;br /&gt;
&lt;br /&gt;
Note that you cannot manually generate the new token certificates when the ADFS auto rollover process is disabled. Therefore, the commands enable the process, generates the new certificates as “Secondary”, and then disables the process.&lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $true&lt;br /&gt;
 &lt;br /&gt;
 Update-AdfsCertificate -CertificateType Token-Decrypting&lt;br /&gt;
 Update-AdfsCertificate -CertificateType Token-Signing&lt;br /&gt;
 &lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $false&lt;br /&gt;
Step 7: Export the Certificates&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, export the certificates without their private keys.&lt;br /&gt;
&lt;br /&gt;
Open the ADFS Management Console: ADFS &amp;gt; Service &amp;gt; Certificates&lt;br /&gt;
&lt;br /&gt;
For each token certificate, perform the following:&lt;br /&gt;
&lt;br /&gt;
*Right-click the certificate &amp;gt; View Certificate…&lt;br /&gt;
*In the new window &amp;gt; Details (tab) &amp;gt; Copy to File (button) &amp;gt; Next&lt;br /&gt;
*Select: DER Encoded Binary X.509 (.CER) -or- Base-64 Encoded X.509 (.CER)&lt;br /&gt;
*Next &amp;gt; Browse to a location to save the file and give it a name&lt;br /&gt;
*Next &amp;gt; Finish&lt;br /&gt;
&lt;br /&gt;
Note: To export the certificate in .PEM format, choose Base-64 Encoded X.509 (.CER), and then rename the saved file with the .pem file extension.&lt;br /&gt;
&lt;br /&gt;
Step 8: Export the Federation Metadata XML&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, run the below PowerShell commands on the ADFS server to export the ADFS Federation Metadata XML file. Make sure you modify the File Path before running the commands.&lt;br /&gt;
 # Set the file path&lt;br /&gt;
 $FilePath = &amp;quot;C:\Users\ADFSAdmin\Desktop\ADFS-MetaData.xml&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt; Export MetaData XML&lt;br /&gt;
 $mUrl = (Get-ADFSEndpoint | where Protocol -eq &amp;quot;Federation Metadata&amp;quot;).FullUrl.ToString()&lt;br /&gt;
 $httpHelper = new-object System.Net.WebClient&lt;br /&gt;
 $metadataAsString = $httpHelper.DownloadString($mUrl)&lt;br /&gt;
 $httpHelper.DownloadFile($mUrl , &amp;quot;$($FilePath)&amp;quot;)&lt;br /&gt;
Note:  Both primary and secondary certificates will be included in the XML file.  After you promote the new certificates and delete the old certificates, you should generate a new XML file for future use.&lt;br /&gt;
&lt;br /&gt;
Step 9: Promote the New Certificates&lt;br /&gt;
&lt;br /&gt;
Before the old certificates expire, you need to promote the new certificates to “Primary”.&lt;br /&gt;
&lt;br /&gt;
ADFS Management Console: ADFS &amp;gt; Service &amp;gt; Certificates&lt;br /&gt;
&lt;br /&gt;
For each “Secondary” token certificate, perform the following:&lt;br /&gt;
&lt;br /&gt;
*Right-click the certificate &amp;gt; Set as Primary&lt;br /&gt;
&lt;br /&gt;
Step 10: Delete the Old Certificates&lt;br /&gt;
&lt;br /&gt;
After the old certificates have expired, you can delete them from the ADFS Management Console. Note that you only have the option to delete “Secondary” certificates. You cannot delete a “Primary” certificate.&lt;br /&gt;
&lt;br /&gt;
ADFS Management Console: ADFS &amp;gt; Service &amp;gt; Certificates&lt;br /&gt;
&lt;br /&gt;
For each “Secondary” token certificate, perform the following:&lt;br /&gt;
&lt;br /&gt;
*Right-click the certificate &amp;gt; Delete&lt;br /&gt;
&lt;br /&gt;
===Immediate Manual Rollover===&lt;br /&gt;
When doing an immediate rollover, you force ADFS to immediately generate new certificates, promote them to “Primary”, and delete the old certificates.&lt;br /&gt;
&lt;br /&gt;
You would use these steps if you have a few relying party trusts and the application owners are ready to pull the new federation metadata from the ADFS public endpoint after a rollover. You would also use these steps if the ADFS auto rollover process is disabled, and your token certificates have expired.&lt;br /&gt;
&lt;br /&gt;
After the rollover, you can export the new certificates &amp;amp; federation metadata, and send them to your relying party application owners.&lt;br /&gt;
&lt;br /&gt;
Permissions: Domain Admin &amp;amp; Local Admin on the primary ADFS server in the farm.&lt;br /&gt;
&lt;br /&gt;
Step 1: Certificate Duration&lt;br /&gt;
&lt;br /&gt;
Set the number of days that will become the validity period of the new self-signed token certificates.&lt;br /&gt;
&lt;br /&gt;
*1 Year: 365&lt;br /&gt;
*3 Years: 1095&lt;br /&gt;
*5 Years: 1827&lt;br /&gt;
&lt;br /&gt;
 Set-ADFSProperties -CertificateDuration 1095&lt;br /&gt;
Step 2: Generate the New Certificates&lt;br /&gt;
&lt;br /&gt;
Note that you cannot generate the new token certificates when the ADFS auto rollover process is disabled. Therefore, the below commands enable the process, generate the new certificates, and then disable the process. The -Urgent switch indicates that the certificate rollover process should happen immediately, and remove older certificates.&lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $true&lt;br /&gt;
 &lt;br /&gt;
 Update-AdfsCertificate -CertificateType Token-Decrypting -Urgent&lt;br /&gt;
 Update-AdfsCertificate -CertificateType Token-Signing -Urgent&lt;br /&gt;
 &lt;br /&gt;
 Set-ADFSProperties -AutoCertificateRollover $false&lt;br /&gt;
Step 3: Export the Certificates&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, export the certificates without their private keys.&lt;br /&gt;
&lt;br /&gt;
Open the ADFS Management Console: ADFS &amp;gt; Service &amp;gt; Certificates&lt;br /&gt;
&lt;br /&gt;
For each token certificate, perform the following:&lt;br /&gt;
&lt;br /&gt;
*Right-click the certificate &amp;gt; View Certificate…&lt;br /&gt;
*In the new window &amp;gt; Details (tab) &amp;gt; Copy to File (button) &amp;gt; Next&lt;br /&gt;
*Select: DER Encoded Binary X.509 (.CER) -or- Base-64 Encoded X.509 (.CER)&lt;br /&gt;
*Next &amp;gt; Browse to a location to save the file and give it a name&lt;br /&gt;
*Next &amp;gt; Finish&lt;br /&gt;
&lt;br /&gt;
Note: To export the certificate in .PEM format, choose Base-64 Encoded X.509 (.CER), and then rename the saved file with the .pem file extension.&lt;br /&gt;
&lt;br /&gt;
Step 4: Export the Federation Metadata XML&lt;br /&gt;
&lt;br /&gt;
If needed by the application owners, run the below PowerShell commands on the ADFS server to export the ADFS Federation Metadata XML file. Make sure you modify the File Path before running the commands.&lt;br /&gt;
 # Set the file path&lt;br /&gt;
 $FilePath = &amp;quot;C:\Users\ADFSAdmin\Desktop\ADFS-MetaData.xml&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt; Export MetaData XML&lt;br /&gt;
 $mUrl = (Get-ADFSEndpoint | where Protocol -eq &amp;quot;Federation Metadata&amp;quot;).FullUrl.ToString()&lt;br /&gt;
 $httpHelper = new-object System.Net.WebClient&lt;br /&gt;
 $metadataAsString = $httpHelper.DownloadString($mUrl)&lt;br /&gt;
 $httpHelper.DownloadFile($mUrl , &amp;quot;$($FilePath)&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
How to set SPN&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;http://www.gatepoint.ch/cmdreferenz/html/9341c753-11ff-4acc-993c-b05d50f32330.htm#bkmk_examples&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Update metadata to Office365.  (&#039;&#039;&#039;Update-MsolFederatedDomain -DomainName mydomain.com -SupportMultiDomain&#039;&#039;&#039;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== FOCES certificate til STIL OIOSAML 3.0 ===&lt;br /&gt;
https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/funktionssignatur&lt;br /&gt;
&lt;br /&gt;
==Final==&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=STIL_Settings&amp;diff=4121</id>
		<title>STIL Settings</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=STIL_Settings&amp;diff=4121"/>
		<updated>2021-11-02T13:11:57Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://wiki.inlogic.dk/index.php/STIL_Settings_Roles&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=MSGraphPermissions&amp;diff=4111</id>
		<title>MSGraphPermissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=MSGraphPermissions&amp;diff=4111"/>
		<updated>2021-10-26T09:02:11Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;MS graph permissions is a UMS backend requirement from version 8.5.203 which was released in June 2021&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MS graph permissions are required by these UMS modules (LiveAtEdu,OneNote, Sharepoint, Office 365 Timeblok and MS Teams)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Creating App Registration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to [http://portal.azure.com Azure Portal] and login with you admin account( &#039;&#039;&#039;the same UMS uses&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;!!! ATTENTION !!!  use service account that UMS uses&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When logged in go to Azure Active Directory:&lt;br /&gt;
[[File:Graph1.jpg|left|thumb|832x832px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to App registrations&lt;br /&gt;
[[File:Graph2.jpg|none|thumb|831x831px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click on New application registration&lt;br /&gt;
[[File:Graph3.jpg|none|thumb|909x909px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Give the new App a name ex. &amp;quot;UMSGraph&amp;quot;, Choose &amp;quot;Web app / API&amp;quot; in Application type, set &amp;quot;Sign-on URL&amp;quot; to &amp;quot;http://localhost&amp;quot;. After setting Application Permission values click &amp;quot;Create&amp;quot;&lt;br /&gt;
[[File:Graph43.jpg|none|thumb|913x913px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will return to previous screen, here click &amp;quot;your new app&amp;quot;&lt;br /&gt;
[[File:Grahp5.jpg|none|thumb|905x905px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Certificates &amp;amp; secrets&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;New Client Secret&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enter a &amp;quot;Description&amp;quot; and set &amp;quot;Expires&amp;quot; to the interval that suits your needs.&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Add&amp;quot;&lt;br /&gt;
[[File:Graph6.jpg|none|thumb|908x908px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy &amp;quot;Value ID&amp;quot;    We will use this later &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;!!! ATTENTION !!! the key value will never be visible again so ensure to copy it.&#039;&#039;&#039; [[File:Graph7.png|none|thumb|790x790px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;VALUE Key into &amp;quot;UMS Configurator&amp;quot; field Client Secret&lt;br /&gt;
&lt;br /&gt;
[[File:Tewxddf.png|frameless|566x566px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;Directory Tenant ID &amp;quot; into &amp;quot;UMS Configurator&amp;quot; Field Tenant ID&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;Appplication Client ID &amp;quot; into &amp;quot;UMS Configurator&amp;quot; Field Client ID&lt;br /&gt;
[[File:Id.jpg|none|thumb|1120x1120px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Api permissions&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Add a permission&amp;quot;&lt;br /&gt;
[[File:Graph8.png|none|thumb|780x780px]]&lt;br /&gt;
&lt;br /&gt;
==Setup UMS to use Application just Created==&lt;br /&gt;
In the UMS Configurator go to Modules-&amp;gt;Office 365 and click &amp;quot;SharePoint organization settings&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettings.png|none|thumb|600x600px]]&lt;br /&gt;
Choose your SharePoint organization setting and click &amp;quot;Edit...&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettingsEdit.png|none|thumb|600x600px]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;SharePointOrganizationSettings&amp;quot;&amp;gt;Input&amp;lt;/span&amp;gt; your &amp;quot;Tenant Name&amp;quot; ex. &amp;quot;cortenso&#039;&#039;&#039;.onmicrosoft.com&#039;&#039;&#039;&amp;quot;, paste the previously copied Application ID into &amp;quot;Client ID&amp;quot; field and paste previously copied KEY into &amp;quot;Client secret&amp;quot; and click &amp;quot;Ok&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettingsEditWindow.png|none|thumb|600x600px]]&lt;br /&gt;
You are now all set to use the new MS Graph integration.&lt;br /&gt;
&lt;br /&gt;
==Permissions overview==&lt;br /&gt;
&lt;br /&gt;
===Microsoft Graph===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+Default permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|User.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting attributes on the user in Office 365&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Group.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting group attributes on Office 365 groups&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|GroupMember.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Manage GroupMembers in Office 365&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Directory.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting attributes on the user in Azure Active Directory&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|MailboxSettings.ReadWrite&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to set mailbox settings in Office 365.&lt;br /&gt;
Used to get/create categories&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
Skemabrikker.exe&lt;br /&gt;
|-&lt;br /&gt;
|Calendars.ReadWrite&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to allow UMS to sync calendar events to Office 365&lt;br /&gt;
|Skemabrikker.exe&lt;br /&gt;
|-&lt;br /&gt;
|Files.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to provision OneDrive for users&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+Teams sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|EduRoster.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Allows the UMS to handle users on roster&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Member.Read.Hidden&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Allows the UMS to handle users on roster&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamMember.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to add or remove users from Team&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamsTab.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to create tabs in teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamsAppInstallation.ReadForTeam.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to install app in teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Team.Create&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to create Teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Team.ReadBasic.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to read teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===SharePoint===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+SharePoint sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Sites.FullControl.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Have full control of all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|Sites.Manage.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write items and lists in all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|Sites.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write items in all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|User.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write user profiles&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===OneNote===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+OneNote sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Notes.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|}&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Password Sync&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Roles and Administrators&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Reset password for Users&lt;br /&gt;
|Password_Sync&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Password Administrator===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To Add Password administrator roles. Click &#039;&#039;&#039;Roles and administrator&#039;&#039;&#039;&lt;br /&gt;
[[File:Passwordd.png|left|thumb|1167x1167px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click Add Assignments and Search for graph user&lt;br /&gt;
Click Add. &lt;br /&gt;
[[File:Password1.png|left|1167x1167px|thumb]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=MSGraphPermissions&amp;diff=4110</id>
		<title>MSGraphPermissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=MSGraphPermissions&amp;diff=4110"/>
		<updated>2021-10-26T08:58:13Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;MS graph permissions is a UMS backend requirement from version 8.5.203 which was released in June 2021&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MS graph permissions are required by these UMS modules (LiveAtEdu,OneNote, Sharepoint, Office 365 Timeblok and MS Teams)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Creating App Registration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to [http://portal.azure.com Azure Portal] and login with you admin account( &#039;&#039;&#039;the same UMS uses&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;!!! ATTENTION !!!  use service account that UMS uses&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When logged in go to Azure Active Directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Graph1.jpg|left|thumb|832x832px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to App registrations&lt;br /&gt;
[[File:Graph2.jpg|none|thumb|831x831px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click on New application registration&lt;br /&gt;
[[File:Graph3.jpg|none|thumb|909x909px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Give the new App a name ex. &amp;quot;UMSGraph&amp;quot;, Choose &amp;quot;Web app / API&amp;quot; in Application type, set &amp;quot;Sign-on URL&amp;quot; to &amp;quot;http://localhost&amp;quot;. After setting Application Permission values click &amp;quot;Create&amp;quot;&lt;br /&gt;
[[File:Graph43.jpg|none|thumb|913x913px]]&lt;br /&gt;
You will return to previous screen, here click &amp;quot;your new app&amp;quot;&lt;br /&gt;
[[File:Grahp5.jpg|none|thumb|905x905px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Certificates &amp;amp; secrets&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;New Client Secret&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enter a &amp;quot;Description&amp;quot; and set &amp;quot;Expires&amp;quot; to the interval that suits your needs.&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Add&amp;quot;&lt;br /&gt;
[[File:Graph6.jpg|none|thumb|908x908px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy &amp;quot;Value ID&amp;quot;    We will use this later &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;!!! ATTENTION !!! the key value will never be visible again so ensure to copy it.&#039;&#039;&#039; [[File:Graph7.png|none|thumb|790x790px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;VALUE Key into &amp;quot;UMS Configurator&amp;quot; field Client Secret&lt;br /&gt;
&lt;br /&gt;
[[File:Tewxddf.png|frameless|566x566px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;Directory Tenant ID &amp;quot; into &amp;quot;UMS Configurator&amp;quot; Field Tenant ID&lt;br /&gt;
&lt;br /&gt;
Copy the &amp;quot;Appplication Client ID &amp;quot; into &amp;quot;UMS Configurator&amp;quot; Field Client ID&lt;br /&gt;
[[File:Id.jpg|none|thumb|1120x1120px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Api permissions&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Add a permission&amp;quot;&lt;br /&gt;
[[File:Graph8.png|none|thumb|780x780px]]&lt;br /&gt;
&lt;br /&gt;
==Setup UMS to use Application just Created==&lt;br /&gt;
In the UMS Configurator go to Modules-&amp;gt;Office 365 and click &amp;quot;SharePoint organization settings&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettings.png|none|thumb|600x600px]]&lt;br /&gt;
Choose your SharePoint organization setting and click &amp;quot;Edit...&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettingsEdit.png|none|thumb|600x600px]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;SharePointOrganizationSettings&amp;quot;&amp;gt;Input&amp;lt;/span&amp;gt; your &amp;quot;Tenant Name&amp;quot; ex. &amp;quot;cortenso&#039;&#039;&#039;.onmicrosoft.com&#039;&#039;&#039;&amp;quot;, paste the previously copied Application ID into &amp;quot;Client ID&amp;quot; field and paste previously copied KEY into &amp;quot;Client secret&amp;quot; and click &amp;quot;Ok&amp;quot;&lt;br /&gt;
[[File:UMSConfiguratorSharepointOrganizationSettingsEditWindow.png|none|thumb|600x600px]]&lt;br /&gt;
You are now all set to use the new MS Graph integration.&lt;br /&gt;
&lt;br /&gt;
==Permissions overview==&lt;br /&gt;
&lt;br /&gt;
===Microsoft Graph===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+Default permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|User.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting attributes on the user in Office 365&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Group.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting group attributes on Office 365 groups&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|GroupMember.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Manage GroupMembers in Office 365&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Directory.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Setting attributes on the user in Azure Active Directory&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|MailboxSettings.ReadWrite&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to set mailbox settings in Office 365.&lt;br /&gt;
Used to get/create categories&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
Skemabrikker.exe&lt;br /&gt;
|-&lt;br /&gt;
|Calendars.ReadWrite&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to allow UMS to sync calendar events to Office 365&lt;br /&gt;
|Skemabrikker.exe&lt;br /&gt;
|-&lt;br /&gt;
|Files.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to provision OneDrive for users&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+Teams sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|EduRoster.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Allows the UMS to handle users on roster&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Member.Read.Hidden&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Allows the UMS to handle users on roster&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamMember.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to add or remove users from Team&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamsTab.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to create tabs in teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|TeamsAppInstallation.ReadForTeam.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to install app in teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Team.Create&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to create Teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|-&lt;br /&gt;
|Team.ReadBasic.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Used to read teams&lt;br /&gt;
|Live_at_edu.exe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===SharePoint===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+SharePoint sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Sites.FullControl.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Have full control of all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|Sites.Manage.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write items and lists in all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|Sites.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write items in all site collections&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|-&lt;br /&gt;
|User.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Read and write user profiles&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===OneNote===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+OneNote sync permissions&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Notes.ReadWrite.All&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|&lt;br /&gt;
|Office365_SP_OneNote.exe&lt;br /&gt;
|}&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Password Sync&lt;br /&gt;
!Permission name&lt;br /&gt;
!Permission type&lt;br /&gt;
!API&lt;br /&gt;
!Used for&lt;br /&gt;
!Used by&lt;br /&gt;
|-&lt;br /&gt;
|Roles and Administrators&lt;br /&gt;
|Application&lt;br /&gt;
|Microsoft Graph&lt;br /&gt;
|Reset password for Users&lt;br /&gt;
|Password_Sync&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Password Administrator===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To Add Password administrator roles. Click &#039;&#039;&#039;Roles and administrator&#039;&#039;&#039;&lt;br /&gt;
[[File:Passwordd.png|left|thumb|1167x1167px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click Add Assignments and Search for graph user&lt;br /&gt;
&lt;br /&gt;
Click Add. &lt;br /&gt;
[[File:Password1.png|left|1167x1167px|thumb]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=STIL_UNI_Login&amp;diff=3623</id>
		<title>STIL UNI Login</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=STIL_UNI_Login&amp;diff=3623"/>
		<updated>2020-06-08T07:17:25Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;UNI•Login er et digitalt ID for børn, unge og ansatte på institutioner, som giver adgang til nationale tjenester og en lang række pædagogiske services og online læremidler. UNI•Login kan bruges både til gratis webtjenester og til webtjenester, som institutionerne kan abonnere på. Institutionerne benytter ofte UNI•Login til adgangsstyring på lokalnet, intranet, trådløse net, skytjenester og andre webløsninger, hvor brugerne skal sikres nem adgang. UNI-Login leveres af STIL, Styrelsen for IT og Læring, der tidligere hed Uni-C.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
===Supported administrative systems===&lt;br /&gt;
Alle&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
[[UMS]]&lt;br /&gt;
&lt;br /&gt;
===Should third party be contacted===&lt;br /&gt;
Kræver en adgang til WS17 ved STIL som skal bestilles.&lt;br /&gt;
&lt;br /&gt;
https://viden.stil.dk/display/STILVIDENOFFENTLIG/Tilslutning#expand-Sdanopretterduentilslutningsaftale&lt;br /&gt;
&lt;br /&gt;
OLD LINK (http://www.stil.dk/It-og-administration/Brugere-og-adgangsstyring/Udbyder-UNILogin/UNI-Login-Eksport)&lt;br /&gt;
&lt;br /&gt;
==UNI-C Dataprovider==&lt;br /&gt;
Sender UNI-Login’s til STIL&lt;br /&gt;
&lt;br /&gt;
For at sende disse data til STIL skal man aktiverer servicen &#039;&#039;&#039;UNILogin Upload&#039;&#039;&#039;. Se mere her [[Configurator/Services]]&lt;br /&gt;
&lt;br /&gt;
Når det er indtastet vil servicen hvert 5 minut se efter om der er kommet en ny students tabel og sende nye data til STIL.&lt;br /&gt;
&lt;br /&gt;
Når man har indtastet navnet og gemt skal man starte servicen &amp;quot;&#039;&#039;&#039;UMS UNILogin Upload&#039;&#039;&#039;&amp;quot; eller genstarte serveren.&lt;br /&gt;
&lt;br /&gt;
Sættes op på den enkelte template under UNI-C noden&lt;br /&gt;
[[File:STIL Account setting.jpg|none|thumb|485x485px]]&lt;br /&gt;
&lt;br /&gt;
===Account settings===&lt;br /&gt;
Her bestemmes hvor man vil sende brugerne fra den pågældende template hen.&lt;br /&gt;
&lt;br /&gt;
===Institution number===&lt;br /&gt;
Det institutions nummer hvor data skal sendes hen.&lt;br /&gt;
&lt;br /&gt;
===Upload UNI Logins to STIL===&lt;br /&gt;
Tells UMS that all templates using this setting will be uploaded to STIL. This will create/add users to the institution number.&lt;br /&gt;
&lt;br /&gt;
===Create new UNI login when CPR changes===&lt;br /&gt;
When a CPR changes UMS will tell STIL that it has to create a new UNI login.&lt;br /&gt;
&lt;br /&gt;
If this checkbox is not checked, then you must manually change the UNI Login at https://ba.emu.dk at the same time you change it in the administrative system.&lt;br /&gt;
&lt;br /&gt;
=== Access group ===&lt;br /&gt;
Members of this Active Directory group will have access to this account in UMS Web.&lt;br /&gt;
&lt;br /&gt;
The module is called STIL Settings and can be found under the Control Panel in UMS Web.&lt;br /&gt;
&lt;br /&gt;
===Write back webservice pincode===&lt;br /&gt;
Bruges til kommunikation med elevplan hvis fraværs beskeder skal sendes til dem&lt;br /&gt;
&lt;br /&gt;
===Elevplan Institution number===&lt;br /&gt;
Det elevplans institutions nummer hvor data skal sendes hen.&lt;br /&gt;
&lt;br /&gt;
===Elevplan keyord===&lt;br /&gt;
SMS keyword som UMS reagerer på når det sendes ind til UMS gateway. Når det står først i Sms’en vil den blive sendt videre til elevplan. Man vil modtage en SMS fra elevplan om at den er modtaget hvis ikke man får den indenfor 30 minutter, skal man gensende Sms’en.&lt;br /&gt;
&lt;br /&gt;
===Company mail address for employees===&lt;br /&gt;
Det bruges når der laves en upload af data til STIL til unilogin generering (UNILogin Upload). Man kan bestemme den adresse man har ved uddannelses institutionen. Bruges f.eks. til SDBF systemet.&lt;br /&gt;
&lt;br /&gt;
===Company mail address for students===&lt;br /&gt;
Det bruges når der laves en upload af data til STIL til unilogin generering (UNILogin Upload). Man kan bestemme den adresse man har ved uddannelses institutionen.&lt;br /&gt;
&lt;br /&gt;
===Mail===&lt;br /&gt;
Lister felterne fra students tabellen hvis man lader den stå i &amp;lt;Not Used&amp;gt; vil den automatisk bruge brugernavnet som man har i AD.&lt;br /&gt;
&lt;br /&gt;
===Mail Domain===&lt;br /&gt;
Her indtaster man f.eks. inlogic.dk&lt;br /&gt;
&lt;br /&gt;
Hvis ikke man vælger at indtaste noget i feltet mail domain men kun sætter mail feltet vil mail feltet skulle indeholde hele mail adressen.&lt;br /&gt;
&lt;br /&gt;
==UNI-Login Settings==&lt;br /&gt;
[[File:Stiluniloginsettings.png|none|thumb|569x569px]]&lt;br /&gt;
&lt;br /&gt;
===Use UNI-Login===&lt;br /&gt;
Her sættes der op om denne template skal bruge UNI-Login&lt;br /&gt;
&lt;br /&gt;
===Force update UNI-Login===&lt;br /&gt;
Hvis man ændrer UNI-Login skal det så slå igennem i UMS. Dette vil betyde at brugeren bliver nedlagt og en ny oprettet.&lt;br /&gt;
&lt;br /&gt;
==Upload af data==&lt;br /&gt;
For at kunne uploade data som sendes til STIL skal man have et Onlinetjeneste-abonnement. Informationer om dette kan findes her.&lt;br /&gt;
&lt;br /&gt;
http://www.stil.dk/It-og-administration/Brugere-og-adgangsstyring/Udbyder-UNILogin/Onlinetjenester&lt;br /&gt;
&lt;br /&gt;
For at bestille skal man sende en mail til [[Mailto:uniloginudbyder@STIL.dk| uniloginudbyder@STIL.dk]] med teksten og bestillingsformularen.&lt;br /&gt;
&lt;br /&gt;
===Bestillingsformular===&lt;br /&gt;
 Vi vil gerne have en konto som har adgang til WS10 upload og WS17 download af UNI-Logins. inLogic løsning.&lt;br /&gt;
 Oplysninger&lt;br /&gt;
 IP:&lt;br /&gt;
 Institutions numre:&lt;br /&gt;
Dette findes under Modules -&amp;gt; UNI-Sync&lt;br /&gt;
[[File:STIL UNISync setup.jpg|none|thumb|368x368px]]&lt;br /&gt;
&lt;br /&gt;
===Activate UNI-Sync===&lt;br /&gt;
Skal vi sende/hente data fra STIL&lt;br /&gt;
&lt;br /&gt;
===Institution numbers===&lt;br /&gt;
Indtast hvilke institutions numre der skal hentes fra  &lt;br /&gt;
&lt;br /&gt;
===Data provider settings (Onlinetjeneste-abonnement)===&lt;br /&gt;
Indstillinger som skal bruges til WS10 (Sende data) og WS17 (hente data)&lt;br /&gt;
&lt;br /&gt;
http://www.stil.dk/~/media/STIL/Filer/PDF13_14/140521%20UNI%20Login%20Import%20WS10%20v31.pdf&lt;br /&gt;
&lt;br /&gt;
http://www.stil.dk/~/media/STIL/Filer/Publikationer/Tekniske%20vejledninger/UNI-ogin%20Eksport%20WS17%20v1.3.pdf&lt;br /&gt;
&lt;br /&gt;
===Username===&lt;br /&gt;
Username need to access webservice.&lt;br /&gt;
&lt;br /&gt;
===Password===&lt;br /&gt;
Password need to access webservice.&lt;br /&gt;
&lt;br /&gt;
===Password synchronization (UNI-Sync abonnement)===&lt;br /&gt;
For at kunne password synkroniserer med STIL skal man have et UNI-Sync abonnement. Informationer findes her&lt;br /&gt;
&lt;br /&gt;
http://www.stil.dk/It-og-administration/Brugere-og-adgangsstyring/Institutioner-og-kommuner/UNISync&lt;br /&gt;
&lt;br /&gt;
(Det er kun nødvendigt at sætte kryds ved punkt A3 =” Automatisk via en webservice (kræver kendskab til SOAP)”.)&lt;br /&gt;
&lt;br /&gt;
===Username===&lt;br /&gt;
Username need to access webservice.&lt;br /&gt;
&lt;br /&gt;
===Password===&lt;br /&gt;
Password need to access webservice.&lt;br /&gt;
&lt;br /&gt;
==Opsætning på brugeradministrationen==&lt;br /&gt;
For at kunne hente fra STIL og sende data til STIL skal man give lov til det. Det sætter man op i &amp;lt;nowiki&amp;gt;https://ba.emu.dk&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En vejledning for opsætningen af WS17 kan findes her.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;http://www.stil.dk/~/media/STIL/Filer/PDF15/150714%2017ws%20afsend%20og%20godkend%20Dataforspoergsel%20til%20skoler.pdf&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UMS vil hente alle WS10 &lt;br /&gt;
&lt;br /&gt;
===Pakke===&lt;br /&gt;
Man skal som minimum have adgang til en fuld eller mellem pakke. Specifikationerne for de enkelte pakker kan ses nedenunder.&lt;br /&gt;
&lt;br /&gt;
Dataaftale for UNI-Login Eksport&lt;br /&gt;
&lt;br /&gt;
(UNI-Login webservice ws17) &lt;br /&gt;
&lt;br /&gt;
Udbydere med ws17 dataadgang kan trække nedenstående information afhængigt af den valgte pakke.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;8&amp;quot; | - Den fulde pakke: Alle data i skemaet - markeret                      F &lt;br /&gt;
&lt;br /&gt;
- Mellem pakken: Data i skemaet,  som er markeret                  M &lt;br /&gt;
&lt;br /&gt;
- Den lille pakke: Data i  skemaet, som er markeret                   L   &lt;br /&gt;
&lt;br /&gt;
Data om ansatte,  elever, værger og andre kontaktpersoner&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - CPR-nummer&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Fornavn(e)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Efternavn&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Privatadresse (Se  adresseinformation)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Hjemmetelefon (Se  telefonnummer-information)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Arbejdstelefon (Se  telefonnummer-information)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Mobiltelefon (Se  telefonnummer-information)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - E-mail&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Fødselsdag&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Køn&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - PhotoId&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |Adresseinformation:&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Om adressen er beskyttet&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Adressens  vejnavn, nr. og etage&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Postnummer&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - By&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Landekode&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Land&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Kommunekode&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Kommunenavn&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |Telefonnummer-information:&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Om telefonnummeret er beskyttet&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Telefonnummer&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |Supplerende data om elever&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Studietype (elev eller stud)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Studienummer&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Elevens niveau (for  grundskoleelever)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Elevens hovedgruppe (klasse)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Yderligere  grupper elever er tilknyttet&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Kontaktlærer&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | -  Kontaktperson(er)s relation (mor, far osv.)&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Om  kontaktperson(er) har forældremyndighed&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - Afdeling,  bygning eller værelsesnummer på efterskoler&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | - ID i det lokale  studieadministrative system&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |F&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |M&lt;br /&gt;
|L&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Supplerende data om ansatte&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Ansættelsestype  (lærer, tap, pæd eller gæst)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Initialer&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Stilling&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Afdeling,  bygning eller værelsesnummer på efterskoler&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Grupper medarbejderen er  tilknyttet&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- ID i det lokale  studieadministrative system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Data om UNI-Login  for ansatte og elever&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- UNI-Login brugernavn (brugerID)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Initialpassword&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Om  inititalpassword er gældende password&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Brugerens navn  i UNI-Login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- SkoleKom-navn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Brugerens  selvvalgte email-adresse i UNI-Login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Brugerens  selvvalgte mobilnummer i UNI-Login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Data om grupper på  institutionen&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Gruppeid&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Gruppenavn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Gruppetype&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Niveau&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Spor&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Startdato&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;- Slutdato&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|F&lt;br /&gt;
|M&lt;br /&gt;
|L&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Technical settings===&lt;br /&gt;
&lt;br /&gt;
====17ws - forspørgsel til skoler====&lt;br /&gt;
Log ind på ba.emu.dk – tryk dataaftaler&amp;gt;tryk på webservice forespørgsler&lt;br /&gt;
[[File:Stil1.png|none|thumb|642x642px]]&lt;br /&gt;
[[File:Stil2.png|none|thumb|642x642px]]&lt;br /&gt;
&lt;br /&gt;
Indtast en skoles institutionsnummer&amp;gt; tryk vis &amp;gt; Tryk opret&lt;br /&gt;
[[File:Stil3.png|none|thumb|642x642px]]&lt;br /&gt;
Set fra skolens side &amp;gt; klik på dataaftaler &amp;gt; godkend, dvs. tryk gem&lt;br /&gt;
[[File:Stil4.png|none|thumb|642x642px]]&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
===Hvordan checker jeg om min IP er åbnet hos STIL?===&lt;br /&gt;
Man kan teste adgangen via denne url:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://ws04.infotjeneste.uni-c.dk/infotjenesteunilogin-ws/ws?WSDL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Den skulle gerne returnere et xml. Dokument – hvis i får en Access denied, så er der ikke åbnet for jeres IP. &lt;br /&gt;
&lt;br /&gt;
===Hvilke CPR numre sendes til STIL (Gammel ordning)===&lt;br /&gt;
Alle rigtige CPR numre&lt;br /&gt;
&lt;br /&gt;
Alle Fiktive CPR numre begyndende med 6,7,8 eller 9 og som overholder modulus 11&lt;br /&gt;
&lt;br /&gt;
===Hvilke CPR numre bliver ikke sendt til STIL (Gammel ordning)===&lt;br /&gt;
Alle CPR numre som ikke overholder modulus 11&lt;br /&gt;
&lt;br /&gt;
Alle CPR numre som indeholder bogstaver &lt;br /&gt;
&lt;br /&gt;
===Hvilke CPR numre sendes til STIL (Ny ordning)===&lt;br /&gt;
Numerisk værdi der overholder modulus 11&lt;br /&gt;
&lt;br /&gt;
Hvis cpr numre indeholder bogstaver opretter UMS Uni-login på baggrund af SLI id.&lt;br /&gt;
&lt;br /&gt;
===Hvis man skifter CPR nummer beholder man så sit UNI Login===&lt;br /&gt;
Ja&lt;br /&gt;
&lt;br /&gt;
===Må der kører andre importer end den fra inLogic===&lt;br /&gt;
Nej, det vil ødelægge automatikken med at beholde sit unilogin hvis man skifter CPR. &lt;br /&gt;
&lt;br /&gt;
===Kan man få generet UNI-Login’s med det samme===&lt;br /&gt;
Ikke helt, men næsten.&lt;br /&gt;
&lt;br /&gt;
Det kræver 2 kørsler af GetStudents med en upload af data imellem (UNILogin Upload servicen skal have kørt). Inden man kører anden kørsel af GetStudents skal STIL have haft nok tid til at lægge data fra deres back end miljø ud til de webservice’s hvor man henter data. En tommel finger regel kunne være 20-30 minutter.&lt;br /&gt;
&lt;br /&gt;
===Hvordan nulstiller jeg common secret (udregnes ved første synkronisering)===&lt;br /&gt;
Åbner den tabel der hedder PasswordSyncGeneralSettings og sletter indholdet af kollonen UniCCommonSecret &lt;br /&gt;
&lt;br /&gt;
===Skal Easy-C jobs slåes fra (C001 og C002)===&lt;br /&gt;
Ja de må ikke køre sammen med vores&lt;br /&gt;
&lt;br /&gt;
===Skal LUDUS jobs slåes fra===&lt;br /&gt;
Ja kun upload man kan stadig download til ludus&lt;br /&gt;
&lt;br /&gt;
===Error fra stil på uni-sync/password sync===&lt;br /&gt;
11/5/2018 11:05:01 AM - (ChangeUNI_CPassword) Change password for user - XXX0016 Error = &#039;ClientIP=87.54.38.xxx&#039;, &#039;AdpCommkeyStatus=2&#039;, &#039;checkCryptParam: md5sumNotEqual&#039;, &#039;BadAuth&#039;, &#039;ul-front-db-prod1&#039;, &#039;ul-wls-db-prod6&#039;, &#039;2 ms&#039; &lt;br /&gt;
&lt;br /&gt;
Error rettes ved at nulstille UniCCommonSecret i SQL database. (update PasswordSyncGeneralSettingsset UniCCommonSecret = &amp;lt;nowiki&amp;gt;&#039;&#039;&amp;lt;/nowiki&amp;gt;) &lt;br /&gt;
&lt;br /&gt;
Efter nulstilling af UniCCommonSecret, skal passwordsync jobbet køre igen.&lt;br /&gt;
&lt;br /&gt;
===InstitutionPerson ikke indlæst! Ikke forventet CPR til localPersonID - skal omidentificeres: LocalPersonId====&lt;br /&gt;
Read this [[STIL UNI Login#Create new UNI login when CPR changes]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Errors = Fejl 8: Gruppen blev sat til en anden GroupType end Hovedgruppe===&lt;br /&gt;
Errors = Fejl 8: Gruppen blev sat til en anden GroupType end Hovedgruppe, men der findes 1 Student med gruppen som MainGroupId fra en anden importkilde! Fjern f.rst alle elever fra hovedgruppen i den anden kilde: GroupId=20amu006&lt;br /&gt;
&lt;br /&gt;
Fejlen rettes ved at sikre at der ikke køres nogen andre imports en fra UMS. Hvis der er oprettet/tilknyttet nogen brugere manuelt til institutionen skal de også slettes.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3281</id>
		<title>Attendance Registration</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3281"/>
		<updated>2020-01-22T15:14:08Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* What does the Absence Status code mean? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Attendance Registration is a tool for the educational sector that makes it easy to register attendance. Through a simple and intuitive interface, the teacher can register who is present, who is late, and who is absent. Registering attendance can be done in a matter of seconds, simply by clicking the button with the student’s name and picture. The interface uses colour codes, which makes it easy to see what the individual students are registered as. You decide which attendance options you want to use - i.e. options for being late, for legal absence, and illegal absence - as well as which colours are used for the different options. When attendance is registered, UMS automatically writes back to the administrative system - if supported. The interface also supports the possibility to see if the student has sent a text message to the school or if the staff has written notes regarding the student’s attendance.&lt;br /&gt;
&lt;br /&gt;
There are references to other UMS modules, e.g. SMS, in this guide. In case the mentioned modules are not present in your environment, you can ignore these settings.&lt;br /&gt;
&lt;br /&gt;
In order to edit templates, it is also required to have a basic knowledge about the UMS configurator.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
===Supported administrative systems===&lt;br /&gt;
&lt;br /&gt;
*Easy-C&lt;br /&gt;
&lt;br /&gt;
*Ludus&lt;br /&gt;
&lt;br /&gt;
*SIS&lt;br /&gt;
&lt;br /&gt;
*Other systems where it is possible to retrieve a timetable for students and teachers&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
&lt;br /&gt;
*[[UMS]]&lt;br /&gt;
&lt;br /&gt;
*[[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
===Testing after setup===&lt;br /&gt;
To start testing after setup, you must log in as a teacher. See if you have access to attendance registration on the front page of UMS portal.&lt;br /&gt;
&lt;br /&gt;
Click on attendance registration and check that you can search for timetables for students, teachers, and classes.&lt;br /&gt;
&lt;br /&gt;
Check that you can register individual students as absent.&lt;br /&gt;
&lt;br /&gt;
===What is necessary to get started===&lt;br /&gt;
To get started, it is necessary to have a running [[UMS]] installation.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Install [[UMS]] and [[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
==Technical settings==&lt;br /&gt;
&lt;br /&gt;
===Settings for UMS Attendance Basic===&lt;br /&gt;
All settings for UMS Attendance Basic is set in the configurator. In the main menu under &#039;Settings/Services&#039;, it is necessary to set the &#039;Absence service&#039; to run on a server. The service is responsible for sending text messages to students that are registered as absent. Please make sure the service has started and is running. See example of the set up below.&lt;br /&gt;
[[File:AbsenceServiceSetup.png|none|thumb|636x636px]]&lt;br /&gt;
&lt;br /&gt;
===Global settings===&lt;br /&gt;
Global settings are settings that are valid for the entire school. For settings that can be altered per education, class, or similar, see &#039;Individual settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The Global settings are:&lt;br /&gt;
&lt;br /&gt;
*Attendance colours&lt;br /&gt;
*Design text messages sent to the students&lt;br /&gt;
*Granting access to teachers/employees and edit access to registration forward-looking&lt;br /&gt;
*Edit attendance types (late, approved, not approved)&lt;br /&gt;
&lt;br /&gt;
====Attendance colours====&lt;br /&gt;
Settings are found under &#039;Modules\Absence\colors&#039; in the main menu. Simply select the colours you want to use for each type of attendance. See example below.&lt;br /&gt;
[[File:Absencecolor.png|none|thumb|573x573px]]&lt;br /&gt;
&lt;br /&gt;
====Designing text messages sent to the students====&lt;br /&gt;
It is possible to preset text messages that will be sent to students if they are registered as absent. The settings are found under &#039;Modules\Absence\SMS&#039; in the main menu. The text messages can be set for each type of attendance both in Danish and English. It is also possible to create multiple text messages for each type of attendance. If you create multiple messages, the system will randomise these messages. Meaning, the system will send different messages to a student each time attendance is registered. See example below.&lt;br /&gt;
[[File:Absencesms.png|none|thumb|598x598px]]&lt;br /&gt;
&lt;br /&gt;
When you edit a message, there are several variables that can be used to ensuaking the messages more personalised. See example below.&lt;br /&gt;
[[File:Absencesmsvariables.png|none|thumb|1009x1009px]]&lt;br /&gt;
&lt;br /&gt;
====Granting access to teachers/employees and edit access to registration forward-looking====&lt;br /&gt;
Granting access to functions in the registration interface is done under &#039;Setup web access/Absence&#039;. Attendance basic allows &#039;register access&#039; and &#039;Future registration access&#039;. Enter a group (nested groups are allowed) with the teacher/employees that are allowed to use the specific function. See example below.&lt;br /&gt;
&lt;br /&gt;
The checkboxes have the following meaning:&lt;br /&gt;
&lt;br /&gt;
*&#039;Count too late on statistics&#039; – Not used for Attendance basic&lt;br /&gt;
*&#039;Show empty days&#039; – Should the day ruler show or omit days with no planned timetable?&lt;br /&gt;
*&#039;Show weekends&#039; – Should the day ruler show or omit weekends?&lt;br /&gt;
*&#039;Show legal&#039; – Is legal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show illegal&#039; – Is illegal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show too late&#039; – Is too late attendance used on the school/is it shown in the protocol?&lt;br /&gt;
&lt;br /&gt;
[[File:Absencewebsetup.png|none|thumb|828x828px]]&lt;br /&gt;
&lt;br /&gt;
=====Edit attendance types=====&lt;br /&gt;
To edit letters and text used in the attendance module, choose the button &#039;Select&#039; (see the window above).&lt;br /&gt;
&lt;br /&gt;
Double-click on the row containing the settings you want to edit. See below.&lt;br /&gt;
[[File:Absenceselect.png|none|thumb|874x874px]]&lt;br /&gt;
&lt;br /&gt;
===Individual settings===&lt;br /&gt;
Individual settings can be altered per education, class, or similar. For settings valid for the entire school, see &#039;Global settings&#039;. If an individual setting for a specific group is needed, it is necessary to create the group with the students in question beforehand. These settings can be altered under Configurator\Templates\Edit\Absence\Manage\Add a new or edit an existing setting.    &lt;br /&gt;
[[File:Template Absence Setting.jpg|none|thumb|784x784px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====SMS and App settings for notify absence====&lt;br /&gt;
&lt;br /&gt;
*&#039;SMS Sick Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will not be stored in UMS.&lt;br /&gt;
*&#039;SMS absence Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will be stored in UMS.&lt;br /&gt;
&lt;br /&gt;
*&#039;Default incoming SMS status&#039; - These are settings for which type of attendance the system should set as default when receiving a message from a student notifying absence. The teacher will see this status in the attendance registration interface. E.g. when the default type of attendance is &#039;Legal absence&#039;, students will be marked as &#039;Legal absence&#039; when notifying absent&lt;br /&gt;
*&#039;Ignore messages for today start/end&#039; - In the set time span, it is not possible for a student to send a text message to notify absence. This means that if the message is received before the given start time, e.g. 10 a.m., the system will check the students schedule for timetable blocks that day and mark the blocks with the default attendance status, e.g. &#039;Legal absence&#039;. The system will then send a reply confirming the student is marked absent. If the message is received between the start and end time, e.g. 10 a.m. and 3 p.m., the system will send the student a reply, saying it is not allowed to notify absence at this time. If the message is received after the given end time, e.g. 3.pm., the system will check the schedule for timetable blocks the following day and mark those with the default attendance status, e.g. &#039;Legal absence&#039; If this feature is set to 00:00 - 00:00 students cannot register as absent. If you want an &amp;quot;Always register for the current day&amp;quot;-functionality, set it to 23:59 - 00:00&lt;br /&gt;
*&#039;Require reason&#039; - The school can require the students to give a reason when notifying absence. Check this box if students have to write a reason in order to register as absent&lt;br /&gt;
&lt;br /&gt;
====Misc settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Use cards&#039; - This enables students to register via their student ID&#039;s via Bianco. Check this box if the student is allowed to register via card&lt;br /&gt;
*&#039;Show watermark at %&#039; - If the school has a limitation for how high attendance percentage is allowed for a student, this can be set as visible. Check this box if it should be visible if the students are above the accepted limit&lt;br /&gt;
*&#039;Days back&#039; - This setting decides how many days backwards a teacher is allowed to register and edit attendance. Set the number of days that are allowed in the drop-down menu &#039;Days back&#039;. Please note that this setting cannot exceed the number of days backwards in the global timetable block data job!&lt;br /&gt;
*&#039;Too late&#039; - This shows the number of minutes a late show should count. &#039;Too late&#039; sets the number of minutes late attendance should count. If a student is late for class it will be registered as e.g. 10 minutes absence. Set the number of minutes that should count in this box&lt;br /&gt;
*&#039;Show percent on studentstat&#039; - Check this box, if students are allowed to see their attendance percent under &#039;My attendance&#039;&lt;br /&gt;
*&#039;Send SMS&#039; - When a student is registered as absent, the system can reply with a text message. Check this box to enable the system to send a reply&lt;br /&gt;
*&#039;Default calculation view&#039; - Choose between &amp;quot;Display calculation in lessons&amp;quot; or &amp;quot;Display calculations in minutes&amp;quot;&lt;br /&gt;
*&#039;Lesson length&#039; - Number of minutes one lesson counts for&lt;br /&gt;
*&#039;Time interval for calculation&#039; - Select the time interval for the calculation of my absence&lt;br /&gt;
*&#039;Show Course&#039; - Check this box to show course view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Activity&#039; - Check this box to show activity view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Grades&#039; - Check this box to show grades in statistics&lt;br /&gt;
&lt;br /&gt;
====Student reason settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Allow students to register absence reason&#039; - This setting allows students to create an absence reason when they are registered as absent&lt;br /&gt;
*&#039;Use Cutoff Day&#039; - This setting changes the &#039;Register absence&#039; feature from being reliant on a specific amount of days back, to instead be fixed to a specific amount of days into a month.&lt;br /&gt;
*&#039;Cutoff day of month&#039; - At this day of the month the absence gets &amp;quot;locked&amp;quot; for the previous month.&lt;br /&gt;
*&#039;Days back&#039; - This sets how many days backwards students are allowed to add an absence reason on a course. E.g. the student can register an absence reason 7 days backwards&lt;br /&gt;
*&#039;Show Admin/teacher notes in app&#039; - Changes whether the student can see administration and teacher-written notes on absence entries. They are presented in the app with a lock icon and cursive text.&lt;br /&gt;
&lt;br /&gt;
[[File:Admin teacher app notes.jpg|border|frameless]]&lt;br /&gt;
&lt;br /&gt;
==[[Attendance_Registration/WarningReports|Warning reports]]==&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====What to do when a teacher can&#039;t register absence X days back ?====&lt;br /&gt;
A specific day in the absence registration system has a green checkmark if the teacher is allowed to register according to &amp;quot;Days back&amp;quot; absence settings on the template in UMS Configurator.&lt;br /&gt;
&lt;br /&gt;
Only members of the AD group configured in Websetup are allowed to register more days back than teachers.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====What to do when abscence can&#039;t be registrated due to double registration ?====&lt;br /&gt;
This error is due to double absence registration. Absence should be deleted in the administrativ program.&lt;br /&gt;
&lt;br /&gt;
(UpdateEasyW031) Update Error Username = benj4896 - TimeStamp = 26-09-2018 10:14:55 - ErrorCode = 6 - ErrorText = elev. 2510015153, dato 26.09.2018, lektion: 2 eksisterende fravær kan ikke overskrives&lt;br /&gt;
&lt;br /&gt;
====How can a teacher know that if a student has a pause?====&lt;br /&gt;
If a student has a pause, a small pause icon will be shown for that student.&lt;br /&gt;
Hovering with the mouse over the icon will show the pause interval.&amp;lt;br /&amp;gt;&lt;br /&gt;
The system will automatically handle how much absence a student should have, if they don&#039;t show up, but they have a pause.&lt;br /&gt;
&lt;br /&gt;
====What does the Absence Status code mean?====&lt;br /&gt;
When checking up on absence registration in the database each type of attendence will be substituted by a number as such: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status&lt;br /&gt;
! Attendance Type&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Attended&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Too Late&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Approved Absence&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Illegal Absence&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there are made changes to which [[Attendance_Registration#Granting_access_to_teachers.2Femployees_and_edit_access_to_registration_forward-looking|attendance types that are shown]] and the definitions of [[Attendance_Registration#Edit_attendance_types|these attendance types]] in the web configurator, it will affect the Absence Status code ie. removing Approved absence will leave only Status code 0, 1 and 3 to be used.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3280</id>
		<title>Attendance Registration</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3280"/>
		<updated>2020-01-22T15:07:31Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* What does the Absence Status Code mean? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Attendance Registration is a tool for the educational sector that makes it easy to register attendance. Through a simple and intuitive interface, the teacher can register who is present, who is late, and who is absent. Registering attendance can be done in a matter of seconds, simply by clicking the button with the student’s name and picture. The interface uses colour codes, which makes it easy to see what the individual students are registered as. You decide which attendance options you want to use - i.e. options for being late, for legal absence, and illegal absence - as well as which colours are used for the different options. When attendance is registered, UMS automatically writes back to the administrative system - if supported. The interface also supports the possibility to see if the student has sent a text message to the school or if the staff has written notes regarding the student’s attendance.&lt;br /&gt;
&lt;br /&gt;
There are references to other UMS modules, e.g. SMS, in this guide. In case the mentioned modules are not present in your environment, you can ignore these settings.&lt;br /&gt;
&lt;br /&gt;
In order to edit templates, it is also required to have a basic knowledge about the UMS configurator.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
===Supported administrative systems===&lt;br /&gt;
&lt;br /&gt;
*Easy-C&lt;br /&gt;
&lt;br /&gt;
*Ludus&lt;br /&gt;
&lt;br /&gt;
*SIS&lt;br /&gt;
&lt;br /&gt;
*Other systems where it is possible to retrieve a timetable for students and teachers&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
&lt;br /&gt;
*[[UMS]]&lt;br /&gt;
&lt;br /&gt;
*[[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
===Testing after setup===&lt;br /&gt;
To start testing after setup, you must log in as a teacher. See if you have access to attendance registration on the front page of UMS portal.&lt;br /&gt;
&lt;br /&gt;
Click on attendance registration and check that you can search for timetables for students, teachers, and classes.&lt;br /&gt;
&lt;br /&gt;
Check that you can register individual students as absent.&lt;br /&gt;
&lt;br /&gt;
===What is necessary to get started===&lt;br /&gt;
To get started, it is necessary to have a running [[UMS]] installation.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Install [[UMS]] and [[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
==Technical settings==&lt;br /&gt;
&lt;br /&gt;
===Settings for UMS Attendance Basic===&lt;br /&gt;
All settings for UMS Attendance Basic is set in the configurator. In the main menu under &#039;Settings/Services&#039;, it is necessary to set the &#039;Absence service&#039; to run on a server. The service is responsible for sending text messages to students that are registered as absent. Please make sure the service has started and is running. See example of the set up below.&lt;br /&gt;
[[File:AbsenceServiceSetup.png|none|thumb|636x636px]]&lt;br /&gt;
&lt;br /&gt;
===Global settings===&lt;br /&gt;
Global settings are settings that are valid for the entire school. For settings that can be altered per education, class, or similar, see &#039;Individual settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The Global settings are:&lt;br /&gt;
&lt;br /&gt;
*Attendance colours&lt;br /&gt;
*Design text messages sent to the students&lt;br /&gt;
*Granting access to teachers/employees and edit access to registration forward-looking&lt;br /&gt;
*Edit attendance types (late, approved, not approved)&lt;br /&gt;
&lt;br /&gt;
====Attendance colours====&lt;br /&gt;
Settings are found under &#039;Modules\Absence\colors&#039; in the main menu. Simply select the colours you want to use for each type of attendance. See example below.&lt;br /&gt;
[[File:Absencecolor.png|none|thumb|573x573px]]&lt;br /&gt;
&lt;br /&gt;
====Designing text messages sent to the students====&lt;br /&gt;
It is possible to preset text messages that will be sent to students if they are registered as absent. The settings are found under &#039;Modules\Absence\SMS&#039; in the main menu. The text messages can be set for each type of attendance both in Danish and English. It is also possible to create multiple text messages for each type of attendance. If you create multiple messages, the system will randomise these messages. Meaning, the system will send different messages to a student each time attendance is registered. See example below.&lt;br /&gt;
[[File:Absencesms.png|none|thumb|598x598px]]&lt;br /&gt;
&lt;br /&gt;
When you edit a message, there are several variables that can be used to ensuaking the messages more personalised. See example below.&lt;br /&gt;
[[File:Absencesmsvariables.png|none|thumb|1009x1009px]]&lt;br /&gt;
&lt;br /&gt;
====Granting access to teachers/employees and edit access to registration forward-looking====&lt;br /&gt;
Granting access to functions in the registration interface is done under &#039;Setup web access/Absence&#039;. Attendance basic allows &#039;register access&#039; and &#039;Future registration access&#039;. Enter a group (nested groups are allowed) with the teacher/employees that are allowed to use the specific function. See example below.&lt;br /&gt;
&lt;br /&gt;
The checkboxes have the following meaning:&lt;br /&gt;
&lt;br /&gt;
*&#039;Count too late on statistics&#039; – Not used for Attendance basic&lt;br /&gt;
*&#039;Show empty days&#039; – Should the day ruler show or omit days with no planned timetable?&lt;br /&gt;
*&#039;Show weekends&#039; – Should the day ruler show or omit weekends?&lt;br /&gt;
*&#039;Show legal&#039; – Is legal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show illegal&#039; – Is illegal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show too late&#039; – Is too late attendance used on the school/is it shown in the protocol?&lt;br /&gt;
&lt;br /&gt;
[[File:Absencewebsetup.png|none|thumb|828x828px]]&lt;br /&gt;
&lt;br /&gt;
=====Edit attendance types=====&lt;br /&gt;
To edit letters and text used in the attendance module, choose the button &#039;Select&#039; (see the window above).&lt;br /&gt;
&lt;br /&gt;
Double-click on the row containing the settings you want to edit. See below.&lt;br /&gt;
[[File:Absenceselect.png|none|thumb|874x874px]]&lt;br /&gt;
&lt;br /&gt;
===Individual settings===&lt;br /&gt;
Individual settings can be altered per education, class, or similar. For settings valid for the entire school, see &#039;Global settings&#039;. If an individual setting for a specific group is needed, it is necessary to create the group with the students in question beforehand. These settings can be altered under Configurator\Templates\Edit\Absence\Manage\Add a new or edit an existing setting.    &lt;br /&gt;
[[File:Template Absence Setting.jpg|none|thumb|784x784px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====SMS and App settings for notify absence====&lt;br /&gt;
&lt;br /&gt;
*&#039;SMS Sick Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will not be stored in UMS.&lt;br /&gt;
*&#039;SMS absence Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will be stored in UMS.&lt;br /&gt;
&lt;br /&gt;
*&#039;Default incoming SMS status&#039; - These are settings for which type of attendance the system should set as default when receiving a message from a student notifying absence. The teacher will see this status in the attendance registration interface. E.g. when the default type of attendance is &#039;Legal absence&#039;, students will be marked as &#039;Legal absence&#039; when notifying absent&lt;br /&gt;
*&#039;Ignore messages for today start/end&#039; - In the set time span, it is not possible for a student to send a text message to notify absence. This means that if the message is received before the given start time, e.g. 10 a.m., the system will check the students schedule for timetable blocks that day and mark the blocks with the default attendance status, e.g. &#039;Legal absence&#039;. The system will then send a reply confirming the student is marked absent. If the message is received between the start and end time, e.g. 10 a.m. and 3 p.m., the system will send the student a reply, saying it is not allowed to notify absence at this time. If the message is received after the given end time, e.g. 3.pm., the system will check the schedule for timetable blocks the following day and mark those with the default attendance status, e.g. &#039;Legal absence&#039; If this feature is set to 00:00 - 00:00 students cannot register as absent. If you want an &amp;quot;Always register for the current day&amp;quot;-functionality, set it to 23:59 - 00:00&lt;br /&gt;
*&#039;Require reason&#039; - The school can require the students to give a reason when notifying absence. Check this box if students have to write a reason in order to register as absent&lt;br /&gt;
&lt;br /&gt;
====Misc settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Use cards&#039; - This enables students to register via their student ID&#039;s via Bianco. Check this box if the student is allowed to register via card&lt;br /&gt;
*&#039;Show watermark at %&#039; - If the school has a limitation for how high attendance percentage is allowed for a student, this can be set as visible. Check this box if it should be visible if the students are above the accepted limit&lt;br /&gt;
*&#039;Days back&#039; - This setting decides how many days backwards a teacher is allowed to register and edit attendance. Set the number of days that are allowed in the drop-down menu &#039;Days back&#039;. Please note that this setting cannot exceed the number of days backwards in the global timetable block data job!&lt;br /&gt;
*&#039;Too late&#039; - This shows the number of minutes a late show should count. &#039;Too late&#039; sets the number of minutes late attendance should count. If a student is late for class it will be registered as e.g. 10 minutes absence. Set the number of minutes that should count in this box&lt;br /&gt;
*&#039;Show percent on studentstat&#039; - Check this box, if students are allowed to see their attendance percent under &#039;My attendance&#039;&lt;br /&gt;
*&#039;Send SMS&#039; - When a student is registered as absent, the system can reply with a text message. Check this box to enable the system to send a reply&lt;br /&gt;
*&#039;Default calculation view&#039; - Choose between &amp;quot;Display calculation in lessons&amp;quot; or &amp;quot;Display calculations in minutes&amp;quot;&lt;br /&gt;
*&#039;Lesson length&#039; - Number of minutes one lesson counts for&lt;br /&gt;
*&#039;Time interval for calculation&#039; - Select the time interval for the calculation of my absence&lt;br /&gt;
*&#039;Show Course&#039; - Check this box to show course view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Activity&#039; - Check this box to show activity view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Grades&#039; - Check this box to show grades in statistics&lt;br /&gt;
&lt;br /&gt;
====Student reason settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Allow students to register absence reason&#039; - This setting allows students to create an absence reason when they are registered as absent&lt;br /&gt;
*&#039;Use Cutoff Day&#039; - This setting changes the &#039;Register absence&#039; feature from being reliant on a specific amount of days back, to instead be fixed to a specific amount of days into a month.&lt;br /&gt;
*&#039;Cutoff day of month&#039; - At this day of the month the absence gets &amp;quot;locked&amp;quot; for the previous month.&lt;br /&gt;
*&#039;Days back&#039; - This sets how many days backwards students are allowed to add an absence reason on a course. E.g. the student can register an absence reason 7 days backwards&lt;br /&gt;
*&#039;Show Admin/teacher notes in app&#039; - Changes whether the student can see administration and teacher-written notes on absence entries. They are presented in the app with a lock icon and cursive text.&lt;br /&gt;
&lt;br /&gt;
[[File:Admin teacher app notes.jpg|border|frameless]]&lt;br /&gt;
&lt;br /&gt;
==[[Attendance_Registration/WarningReports|Warning reports]]==&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====What to do when a teacher can&#039;t register absence X days back ?====&lt;br /&gt;
A specific day in the absence registration system has a green checkmark if the teacher is allowed to register according to &amp;quot;Days back&amp;quot; absence settings on the template in UMS Configurator.&lt;br /&gt;
&lt;br /&gt;
Only members of the AD group configured in Websetup are allowed to register more days back than teachers.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====What to do when abscence can&#039;t be registrated due to double registration ?====&lt;br /&gt;
This error is due to double absence registration. Absence should be deleted in the administrativ program.&lt;br /&gt;
&lt;br /&gt;
(UpdateEasyW031) Update Error Username = benj4896 - TimeStamp = 26-09-2018 10:14:55 - ErrorCode = 6 - ErrorText = elev. 2510015153, dato 26.09.2018, lektion: 2 eksisterende fravær kan ikke overskrives&lt;br /&gt;
&lt;br /&gt;
====How can a teacher know that if a student has a pause?====&lt;br /&gt;
If a student has a pause, a small pause icon will be shown for that student.&lt;br /&gt;
Hovering with the mouse over the icon will show the pause interval.&amp;lt;br /&amp;gt;&lt;br /&gt;
The system will automatically handle how much absence a student should have, if they don&#039;t show up, but they have a pause.&lt;br /&gt;
&lt;br /&gt;
====What does the Absence Status code mean?====&lt;br /&gt;
When checking up on absence registration in the database each type of attendence will be substituted by a number as such: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status&lt;br /&gt;
! Attendance Type&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Attended&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Too Late&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Approved Absence&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Illegal Absence&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there are made changes to which [[Attendance_Registration#Granting_access_to_teachers.2Femployees_and_edit_access_to_registration_forward-looking|attendance types that are shown]] and the definitions of [[Attendance_Registration#Edit_attendance_types|these attendance types]] in the web configurator, it will affect the Absence Status Code.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3279</id>
		<title>Attendance Registration</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Attendance_Registration&amp;diff=3279"/>
		<updated>2020-01-22T15:07:03Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Attendance Registration is a tool for the educational sector that makes it easy to register attendance. Through a simple and intuitive interface, the teacher can register who is present, who is late, and who is absent. Registering attendance can be done in a matter of seconds, simply by clicking the button with the student’s name and picture. The interface uses colour codes, which makes it easy to see what the individual students are registered as. You decide which attendance options you want to use - i.e. options for being late, for legal absence, and illegal absence - as well as which colours are used for the different options. When attendance is registered, UMS automatically writes back to the administrative system - if supported. The interface also supports the possibility to see if the student has sent a text message to the school or if the staff has written notes regarding the student’s attendance.&lt;br /&gt;
&lt;br /&gt;
There are references to other UMS modules, e.g. SMS, in this guide. In case the mentioned modules are not present in your environment, you can ignore these settings.&lt;br /&gt;
&lt;br /&gt;
In order to edit templates, it is also required to have a basic knowledge about the UMS configurator.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
===Supported administrative systems===&lt;br /&gt;
&lt;br /&gt;
*Easy-C&lt;br /&gt;
&lt;br /&gt;
*Ludus&lt;br /&gt;
&lt;br /&gt;
*SIS&lt;br /&gt;
&lt;br /&gt;
*Other systems where it is possible to retrieve a timetable for students and teachers&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
&lt;br /&gt;
*[[UMS]]&lt;br /&gt;
&lt;br /&gt;
*[[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
===Testing after setup===&lt;br /&gt;
To start testing after setup, you must log in as a teacher. See if you have access to attendance registration on the front page of UMS portal.&lt;br /&gt;
&lt;br /&gt;
Click on attendance registration and check that you can search for timetables for students, teachers, and classes.&lt;br /&gt;
&lt;br /&gt;
Check that you can register individual students as absent.&lt;br /&gt;
&lt;br /&gt;
===What is necessary to get started===&lt;br /&gt;
To get started, it is necessary to have a running [[UMS]] installation.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Install [[UMS]] and [[UMS Academic Web]]&lt;br /&gt;
&lt;br /&gt;
==Technical settings==&lt;br /&gt;
&lt;br /&gt;
===Settings for UMS Attendance Basic===&lt;br /&gt;
All settings for UMS Attendance Basic is set in the configurator. In the main menu under &#039;Settings/Services&#039;, it is necessary to set the &#039;Absence service&#039; to run on a server. The service is responsible for sending text messages to students that are registered as absent. Please make sure the service has started and is running. See example of the set up below.&lt;br /&gt;
[[File:AbsenceServiceSetup.png|none|thumb|636x636px]]&lt;br /&gt;
&lt;br /&gt;
===Global settings===&lt;br /&gt;
Global settings are settings that are valid for the entire school. For settings that can be altered per education, class, or similar, see &#039;Individual settings&#039;.&lt;br /&gt;
&lt;br /&gt;
The Global settings are:&lt;br /&gt;
&lt;br /&gt;
*Attendance colours&lt;br /&gt;
*Design text messages sent to the students&lt;br /&gt;
*Granting access to teachers/employees and edit access to registration forward-looking&lt;br /&gt;
*Edit attendance types (late, approved, not approved)&lt;br /&gt;
&lt;br /&gt;
====Attendance colours====&lt;br /&gt;
Settings are found under &#039;Modules\Absence\colors&#039; in the main menu. Simply select the colours you want to use for each type of attendance. See example below.&lt;br /&gt;
[[File:Absencecolor.png|none|thumb|573x573px]]&lt;br /&gt;
&lt;br /&gt;
====Designing text messages sent to the students====&lt;br /&gt;
It is possible to preset text messages that will be sent to students if they are registered as absent. The settings are found under &#039;Modules\Absence\SMS&#039; in the main menu. The text messages can be set for each type of attendance both in Danish and English. It is also possible to create multiple text messages for each type of attendance. If you create multiple messages, the system will randomise these messages. Meaning, the system will send different messages to a student each time attendance is registered. See example below.&lt;br /&gt;
[[File:Absencesms.png|none|thumb|598x598px]]&lt;br /&gt;
&lt;br /&gt;
When you edit a message, there are several variables that can be used to ensuaking the messages more personalised. See example below.&lt;br /&gt;
[[File:Absencesmsvariables.png|none|thumb|1009x1009px]]&lt;br /&gt;
&lt;br /&gt;
====Granting access to teachers/employees and edit access to registration forward-looking====&lt;br /&gt;
Granting access to functions in the registration interface is done under &#039;Setup web access/Absence&#039;. Attendance basic allows &#039;register access&#039; and &#039;Future registration access&#039;. Enter a group (nested groups are allowed) with the teacher/employees that are allowed to use the specific function. See example below.&lt;br /&gt;
&lt;br /&gt;
The checkboxes have the following meaning:&lt;br /&gt;
&lt;br /&gt;
*&#039;Count too late on statistics&#039; – Not used for Attendance basic&lt;br /&gt;
*&#039;Show empty days&#039; – Should the day ruler show or omit days with no planned timetable?&lt;br /&gt;
*&#039;Show weekends&#039; – Should the day ruler show or omit weekends?&lt;br /&gt;
*&#039;Show legal&#039; – Is legal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show illegal&#039; – Is illegal attendance used on the school/is it shown in the protocol?&lt;br /&gt;
*&#039;Show too late&#039; – Is too late attendance used on the school/is it shown in the protocol?&lt;br /&gt;
&lt;br /&gt;
[[File:Absencewebsetup.png|none|thumb|828x828px]]&lt;br /&gt;
&lt;br /&gt;
=====Edit attendance types=====&lt;br /&gt;
To edit letters and text used in the attendance module, choose the button &#039;Select&#039; (see the window above).&lt;br /&gt;
&lt;br /&gt;
Double-click on the row containing the settings you want to edit. See below.&lt;br /&gt;
[[File:Absenceselect.png|none|thumb|874x874px]]&lt;br /&gt;
&lt;br /&gt;
===Individual settings===&lt;br /&gt;
Individual settings can be altered per education, class, or similar. For settings valid for the entire school, see &#039;Global settings&#039;. If an individual setting for a specific group is needed, it is necessary to create the group with the students in question beforehand. These settings can be altered under Configurator\Templates\Edit\Absence\Manage\Add a new or edit an existing setting.    &lt;br /&gt;
[[File:Template Absence Setting.jpg|none|thumb|784x784px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====SMS and App settings for notify absence====&lt;br /&gt;
&lt;br /&gt;
*&#039;SMS Sick Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will not be stored in UMS.&lt;br /&gt;
*&#039;SMS absence Keyword&#039; - The keyword set in this box will define which keyword the student sends in a text message to notify absence. E.g. the keyword &#039;Sick&#039; means the student has to send a message containing &#039;sick&#039; or &#039;sick %reason or message to the teacher%&#039;. Both cases will be accepted by UMS. All text after the keyword will be stored in UMS.&lt;br /&gt;
&lt;br /&gt;
*&#039;Default incoming SMS status&#039; - These are settings for which type of attendance the system should set as default when receiving a message from a student notifying absence. The teacher will see this status in the attendance registration interface. E.g. when the default type of attendance is &#039;Legal absence&#039;, students will be marked as &#039;Legal absence&#039; when notifying absent&lt;br /&gt;
*&#039;Ignore messages for today start/end&#039; - In the set time span, it is not possible for a student to send a text message to notify absence. This means that if the message is received before the given start time, e.g. 10 a.m., the system will check the students schedule for timetable blocks that day and mark the blocks with the default attendance status, e.g. &#039;Legal absence&#039;. The system will then send a reply confirming the student is marked absent. If the message is received between the start and end time, e.g. 10 a.m. and 3 p.m., the system will send the student a reply, saying it is not allowed to notify absence at this time. If the message is received after the given end time, e.g. 3.pm., the system will check the schedule for timetable blocks the following day and mark those with the default attendance status, e.g. &#039;Legal absence&#039; If this feature is set to 00:00 - 00:00 students cannot register as absent. If you want an &amp;quot;Always register for the current day&amp;quot;-functionality, set it to 23:59 - 00:00&lt;br /&gt;
*&#039;Require reason&#039; - The school can require the students to give a reason when notifying absence. Check this box if students have to write a reason in order to register as absent&lt;br /&gt;
&lt;br /&gt;
====Misc settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Use cards&#039; - This enables students to register via their student ID&#039;s via Bianco. Check this box if the student is allowed to register via card&lt;br /&gt;
*&#039;Show watermark at %&#039; - If the school has a limitation for how high attendance percentage is allowed for a student, this can be set as visible. Check this box if it should be visible if the students are above the accepted limit&lt;br /&gt;
*&#039;Days back&#039; - This setting decides how many days backwards a teacher is allowed to register and edit attendance. Set the number of days that are allowed in the drop-down menu &#039;Days back&#039;. Please note that this setting cannot exceed the number of days backwards in the global timetable block data job!&lt;br /&gt;
*&#039;Too late&#039; - This shows the number of minutes a late show should count. &#039;Too late&#039; sets the number of minutes late attendance should count. If a student is late for class it will be registered as e.g. 10 minutes absence. Set the number of minutes that should count in this box&lt;br /&gt;
*&#039;Show percent on studentstat&#039; - Check this box, if students are allowed to see their attendance percent under &#039;My attendance&#039;&lt;br /&gt;
*&#039;Send SMS&#039; - When a student is registered as absent, the system can reply with a text message. Check this box to enable the system to send a reply&lt;br /&gt;
*&#039;Default calculation view&#039; - Choose between &amp;quot;Display calculation in lessons&amp;quot; or &amp;quot;Display calculations in minutes&amp;quot;&lt;br /&gt;
*&#039;Lesson length&#039; - Number of minutes one lesson counts for&lt;br /&gt;
*&#039;Time interval for calculation&#039; - Select the time interval for the calculation of my absence&lt;br /&gt;
*&#039;Show Course&#039; - Check this box to show course view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Activity&#039; - Check this box to show activity view for students&#039; &#039;My absence&#039; in both web and app&lt;br /&gt;
*&#039;Show Grades&#039; - Check this box to show grades in statistics&lt;br /&gt;
&lt;br /&gt;
====Student reason settings====&lt;br /&gt;
&lt;br /&gt;
*&#039;Allow students to register absence reason&#039; - This setting allows students to create an absence reason when they are registered as absent&lt;br /&gt;
*&#039;Use Cutoff Day&#039; - This setting changes the &#039;Register absence&#039; feature from being reliant on a specific amount of days back, to instead be fixed to a specific amount of days into a month.&lt;br /&gt;
*&#039;Cutoff day of month&#039; - At this day of the month the absence gets &amp;quot;locked&amp;quot; for the previous month.&lt;br /&gt;
*&#039;Days back&#039; - This sets how many days backwards students are allowed to add an absence reason on a course. E.g. the student can register an absence reason 7 days backwards&lt;br /&gt;
*&#039;Show Admin/teacher notes in app&#039; - Changes whether the student can see administration and teacher-written notes on absence entries. They are presented in the app with a lock icon and cursive text.&lt;br /&gt;
&lt;br /&gt;
[[File:Admin teacher app notes.jpg|border|frameless]]&lt;br /&gt;
&lt;br /&gt;
==[[Attendance_Registration/WarningReports|Warning reports]]==&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====What to do when a teacher can&#039;t register absence X days back ?====&lt;br /&gt;
A specific day in the absence registration system has a green checkmark if the teacher is allowed to register according to &amp;quot;Days back&amp;quot; absence settings on the template in UMS Configurator.&lt;br /&gt;
&lt;br /&gt;
Only members of the AD group configured in Websetup are allowed to register more days back than teachers.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====What to do when abscence can&#039;t be registrated due to double registration ?====&lt;br /&gt;
This error is due to double absence registration. Absence should be deleted in the administrativ program.&lt;br /&gt;
&lt;br /&gt;
(UpdateEasyW031) Update Error Username = benj4896 - TimeStamp = 26-09-2018 10:14:55 - ErrorCode = 6 - ErrorText = elev. 2510015153, dato 26.09.2018, lektion: 2 eksisterende fravær kan ikke overskrives&lt;br /&gt;
&lt;br /&gt;
====How can a teacher know that if a student has a pause?====&lt;br /&gt;
If a student has a pause, a small pause icon will be shown for that student.&lt;br /&gt;
Hovering with the mouse over the icon will show the pause interval.&amp;lt;br /&amp;gt;&lt;br /&gt;
The system will automatically handle how much absence a student should have, if they don&#039;t show up, but they have a pause.&lt;br /&gt;
&lt;br /&gt;
====What does the Absence Status Code mean?====&lt;br /&gt;
When checking up on absence registration in the database each type of attendence will be substituted by a number as such: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status&lt;br /&gt;
! Attendance Type&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Attended&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Too Late&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Approved Absence&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Illegal Absence&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there are made changes to which [[Attendance_Registration#Granting_access_to_teachers.2Femployees_and_edit_access_to_registration_forward-looking|attendance types that are shown]] and the definitions of [[Attendance_Registration#Edit_attendance_types|these attendance types]] in the web configurator, it will affect the Absence Status Code.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=App&amp;diff=3085</id>
		<title>App</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=App&amp;diff=3085"/>
		<updated>2019-08-27T11:08:33Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:UMS School App.png|frame]]&lt;br /&gt;
UMS School App is available for iPhone, Android and Windows Phone. It will be designed with the school’s own logo, color and style. The app gives the basic functionality to see:&lt;br /&gt;
&lt;br /&gt;
*News&lt;br /&gt;
*Timetable&lt;br /&gt;
*Homework&lt;br /&gt;
*Grades&lt;br /&gt;
*User information&lt;br /&gt;
&lt;br /&gt;
Additional licenses gives the ability to create, edit and see more information from various modules. For an overview of module requirement see &amp;quot;[http://wiki.inlogic.dk/index.php?title=App&amp;amp;section=6&amp;amp;wteswitched=1#Additional_functionality Additional functionality&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Support==&lt;br /&gt;
We provide regular support for the following and newer versions:&lt;br /&gt;
&lt;br /&gt;
*Android version 7.0. We support the same versions as Google provide security updates for. Find an overview [[wikipedia:Android_version_history#Code_names|here]].&lt;br /&gt;
&lt;br /&gt;
*iOS version 10 &lt;br /&gt;
&lt;br /&gt;
*Windows 10 Mobile (version 10)&lt;br /&gt;
&lt;br /&gt;
Please note that it is possible to run older versions. If support for older versions is needed, we offer support at our hourly rate.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
===Supported administrative systems===&lt;br /&gt;
&lt;br /&gt;
*Userinfo: Easy-A, SIS, LUDUS and Lectio (Only mobile number).&lt;br /&gt;
*Grades: Easy-A, Lectio and SIS&lt;br /&gt;
*Homework: Easy-A and SIS.&lt;br /&gt;
*Timetable: Easy-A and SIS&lt;br /&gt;
*Attendance registration: Timetable data is retrieved from Easy-A, SIS, LUDUS, Tabulex and Lectio. Howerver, absence is only registered to Easy-A&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
&lt;br /&gt;
*UMS Web (contains and run all the webservice that is required for the app to receive information and communicate with the server)&lt;br /&gt;
&lt;br /&gt;
===Additional functionality===&lt;br /&gt;
You get more functionality in the app by having the following modules, these are all optional:&lt;br /&gt;
&lt;br /&gt;
*Attendance Registration: Gives “Your attendance”, which shows student statistics, the student are able to add absence reason and see their absence status in the timetable&lt;br /&gt;
*Attendance Registration for UMS School App: gives employee “attendance registration” and student the ability to &amp;quot;report absence&amp;quot;&lt;br /&gt;
*Homework: gives the employee the ability to create homework&lt;br /&gt;
*Link Collection: gives links/bookmarks the school can setup&lt;br /&gt;
*User info: gives “Your information” the ability to edit the information. This also adds the functionality for the user to upload a new profile image (a selfie) to be used in the student id card&lt;br /&gt;
*Student &amp;amp; Employee Id: Gives the students a “student id card” and the employees an “employee id card”. To update their student id card profile image you’ll need the “User info” module&lt;br /&gt;
*Parking: Parkzone &amp;amp; APCOA Integration. Gives the option to create and edit parking permits from Parkzone and APCOA&lt;br /&gt;
*User information (add/edit)&lt;br /&gt;
&lt;br /&gt;
Note: All Attendance functionality requires Attendance Registration.&lt;br /&gt;
&lt;br /&gt;
===Testing after setup===&lt;br /&gt;
&lt;br /&gt;
The app will be tested internally at inLogic before release. The test requires access to a user with relevant data. You can either create a fictional student who is associated to a real course, or alternatively use a real student&#039;s account, if the person agrees that the account is being used for a system test of the school&#039;s APP.&lt;br /&gt;
&lt;br /&gt;
===What to have ready===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Important&#039;&#039;&#039;: The UMS site needs to use HTTPS and be public available. It needs a valid SSL certificate.&lt;br /&gt;
*Materials that can be used for designing the app. For example: Logo, brochure, design guide line, etc.&lt;br /&gt;
&lt;br /&gt;
*Optional: It is possible for the school to have its own account where the app is located. An account in the App Store cost $99 per year, while an account for Google Play costs a onetime fee of $25. The school self-manage these accounts.&lt;br /&gt;
&lt;br /&gt;
===Physical hardware requirements===&lt;br /&gt;
&lt;br /&gt;
Having a smartphone is a necessity, either an Android, iOS or a Windows 10 Mobile.&lt;br /&gt;
&lt;br /&gt;
===Should third party be contacted===&lt;br /&gt;
&lt;br /&gt;
If the school is using a dedicated hosting service, they have to be informed on how you wish the news feed should be setup.&lt;br /&gt;
&lt;br /&gt;
==Installation and setup==&lt;br /&gt;
inLogic will publish and update the app.  &lt;br /&gt;
&lt;br /&gt;
If you want your own AppStore and Google Play store pages, you will need your own Apple Developer Account for the iOS version, this is a requirements from Apples Guidelines. [[App Store Connect|Please follow the guide App Store Connect]]. &lt;br /&gt;
&lt;br /&gt;
Android and Windows Phone can be published through inLogics account or your schools own account (if you have acquired one). If you have your own account inLogic needs to be informed as well. To publish the app, inLogic needs the following information:&lt;br /&gt;
&lt;br /&gt;
*[[UMS Web]] url  address- This is the address that you use wen you access UMS Web. (If you are running any kind of gateway (TMG, UAG etc.) you will need to create rules for the services on UMS Web, contact us for more information)&lt;br /&gt;
**&#039;&#039;&amp;lt;nowiki&amp;gt;https://*****.dk/&amp;lt;/nowiki&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===My School App===&lt;br /&gt;
My school app (Danish: Min skole app) is the inLogic app that is hosted by inLogic, this lets your school get started using the app faster and cheaper, and also there is less maintenance for you.&lt;br /&gt;
&lt;br /&gt;
======What does this mean?======&lt;br /&gt;
Pros:&lt;br /&gt;
&lt;br /&gt;
*Lower start-up price.&lt;br /&gt;
*No need to set up an Apple Developer account.&lt;br /&gt;
*Upon contacting InLogic Support your app can be live within a few hours.&lt;br /&gt;
*You can change logo, images &amp;amp; colors after the app is deployed&lt;br /&gt;
&lt;br /&gt;
Cons:&lt;br /&gt;
&lt;br /&gt;
*The app will not be called your schools name on you phone and in AppStore/Google Play, but is instead called &#039;My school app&#039; (danish: Min skole app), and its app icon cannot be customized.&lt;br /&gt;
*When students &amp;amp; teachers starts up the app for the first time, they will need to select their specific school before proceeding to login.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Setting up My school app=====&lt;br /&gt;
&amp;lt;blockquote&amp;gt;Configurator -&amp;gt; Web setup -&amp;gt; App -&amp;gt; Setting&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
[[File:App levitas settings.png|none|frame]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here you need to configure a Primary and Secondary color, as well as a Logo. The Login background and Menu background images are optional.&lt;br /&gt;
&lt;br /&gt;
The first time you set this up, you will need to contact InLogic support, and provide the following:&lt;br /&gt;
&lt;br /&gt;
*A 64x64 pixels version of your logo (this logo is used in the the login dropdown, it will make it easier for users to find your school)&lt;br /&gt;
*UMS Web url (See [[App#Installation and setup|Installation and Setup]])&lt;br /&gt;
&lt;br /&gt;
==Styling==&lt;br /&gt;
To style the app following is needed:&lt;br /&gt;
&lt;br /&gt;
*Primary color&lt;br /&gt;
*Secondary color&lt;br /&gt;
*Logo (.png, vector file: .psd, .ai etc.)&lt;br /&gt;
*Icon for app logo (.png, vector file: .psd, .ai etc.)&lt;br /&gt;
&lt;br /&gt;
The primary color will mostly be used as the default background color. The secondary color is the highlight color, and will be used when something is active or being activated like a button.&lt;br /&gt;
&lt;br /&gt;
Optional:&lt;br /&gt;
&lt;br /&gt;
*Background image for login (size 1080x1920)&lt;br /&gt;
*Background image for top bar of menu (size 1080x480)&lt;br /&gt;
&lt;br /&gt;
===Examples of styling===&lt;br /&gt;
&lt;br /&gt;
*Primary and secondary colors&lt;br /&gt;
&lt;br /&gt;
[[File:App - Timetable view.png|none|thumb|Example of primary and secondary colors used in the app.&lt;br /&gt;
The primary color is used in the Header navigation bar, and the secondary color as border on the selected Calendar date&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
*The schools logo - Max. 1024x576&lt;br /&gt;
&lt;br /&gt;
[[File:Branding-af-app-inLogic-logo.png|none|thumb|Example of the inLogic logo used in the Demo app]]&lt;br /&gt;
&lt;br /&gt;
*App logo - 1024x1024. If not supplied, inLogic will generate an App logo based on the schools logo (does not apply to My School App)&lt;br /&gt;
&lt;br /&gt;
[[File:Simulator Screen Shot - iPhone SE - 2018-05-15 at 12.57.23.png|none|thumb|Example of app logo in use]]&lt;br /&gt;
&lt;br /&gt;
*Login background image - 1080x1920. If not supplied, a white background will be shown, with your logo on top&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;NOTE: The app will place your logo on top of the background image. This means when you supply a background image, it needs to be without logo on it.&#039;&#039;&#039;&#039;&#039;[[File:App - Login screen.png|none|thumb|Example of a background image used on the Demo app login screen.&lt;br /&gt;
The school logo will be displayed on top of the background image, as seen here&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
*Menu top bar image - 1080x480. If not supplied, a white background will be shown&lt;br /&gt;
&lt;br /&gt;
[[File:App - Sidebar menu.png|none|thumb|Example of an image used on the Demo app menu view]]&lt;br /&gt;
&lt;br /&gt;
==Technical settings==&lt;br /&gt;
&lt;br /&gt;
The following sections show how to configure the app. This information only applies to services that are directly connected to the app, i.e. how to set up schedule tasks in the app. The only exception is &#039;UMS RSS Feeds&#039;, which is a specific service for app. If a fully detailed setup guide is needed, please go to that specific module. &lt;br /&gt;
&lt;br /&gt;
Some of the configurations are not set up specifically for app, i.e. ParkZone. If you cannot find the setup guide you are looking for, you can find it by searching or on the front page. Please note that some changes made in the configurator not only will affect the app but also UMS Web.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important&#039;&#039;&#039; As many settings only loads once the website is initializing, most changes require an IIS reset on the server. The app retrieves settings from UMS once a day, which means that changes will be visible the next time you log in or the next day.&lt;br /&gt;
&lt;br /&gt;
===Menu Settings===&lt;br /&gt;
&lt;br /&gt;
You are able to set the order and which menu buttons should be shown per template for the users&lt;br /&gt;
&lt;br /&gt;
#Open UMS Configurator&lt;br /&gt;
#Templates -&amp;gt; Edit -&amp;gt; select a template -&amp;gt; App&lt;br /&gt;
#Under Menu order select Manage -&amp;gt; Add&lt;br /&gt;
#Write a Description&lt;br /&gt;
#Drap and drop the menu you want&lt;br /&gt;
&lt;br /&gt;
[[File:MeunOrderSettings.png|none|thumb|789x789px]]&lt;br /&gt;
Here three menubuttons will be visible to the users on that specific template.&lt;br /&gt;
&lt;br /&gt;
===History===&lt;br /&gt;
Before version 2.0.917, you used to choose the modules displayed in the app via the Configurator -&amp;gt; Web Setup.&lt;br /&gt;
&lt;br /&gt;
We have moved the menu order into the Configurator -&amp;gt; Template Editor -&amp;gt; App -&amp;gt; Menu order.&lt;br /&gt;
[[File:Menu settings history.png|none|thumb|1600x1600px]]&lt;br /&gt;
This change was made to allow a different menu items and orders on Templates.&lt;br /&gt;
&lt;br /&gt;
===News===&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
This describes how to setup news for the app.&lt;br /&gt;
&lt;br /&gt;
*App News created from UMS Web&lt;br /&gt;
*Add a RSS feed&lt;br /&gt;
*Add Facebook feed&lt;br /&gt;
&lt;br /&gt;
It is possible to use all three setups together. Combine as you like and set difference feed for difference templates.&lt;br /&gt;
&lt;br /&gt;
====Setup for App News from UMS Web====&lt;br /&gt;
&lt;br /&gt;
You need to create or use an existing AD group. This group will have access to create and modify news in&lt;br /&gt;
App News on UMS Web.&lt;br /&gt;
&lt;br /&gt;
#Open UMS Configurator&lt;br /&gt;
#Menu -&amp;gt; Web Setup -&amp;gt; Edit -&amp;gt; App&lt;br /&gt;
#Add the AD group for News Access group&lt;br /&gt;
&lt;br /&gt;
[[File:App newsaccessgroup.png|none|thumb|767x767px]]&lt;br /&gt;
&lt;br /&gt;
====Setup for RSS feed====&lt;br /&gt;
Add server name for the service for RSS feed in Menu -&amp;gt; Modules -&amp;gt; Settings -&amp;gt; RSS Feeds&lt;br /&gt;
&lt;br /&gt;
[[File:App rssfeedservice.png|thumb|none|594x594px]]&lt;br /&gt;
To setup Rss feed you will need the url for the rss. (E.g. http://inlogic.dk/feed)&lt;br /&gt;
&lt;br /&gt;
Menu -&amp;gt; Templates -&amp;gt; Edit -&amp;gt; select template -&amp;gt; Rss Feeds&lt;br /&gt;
&lt;br /&gt;
Manage -&amp;gt; Add… -&amp;gt; Fill in description, feed url and access token&lt;br /&gt;
[[File:App rssfeedurl.png|none|thumb|920x920px]]&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You only need an access token if the feed is from Facebook&lt;br /&gt;
&lt;br /&gt;
The RSS feed runs as a service called “UMS RSS Feeds”. Default running every 5 min.&lt;br /&gt;
[[File:App services.png|none|thumb|561x561px]]&lt;br /&gt;
Restart the service to test it and check the output in /UserManagement/RSSFeeds.Log&lt;br /&gt;
[[File:App rssfeedlog.png|none|thumb|944x944px]]&lt;br /&gt;
&lt;br /&gt;
====Setup for Facebook news====&lt;br /&gt;
&lt;br /&gt;
If you want to use a Facebook page news feed, you need two things:&lt;br /&gt;
&lt;br /&gt;
*Facebook Page Url Feed&lt;br /&gt;
*Access Token&lt;br /&gt;
&lt;br /&gt;
=====Facebook Page Url Feed=====&lt;br /&gt;
&lt;br /&gt;
To create the feed url&lt;br /&gt;
&lt;br /&gt;
#Get your facebook page url&lt;br /&gt;
#*E.g. https://www.facebook.com/inlogic.dk&lt;br /&gt;
#Copy the name. E.g. “inlogic.dk”&lt;br /&gt;
#*Note: this can also be a number “142642699097242”&lt;br /&gt;
#Replace “inlogic.dk” with your name in this url&lt;br /&gt;
#*&amp;lt;nowiki&amp;gt;https://graph.facebook.com/v3.0/inlogic.dk/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your facebook page url feed should look something like this:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;nowiki&amp;gt;https://graph.facebook.com/v3.0/schoolname/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is your feed URL. &lt;br /&gt;
&lt;br /&gt;
=====Create a facebook access token=====&lt;br /&gt;
The personal Facebook account that you use to register as a developer does not need to be associated in any way with the page or group whose posts you want to display. You cannot log in to the Developer site using a Facebook Page or Business account. You must use the username and password from your personal Facebook profile. Facebook doesn’t allow businesses to register as developers, only individuals.&lt;br /&gt;
&lt;br /&gt;
Please follow [https://developers.facebook.com/docs/apps/register Facebook guide] to enable yourself as developer on facebook.&lt;br /&gt;
&lt;br /&gt;
When you have a facebook developer account and created an app go to [https://developers.facebook.com/tools/explorer Facebook Graph Explorer]&lt;br /&gt;
&lt;br /&gt;
#Select application&lt;br /&gt;
#Select “Get Token” and “Get App Token”&lt;br /&gt;
#Copy the Access Token&lt;br /&gt;
&lt;br /&gt;
[[File:App facebookgettoken.png|none|thumb|968x968px]]&lt;br /&gt;
Now you have the access token you need to paste into the configurator.&lt;br /&gt;
[[File:App rssfeedurl.png|none|thumb|920x920px]]&lt;br /&gt;
Reload the service UMS Rss Feed in Services and look in the RSS Feed log to validate.&lt;br /&gt;
&lt;br /&gt;
===Grades===&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
You can set the default view for grades, that filters the grades accordingly. The options are Course, Day and period.&lt;br /&gt;
&lt;br /&gt;
Configurator -&amp;gt; Web Setup -&amp;gt; Edit -&amp;gt; App -&amp;gt; Default grade view&lt;br /&gt;
[[File:App gradesview.png|none|thumb|801x801px]]&lt;br /&gt;
To specific the period you can set how your terms are set with start and end day for each period.&lt;br /&gt;
&lt;br /&gt;
Configurator -&amp;gt; Modules -&amp;gt; Grades -&amp;gt; Select the Datasource -&amp;gt; Edit -&amp;gt; Terms&lt;br /&gt;
[[File:App gradesterms.png|none|thumb|706x706px]]&lt;br /&gt;
Depending on which administration system you’re exporting grades from the columns can vary. You can set which grades column should be used and in which order.&lt;br /&gt;
&lt;br /&gt;
Configurator -&amp;gt; Web Setup -&amp;gt; Edit -&amp;gt; App -&amp;gt; Select grade columns&lt;br /&gt;
[[File:App gradescolumns.png|none|thumb|709x709px]]&lt;br /&gt;
The grades view in the App will change accordingly to which columns chosen, a max of 4 columns will be shown in the App. The columns will be shown for each grade in order from 1 to 4.&lt;br /&gt;
&lt;br /&gt;
If no grade columns settings is made the default columns will be selected in the following order:&lt;br /&gt;
&lt;br /&gt;
*EducationDescription&lt;br /&gt;
*CourseDescription&lt;br /&gt;
*EvaluationFormDescription&lt;br /&gt;
*GradeValue&lt;br /&gt;
&lt;br /&gt;
===Your information===&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
You can select which fields in user information that should be editable.&lt;br /&gt;
&lt;br /&gt;
Configurator -&amp;gt; Web Setup -&amp;gt; Edit -&amp;gt; Userinfo&lt;br /&gt;
[[File:App userinfo.png|none|thumb|800x800px]]&lt;br /&gt;
You need to set permission before the users are able to upload their own student photo (a selfie).&lt;br /&gt;
&lt;br /&gt;
Configurator -&amp;gt; Web Setup -&amp;gt; Edit -&amp;gt; UMS Photo -&amp;gt; Enable Selfie in App&lt;br /&gt;
[[File:App userinfoselfie.png|none|thumb|802x802px]]&lt;br /&gt;
This will enable selfie function.&lt;br /&gt;
&lt;br /&gt;
===Student ID And Employee ID===&lt;br /&gt;
&lt;br /&gt;
----&amp;lt;blockquote&amp;gt;&#039;&#039;This content has been moved to [[Student / Employee ID]]&#039;&#039;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===My Absence===&lt;br /&gt;
----The students are able to write an absence reason on an already registered subject. This can be enabled in the template editor.&lt;br /&gt;
&lt;br /&gt;
Select the template -&amp;gt; Absence -&amp;gt; Manage -&amp;gt; Create a new settings or select an existing one -&amp;gt; Add/Edit&lt;br /&gt;
&lt;br /&gt;
Check &amp;quot;Allow students to register absence reason&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:Absence settings.png|none|thumb|570x570px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Allow students to register absence reason&#039;&#039;&#039; will allow the students to set an absence reason when a teacher has set the student as absent. The student can set an absence reason in &amp;quot;My absence&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Days back&#039;&#039;&#039; is the number of days back the students are allowed to set an absence reason.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Show Course&#039;&#039;&#039; will show the course view (this will effect both web and app).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Show Activity&#039;&#039;&#039; will show the activity view (this will effect both web and app).&lt;br /&gt;
&lt;br /&gt;
===Push Notification===&lt;br /&gt;
----&amp;lt;blockquote&amp;gt;&#039;&#039;&#039;&#039;&#039;Temporarily disabled&#039;&#039;&#039;&#039;&#039;&amp;lt;/blockquote&amp;gt;UMS can send push notifications when there are news, grades, or changes in your timetable. It is possible to receive a daily notification with your timetable for the day.&lt;br /&gt;
&lt;br /&gt;
In addition the app can receive [[SMS Alert]] messages. &lt;br /&gt;
&lt;br /&gt;
To set up push notifications go to Web Setup -&amp;gt; App -&amp;gt; Manage -&amp;gt; Add&lt;br /&gt;
[[File:AppPushNotificationSettings.png|none|thumb|526x526px]]&lt;br /&gt;
&lt;br /&gt;
Set the description&lt;br /&gt;
&lt;br /&gt;
FCM Server Api Key:&lt;br /&gt;
&lt;br /&gt;
#Receive the key string from inLogic and paste it&lt;br /&gt;
&lt;br /&gt;
Windows Phone:&lt;br /&gt;
&lt;br /&gt;
#Receive the Package SID and Client secret from inLogic and paste the strings&lt;br /&gt;
&lt;br /&gt;
====School account====&lt;br /&gt;
In case the school has it&#039;s own account do the following to retrieve the information&lt;br /&gt;
&lt;br /&gt;
FCM Server Api Key:&lt;br /&gt;
&lt;br /&gt;
#Open https://play.google.com/apps/publish&lt;br /&gt;
#Google Play Console -&amp;gt; Settings -&amp;gt; API Access -&amp;gt; Create linked project and open it -&amp;gt; Credentials&lt;br /&gt;
#Create API Key&lt;br /&gt;
#Select the API Key and make key restriction for Android&lt;br /&gt;
#Type in your package name and SHA-1 certificate fingerprint&lt;br /&gt;
#Copy the API key and paste it inside FCM Server API Key&lt;br /&gt;
&lt;br /&gt;
Windows Phone:&lt;br /&gt;
&lt;br /&gt;
#Open https://developer.microsoft.com/en-us/dashboard/apps/overview&lt;br /&gt;
#Select your app&lt;br /&gt;
#Services -&amp;gt; Push notification -&amp;gt; WNS/MPNS&lt;br /&gt;
#Select &amp;quot;Live Services site&amp;quot;&lt;br /&gt;
#Copy and paste the Package SID into the configurator&lt;br /&gt;
#Generate an Application Secret if none exist&lt;br /&gt;
#Copy and paste the Application Secret into the configurator (This is the Client Secret)&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
----[[UMS Links]] can be used by both UMS Web and UMS App. Check the [[UMS Links|guide]].&lt;br /&gt;
&lt;br /&gt;
===Homework===&lt;br /&gt;
----See [[UMS Homework]]&lt;br /&gt;
&lt;br /&gt;
===Parking===&lt;br /&gt;
----See [[Parking]]&lt;br /&gt;
&lt;br /&gt;
===Notify absence===&lt;br /&gt;
----See [[Attendance Registration#SMS and App settings for notify absence|App settings for notify absence in attendance registration]]&lt;br /&gt;
&lt;br /&gt;
===Sms Alert===&lt;br /&gt;
----See [[SMS Alert]]&lt;br /&gt;
&lt;br /&gt;
===Privacy Policy===&lt;br /&gt;
----To add your own privary policy in the app go to Web Setup -&amp;gt; App&lt;br /&gt;
&lt;br /&gt;
Insert into &amp;quot;Privacy Policy Url:&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If left empty it will default to inLogic&#039;s privacy policy &amp;quot;https://www.inlogic.dk/om-inlogic/privacy-policy/&amp;quot;&lt;br /&gt;
[[File:App privacypolicyurl.png|none|thumb|792x792px]]&lt;br /&gt;
&lt;br /&gt;
To add it to the App Store login &lt;br /&gt;
&lt;br /&gt;
#https://appstoreconnect.apple.com/&lt;br /&gt;
#My Apps&lt;br /&gt;
#Select the app&lt;br /&gt;
#Select the top menu App Store&lt;br /&gt;
#Select App Information in the left menu&lt;br /&gt;
#Add your privacy policy url to &amp;quot;Privacy Policy URL&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:App appstore privacypolicy.png|none|thumb|955x955px]]&amp;lt;br /&amp;gt;&lt;br /&gt;
===Force language setting===&lt;br /&gt;
----Should you wish to, you have the option to force the language of the app to use a specific language, rather than the phones default language.&lt;br /&gt;
&lt;br /&gt;
This is changed via the &#039;Forced language&#039; feature in the Configurator.&lt;br /&gt;
[[File:Forced language.png|none|frame]]&lt;br /&gt;
The list of languages will expand over time, as UMS adds support for new languages.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
===Untrusted Certificate Error on Android===&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;We do not recommend using Comodo certificates since they have been known to cause these issues.&#039;&#039;&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Can&#039;t login on some Android devices? This could be due to an untrusted Comodo SSL Certificate. We were able to reproduced it on Android version 4.1, 4.4.2, 5.0.1 and 8.1.0, but it may be present on any number of versions.&lt;br /&gt;
&lt;br /&gt;
You can test your SSL certificate on https://sslanalyzer.comodoca.com/&lt;br /&gt;
&lt;br /&gt;
Do the following on the server&lt;br /&gt;
&lt;br /&gt;
#Delete the Comodo RSA Certification Authority issued by Comodo RSA Certification Authority with an expiration date of January 18, 2038.&lt;br /&gt;
#Enable automatic root certificate updates on the server&lt;br /&gt;
&lt;br /&gt;
Please checkout the Comodo support site: https://support.comodo.com/index.php?/Knowledgebase/Article/View/1019/38/untrusted-certificate-error-on-android&lt;br /&gt;
&lt;br /&gt;
For future conservation:&amp;lt;blockquote&amp;gt;Certificate is not installed correctly; the certificate needs to be chained back to the Addtrust root certificate in order to be trusted on the Android.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;The issue is that the Windows server is not presenting the complete certificate chain; clients which do not have the complete certificate chain will result in this error as encountered on the Android phone. In order to resolve this, on the server which this certificate is installed on, please open the MMC (Microsoft Management Console), and add the certificate snap-in for the computer account on the local computer.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;In the Intermediate Certification Authorities folder, verify if the Comodo RSA Domain Validation Secure Server CA and Comodo RSA Certification Authority(issued to Comodo RSA Certification Authority, issued by AddTrustExternal CA Root) are installed in this certificate store.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;In the Trusted Root Certification Authorities folder verify if the AddTrustExternal CA Root is installed.  Also, if you see the Comodo RSA Certification Authority (issued to and issued by Comodo RSA Certification Authority with an expiration date of January 18, 2038) is present, if it is please delete this certificate.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;If any of these certificates are missing  the intermediate and root certificates were provided to you in the .zip file when the certificate was issued, or are available via this support article - &amp;lt;nowiki&amp;gt;https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/979/108/domain-validation-sha-2&amp;lt;/nowiki&amp;gt; .&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;If you had to delete the Comodo RSA Certification Authority from the Trusted Root Authorities folder, you will also need to disable automatic root certificate updates on the server - https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/769/17/turn-off-automatic-root-certificates-updates-server-2008&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;If you have performed these steps and the certificate chain has not updated on the server, to force IIS to update the certificate chain you will need to either change the certificate binding in IIS to another certificate, and then switch the certificate bindings to the correct certificate. Alternately, you will need to restart the server.&amp;lt;/blockquote&amp;gt;Conservation for https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/769/17/turn-off-automatic-root-certificates-updates-server-2008&amp;lt;blockquote&amp;gt;To perform this procedure, you must be a member of the local Administrators group, or you must have been delegated the appropriate authority.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;To turn off Automatic Root Certificates Update:&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;1. Click Start, and then click Run.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;2. Type gpedit.msc, and then click OK.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;3. If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;4. Double-click Administrative Templates, double-click System, double-click Internet Communication Management, and then click Internet Communication settings.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;5. Double-click Turn off Automatic Root Certificates Update, click Enabled, and then click OK.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;6. Close the Local Group Policy Editor.&amp;lt;/blockquote&amp;gt;&amp;lt;blockquote&amp;gt;Note: You can use Group Policy to set policy settings that apply across a given site, domain, or organizational unit in Active Directory Domain Services.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Issues with the app===&lt;br /&gt;
If you&#039;re facing issues with the app, please perform the following steps before contacting support:&lt;br /&gt;
&lt;br /&gt;
*Check the AppStore/GooglePlay for app updates and install any present&lt;br /&gt;
*Shut down the app completely, and start it back up&lt;br /&gt;
*Restart the phone&lt;br /&gt;
*Uninstall the app, and redownload it from AppStore/GooglePlay&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Moodle&amp;diff=2955</id>
		<title>Moodle</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Moodle&amp;diff=2955"/>
		<updated>2019-06-21T12:57:11Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Course */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Our Moodle integration is developed for schools, which want to avoid hour-long administrative tasks. The integration automatically creates, maintains and deletes users, based on data from your student administrative system. It also creates and maintains group rooms, which teachers and students can use for teaching purposes. The rooms automatically use the language you require and can be categorized according to your needs, making them easier to find. Rooms that are no longer in use are deleted automatically. &lt;br /&gt;
&lt;br /&gt;
===Configuration in UMS===&lt;br /&gt;
The integration makes it possible to upload pictures of the users to Moodle, making it easy for teachers and students to see whom they are interacting with. If these pictures are replaced in UMS, they are automatically updated in Moodle. Last, but not least, the module can integrate with the AD. This allows users to log into Moodle with the same password they use to access the school’s IT-system. The Moodle integration gives you an easy overview and ensures that the users’ data is always managed correctly, without requiring any manual updates. This frees up time for the IT-department, who can focus on other tasks instead.&lt;br /&gt;
&lt;br /&gt;
If you want to make it easy for students and teachers to keep track of their timetables, you can embed our Web Timetable module in Moodle as an iframe. By doing this, users can access homework and notes that are registered on the various timetable blocks in the timetable. Please note: To embed Web Time Table, the Web Timetable and SSO modules are required. In order to see homework, the Homework module is required.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
===Module requirements===&lt;br /&gt;
[[UMS]]&lt;br /&gt;
&lt;br /&gt;
===What to have ready===&lt;br /&gt;
Moodle&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Open UMS Configurator and go to Modules &amp;gt; Moodle &amp;gt; Organization settings&lt;br /&gt;
[[File:Image.png|none|thumb|537x537px]]&lt;br /&gt;
&lt;br /&gt;
Click Add.&lt;br /&gt;
[[File:Moodleorganizationsettings.png|none|thumb|535x535px]]&lt;br /&gt;
&lt;br /&gt;
==Organization settings==&lt;br /&gt;
[[File:Moodle organization settings2.png|none|thumb|508x508px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Give your Organization setting a name.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DatabaseServer&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Name of database server hosting the Moodle database.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DatabaseName&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Name of Moodle database.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Database TablesPrefix&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Table prefix set when installing Moodle.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UserName&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
UserName of the user that can access the database.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Password of the user that can access the database.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;URL&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
URL for your Moodle installation ex. &amp;lt;nowiki&amp;gt;http://moodle.inlogic.dk&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Webservice Token&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Token created in Moodle siteadministration. [https://docs.moodle.org/24/en/Using_web_services Guide to create access and token] ( Remember: When adding functions to webservice, add all functions )&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataPath&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Moodle data path ex. \\moodle.inlogic.dk\c$\Moodle\server\moodledata\filedir.&lt;br /&gt;
&lt;br /&gt;
The user running moodle exe must have access to this path.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DatabaseType&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Choose Database type used for Moodle. can only be one in the list below. The selected SQL database, the port number must be open in the firewall, since UMS communicates on the database level&lt;br /&gt;
&lt;br /&gt;
*Microsoft SQL (1433)&lt;br /&gt;
*MySQL (3306)&lt;br /&gt;
*Oracle SQL (1521)&lt;br /&gt;
&lt;br /&gt;
==Moodle Site settings==&lt;br /&gt;
From Configurator, Edit existing template &amp;gt; Moodle &amp;gt; Manage &amp;gt; Add   or  Configurator &amp;gt; Modules &amp;gt; Moodle &amp;gt; Site Settings &amp;gt; Add&lt;br /&gt;
[[File:Moodle Settings.png|none|thumb|824x824px]]&lt;br /&gt;
&#039;&#039;&#039;Description:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Give the Site settings a name.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Organization settings&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Choose the Organization setting you want to use for this site setting.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Default country&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Choose default country. This is used when creating users.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Authentication method&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Login method for the users &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mail domain for new students&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The address appended to their username in moodle to give them an email address&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mail domain for new employees&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The address appended to their username in moodle to give them an email address&lt;br /&gt;
&lt;br /&gt;
===Upload student information===&lt;br /&gt;
Check these boxes to send and update information on students&lt;br /&gt;
&lt;br /&gt;
*Address&lt;br /&gt;
*Phone (Phone1)&lt;br /&gt;
*Mobile Phone (Phone 2)&lt;br /&gt;
*Mail&lt;br /&gt;
&lt;br /&gt;
===Picture library===&lt;br /&gt;
Upload pictures of students&lt;br /&gt;
&lt;br /&gt;
See [[Configurator/Picture_libraries|Picture libraries]]&lt;br /&gt;
&lt;br /&gt;
===Upload employee information===&lt;br /&gt;
Check these boxes to send and update information on employees&lt;br /&gt;
&lt;br /&gt;
*Address&lt;br /&gt;
*Phone (Phone1)&lt;br /&gt;
*Mobile Phone (Phone 2)&lt;br /&gt;
*Mail&lt;br /&gt;
&lt;br /&gt;
===Picture library===&lt;br /&gt;
Upload pictures of employees&lt;br /&gt;
&lt;br /&gt;
See [[Configurator/Picture_libraries|Picture libraries]]&lt;br /&gt;
&lt;br /&gt;
===Course===&lt;br /&gt;
&lt;br /&gt;
[[File:Moodle Course Settings.png|none|thumb|732x732px]]&lt;br /&gt;
&lt;br /&gt;
See [[LMS Settings]] for options not descriped below&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Language&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The language set on a site when is it created.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Course category&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The category the course is put on when the site is created. The course category is case sensitive and needs to match a category created in Moodle.&lt;br /&gt;
&lt;br /&gt;
====Activity sites====&lt;br /&gt;
See [[Site selection settings]]&lt;br /&gt;
&lt;br /&gt;
====Course sites====&lt;br /&gt;
See [[Site selection settings]]&lt;br /&gt;
&lt;br /&gt;
===Cohort===&lt;br /&gt;
&lt;br /&gt;
[[File:Moodle Cohort Settings.png|none|thumb|733x733px]]&lt;br /&gt;
&lt;br /&gt;
See [[LMS Settings]] for options not descriped below&lt;br /&gt;
====Activity sites====&lt;br /&gt;
See [[Site selection settings]]&lt;br /&gt;
&lt;br /&gt;
====Course sites====&lt;br /&gt;
See [[Site selection settings]]&lt;br /&gt;
&lt;br /&gt;
==Template Settings==&lt;br /&gt;
You need to attach a cohort setting to a template. This will tell UMS that cohorts will be created from this template.&lt;br /&gt;
[[File:Moodle Template Cohort Settings.png|none|thumb|675x675px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Enter a description for this setting&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Cohort category&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Enter a category that will be attached to the cohorts when they are created&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SQL Groups&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
See [[LMS Settings]] for this option&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2800</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2800"/>
		<updated>2019-05-13T10:39:03Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* How do I find timetable blocks with SQL statements ? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
GSuite&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] &#039;Room_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] &#039;Activity_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
Example following the general parameters:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;xxxxxx&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2799</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2799"/>
		<updated>2019-05-13T09:51:39Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
GSuite&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] &#039;Room_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] &#039;Activity_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
Example following the general parameters:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2798</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2798"/>
		<updated>2019-05-13T09:50:46Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] &#039;Room_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] &#039;Activity_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
Example following the general parameters:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2797</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2797"/>
		<updated>2019-05-13T09:49:00Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Mail: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] &#039;Room_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] &#039;Activity_ID&#039;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2796</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2796"/>
		<updated>2019-05-13T09:48:39Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] &#039;Room_ID&#039;)&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] &#039;Activity_ID&#039;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2795</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2795"/>
		<updated>2019-05-13T09:45:30Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; Mail] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical classroom.&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity. &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2794</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2794"/>
		<updated>2019-05-13T09:44:43Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students.&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical classroom.&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity. &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2793</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2793"/>
		<updated>2019-05-13T09:44:14Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Mail: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical classroom&lt;br /&gt;
&lt;br /&gt;
Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2792</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2792"/>
		<updated>2019-05-13T09:40:09Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Mail: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - This parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - This parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - This parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This parameter is used if the [action] parameter needs to only affect a giving physical Classroom &lt;br /&gt;
&lt;br /&gt;
Activitiesonly -  &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2791</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2791"/>
		<updated>2019-05-13T09:39:11Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Mail: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - Parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - Parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - Parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This Parameter is used if the [action] parameter needs to only affect a giving physical Classroom &lt;br /&gt;
&lt;br /&gt;
Activitiesonly -  &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2790</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2790"/>
		<updated>2019-05-13T09:30:44Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
[[Timetable/itslearning|Itslearning]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - Parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - Parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - Parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This Parameter is used if the [action] parameter needs to only affect a giving physical Classroom &lt;br /&gt;
&lt;br /&gt;
Activitiesonly - &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2789</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2789"/>
		<updated>2019-05-13T09:30:00Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
=====Help:=====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
=====Applyrights:=====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Systems:=====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
Itslearning&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Action:=====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Mail:=====&lt;br /&gt;
mail/UPN - Parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - Parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - Parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - This Parameter is used if the [action] parameter needs to only affect a giving physical Classroom &lt;br /&gt;
&lt;br /&gt;
Activitiesonly - &lt;br /&gt;
&lt;br /&gt;
=====StartDate:=====&lt;br /&gt;
This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====EndDate:=====&lt;br /&gt;
This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Type:=====&lt;br /&gt;
UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected&lt;br /&gt;
&lt;br /&gt;
All - This parameter is used to define that timetables both from UMS and non UMS will be affected&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2788</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2788"/>
		<updated>2019-05-13T08:31:32Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
&lt;br /&gt;
===== Help: =====&lt;br /&gt;
Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
===== Applyrights: =====&lt;br /&gt;
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Systems: =====&lt;br /&gt;
This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
Itslearning&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Action: =====&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Mail: =====&lt;br /&gt;
mail/UPN - Parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - Parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - Parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - &lt;br /&gt;
&lt;br /&gt;
Activitiesonly - &lt;br /&gt;
&lt;br /&gt;
===== StartDate: =====&lt;br /&gt;
dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== EndDate: =====&lt;br /&gt;
dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Type: =====&lt;br /&gt;
UMS&lt;br /&gt;
&lt;br /&gt;
NonUMS&lt;br /&gt;
&lt;br /&gt;
All&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2787</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2787"/>
		<updated>2019-05-13T08:29:27Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following systems is supported&lt;br /&gt;
&lt;br /&gt;
*Office 365&lt;br /&gt;
*Exchange&lt;br /&gt;
*GSuite&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
 Skemabrikker.exe [&amp;lt;optional&amp;gt; System] [&amp;lt;optional&amp;gt; Action] [&amp;lt;optional&amp;gt; StartDate] [&amp;lt;optional&amp;gt; EndDate] [&amp;lt;optional&amp;gt; Type [UMS | NonUMS | All]]&lt;br /&gt;
Help: Displays a microsoft forms with the different parameters.&lt;br /&gt;
&lt;br /&gt;
Applyrights: Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.&lt;br /&gt;
&lt;br /&gt;
systems: This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:&lt;br /&gt;
&lt;br /&gt;
Exchange&lt;br /&gt;
&lt;br /&gt;
Office 365&lt;br /&gt;
&lt;br /&gt;
Google Apps(Gsuite)&lt;br /&gt;
&lt;br /&gt;
Itslearning&lt;br /&gt;
&lt;br /&gt;
Action:&lt;br /&gt;
&lt;br /&gt;
find - Used to display the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
delete - Used to delete the Timetables associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter&lt;br /&gt;
&lt;br /&gt;
Mail:&lt;br /&gt;
&lt;br /&gt;
mail/UPN - Parameter used if the [action] parameter needs to affect a specific user&lt;br /&gt;
&lt;br /&gt;
Teachersonly - Parameter used if the [action] parameter needs to only affect teachers&lt;br /&gt;
&lt;br /&gt;
Studentsonly - Parameter used if the [action] parameter needs to only affect students&lt;br /&gt;
&lt;br /&gt;
Roomsonly - &lt;br /&gt;
&lt;br /&gt;
Activitiesonly - &lt;br /&gt;
&lt;br /&gt;
StartDate: &lt;br /&gt;
&lt;br /&gt;
dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
EndDate:&lt;br /&gt;
&lt;br /&gt;
dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
Type:&lt;br /&gt;
&lt;br /&gt;
UMS&lt;br /&gt;
&lt;br /&gt;
NonUMS&lt;br /&gt;
&lt;br /&gt;
All&lt;br /&gt;
&lt;br /&gt;
==External systems==&lt;br /&gt;
&lt;br /&gt;
===[[Timetable/itslearning|itslearning]]===&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with skemabrikker.exe ?====&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
Example:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|skemabrikker.exe  office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All&lt;br /&gt;
|}&lt;br /&gt;
Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table &#039;&#039;&#039;SkemaBrikkerSavedEntries&#039;&#039;&#039;&lt;br /&gt;
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;br /&gt;
&lt;br /&gt;
====How do I find timetable blocks with SQL statements ?====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|select  SkemaBrikkerNewEntries.*&lt;br /&gt;
&lt;br /&gt;
From  SkemaBrikkerNewEntries&lt;br /&gt;
&lt;br /&gt;
Join  SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID  = SkemaBrikker_Students.SkemaBegivenhed_ID And  SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID =  SkemaBrikker_Students.SkemaBrikkerAdminServers_ID&lt;br /&gt;
&lt;br /&gt;
And SkemaBrikkerNewEntries.Activity =  SkemaBrikker_Students.Activity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where &lt;br /&gt;
&lt;br /&gt;
SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= &#039;159873&#039;)&lt;br /&gt;
&lt;br /&gt;
and SkemaBrikkerNewEntries.Dato = &#039;28-11-2018&#039;&lt;br /&gt;
&lt;br /&gt;
Order By  RealStartDateTime&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2768</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2768"/>
		<updated>2019-04-17T13:08:37Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &#039;&#039;&#039;&amp;lt;mail&amp;gt;&#039;&#039;&#039; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2767</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2767"/>
		<updated>2019-04-17T13:08:15Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &amp;lt;mail&amp;gt; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &amp;lt;mail&amp;gt; parameter you can use &#039;&#039;&#039;AllTimeTableEmployees&#039;&#039;&#039; and &#039;&#039;&#039;AllTimeTableStudents&#039;&#039;&#039; to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2766</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2766"/>
		<updated>2019-04-17T13:01:16Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
To &#039;&#039;&#039;find&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 find &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &amp;lt;mail&amp;gt; parameter you can use AllTimeTableEmployees and AllTimeTableStudents to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
To &#039;&#039;&#039;delete&#039;&#039;&#039; all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.&lt;br /&gt;
&lt;br /&gt;
    Skemabrikker.exe office365 delete &amp;lt;mail&amp;gt; &amp;lt;StartDate&amp;gt; &amp;lt;EndDate&amp;gt; [UMS | NonUMS | All]&lt;br /&gt;
By default the &#039;&#039;&#039;UMS&#039;&#039;&#039; parameter is selected, since there is generally no need to affect and look for items that wasn&#039;t generated by UMS.&lt;br /&gt;
Instead of the &amp;lt;mail&amp;gt; parameter you can use AllTimeTableEmployees and AllTimeTableStudents to select either employees or students respectively.&lt;br /&gt;
&lt;br /&gt;
It is not recommended to run the &#039;&#039;&#039;office365 delete&#039;&#039;&#039; parameter with the &#039;&#039;&#039;All&#039;&#039;&#039; parameter since it will delete everything in the affected users calender&#039;s in the given time frame.&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2765</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2765"/>
		<updated>2019-04-17T12:40:59Z</updated>

		<summary type="html">&lt;p&gt;Mej: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
	<entry>
		<id>https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2764</id>
		<title>Timetable</title>
		<link rel="alternate" type="text/html" href="https://wiki.inlogic.dk/index.php?title=Timetable&amp;diff=2764"/>
		<updated>2019-04-17T12:39:58Z</updated>

		<summary type="html">&lt;p&gt;Mej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Skemabrikker.exe&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;/div&gt;</summary>
		<author><name>Mej</name></author>
	</entry>
</feed>