Category Archives: Geen categorie

Dynamic DNS met TransIP via de API

Sinds een tijdje host ik mijn blog op een NAS.
Jachimowski.nl en nog enkele andere domeinnamen heb ik geregistreerd bij Transip.nl en dat werkt helemaal prima.
In het beheerpaneel van TransIP kan ik zelf de DNS-records beheren. Die heb ik ingesteld op mijn WAN-ip van mijn internetaansluiting bij Telfort.

Alles lijkt goed te werken, tot ik een zaterdag ochtend wakker werd en aan mijn blog wilde werken. De website was onbereikbaar! Al snel zag ik dat Telfort mijn WAN-ipadres gewijzigd had. Hierdoor was mijn website niet meer te benaderen op het ingestelde IP-adres.

Zo nu en dan kiest Telfort er voor om mijn IP-adres te vernieuwen. Dat is erg vervelend want daar kom ik pas achter wanneer mijn website weer eens niet bereikbaar is. Ook is het nauwelijks te voorspellen wanneer Telfort deze vernieuwing uitvoert. Soms duurt het een jaar en soms slechts enkele maanden. Sinds ik mijn router heb ingewisseld voor een eigen-bouw pfSense-bak, is het aantal ip-vernieuwingen drastisch omlaag gegaan!

Om mijn website bereikbaar te houden, kan ik gebruik maken van diensten zoals no-ip.com. Dat is een dynamische DNS dienst welke via een programma (of zelfs een functie op mijn pfSense router) automatisch de DNS records bijwerkt wanneer jouw WAN-ip veranderd. Deze dienst kost circa 30 dollar per jaar (bovenop de kosten voor de domeinna(a)m(en).

Helaas biedt TransIP geen dynamische DNS dienst zoals no-ip.com dat doet. Logisch, want de corebusiness van TransIP is het verkopen van webhosting en VPS diensten! Toch is het automatisch updaten via Dynamic DNS wel een groot gemis.

Omdat mijn NAS 24/7 aan staat, heb ik er voor gekozen zelf een script te schrijven welke ieder uur een check doet of mijn IP-adres gewijzigd is tenopzichte van de DNS-record van mijn domeinnaam jachimowski.nl. Wanneer het ip-adres afwijkt zorgt het script voor een aanpassing van de DNS-records bij Transip.nl. Hierdoor is mijn website maximaal een uurtje offline (wat voor een hobby blog acceptabel is). ūüėČ

Benodigdheden:

Ga naar het Controlepaneel van TransIP en klik op “account” en vervolgens op “API”.
https://www.transip.nl/cp/account/api/

Daar kan je een nieuwe “keypair” maken en vergeet niet “whitelist IP” UIT te vinken. Anders zou je alleen met jouw huidige IP-adres de API gebruiken. Dat is natuurlijk niet handig. Geeft de nieuwe keypair een nuttige naam. Daarna verschijnt een flinke key. Bewaar deze key goed want dit is het enige moment dat je de key kan zien.

Download het PHP script en plaats het op een plek waar de webserver bij kan.
Pas het script aan:

<JOUWDOMEINNAAM> = De domeinnaam waarvan je het DNS-record wilt bijwerken
<JOUW TRANSIP USERNAME> = Jouw controlpanel account (username)
<PLAATS HIER JOWU KEYPAIR> = Plak hier de code die je in de eerdere stap hebt verkregen. Let op dat alles netjes tussen de quotes ” staan.

// Benodigde API en instellingen (graag nalopen!)
require_once(‘lib/Transip/DomainService.php’);
define(‘DOMAIN’, ‘<JOUWDOMEINNAAM>’);

 

// TRANSIP Account
define(‘USERNAME’, ‘<JOUW TRANSIP USERNAME’);
// API Key
define(‘PRIVATE_KEY’, ‘<PLAATS HIER JOUW KEYPAIR>’);

Vergeet niet om vanaf regel 60 enkele aanvullende DNS-records aan te passen:

$dnsEntries[] = new Transip_DnsEntry(‘@’, 86400, Transip_DnsEntry::TYPE_A, $ipAddress);

Het apenstaartje @ staat voor een wildcard waarmee domeinnaam.nl beschikbaar komt.
Je kan dus het beste ook “www” en andere subdomeinen toevoegen. (Hanteer hierin per DNS-record 1 nieuwe regel).

Als je alles juist hebt ingesteld, kan je een test doen door de DNS-records bij TransIP tijdelijk aan te passen naar bijv. 127.0.0.1. Roep daarna de pagina op die je inmiddels zelf hebt gehost: https://jouwdomeinnaam.nl/transip/wanupdate.php Hierdoor wordt het script geactiveerd en zal het een vergelijking doen met het WAN-ip en de DNS-record bij Trans-IP. In dit geval zullen alle records bijgewerkt worden.

Nu is het natuurlijk niet de bedoeling dat je zelf ieder uur dit scrip draait. Je kan het beste dit script ieder uur automatisch laten aftrappen. Hiervoor gebruiken we de Cronjob of de geplande taken van Synoloy.

Cronjob:

Maak een nieuwe regel aan in het /etc/crontab bestand. Voeg de volgende regel toe:

0 * * * * root curl https://jouwdomeinnaam.nl/transip/wanupdate.php

Op de Synology NAS kan je een geplande taak aanmaken. In dat geval kies je voor uitvoering “Ieder uur” en vervolgens een gescript commando:

curl https://jouwdomeinnaam.nl/transip/wanupdate.php

CURL doet eigenlijk een aanvraag op het opgegeven URL. Wat daar precies op terugkomt is niet belangrijk. Het script is immers afgetrapt en zorgt ervoor dat jouw WAN-ip aangepast wordt.

Je kan in de logging.txt (welke zich in dezelfde folder als het script bevind) controleren of de DNS-records succesvol bijgewerkt zijn.

DOWNLOAD PHP SCRIPT

Aan de slag met Microsoft Flow

Hoewel Microsoft Flow officieel nog in Preview is, ga ik in deze blog een korte introductie van deze nieuwe dienst geven.

Wat is Microsoft Flow?

Wie bekend is met Microsoft SharePoint, kent wellicht ook de SharePoint workflows.
SharePoint workflows maakt het mogelijk om zonder code diverse toepassingslogica in SharePoint te integreren. SharePoint beschikt “out of the box” over enkele standaard workflows zoals de “goedkeurings- workflows”.¬†In een SharePoint workflow staat een document of een lijst-item in SharePoint centraal.
Met de komst van Microsoft Flow staat een item of document in SharePoint niet meer centraal. De eigenlijke “trigger” voor het starten van een flow kan nu zelfs buiten SharePoint plaatsvinden.

Wie bekend is met “If This Then That“, kan¬†Microsoft Flow snel onder de knie krijgen.
Daar waar IFTTT met “recepten” werkt, gebruikt Microsoft zogehete “Flows”.
Op dit moment lijkt het erop dat Microsoft Flow zich niet beperkt tot haar eigen productsuite (Office 365, SharePoint, CRM Online etc).
Verbindingen naar andere services zoals Dropbox, Twitter, Facebook, maar ook Mailchimp en SalesForce zijn mogelijk.
IFTTT richt zich ook op externe API’s voor bijvoorbeeld Domotica toepassingen. Deze koppelingen zal je bij Microsoft Flow nog niet snel tegenkomen.

Het gat tussen IT en de eindgebruiker

Het ontwerpen van een SharePoint workflow gaat vooralsnog met SharePoint Designer en vergt enige kennis van het Microsoft SharePoint platform.
Niet iedere gebruiker beschikt over deze specifieke kennis en software.

Wanneer een medewerker een goed idee heeft voor een workflow, wordt dit eerst met de afdeling IT besproken en vervolgens wordt een workflow ingericht. Omdat het bouwen van een workflow speciale software en kennis vereist, is dit veelal een IT-afdeling aangelegenheid. Ook afdeling IT huurt veelal een SharePoint Consultant in om een workflow in te richten.

Een workflow die wij veelal tegenkomen is:¬†“stuur een e-mail wanneer een nieuw item wordt aangemaakt in een lijst waarbij de status ‘ingekomen’ is.”.
Met Microsoft Flow kan iedereen eenvoudig een soortgelijke workflow¬†“in-elkaar-klikken” zonder over diepgaande kennis te beschikken.
Nog belangrijker: Microsoft Flow biedt een soort “SelfService portaal” waarbij de gebruiker geen beroep hoeft te doen op de IT-afdeling. Nouja, bijna geen beroep…
Want afhankelijk van welke services je wilt gebruiken, heb je wel toegang nodig tot deze services. Binnen Microsoft Flow gebeurt alles onder jouw account, dus je zal hoe dan ook de IT-afdeling om toegang moeten vragen wanneer je een record wilt opslaan in die ene SQL Database.

 

Hoe kan ik beginnen? EN wat heb ik nodig?

Om te beginnen heb je allereerst een Internet Browser nodig d√ļh! ūüôā en een Microsoft Account van het type “work e-mailaddress”.
Helaas kan je vooralsnog geen gebruik maken van persoonlijke @outlook.com Microsoft accounts.
Navigeer naar¬†https://flow.microsoft.com en klik op “Sign up” (als je dat nog niet hebt gedaan) en log vervolgens in met jouw account.
Afhankelijk van de type flow die je wilt cre√ęren heb je ook accounts nodig van de desbetreffende services die je wilt gebruiken.
Als je bijvoorbeeld in jouw workflow gebruik wilt maken van data uit CRM Online, dan heb je ook toegang nodig tot deze dienst.

Mobiele Apps

Microsoft heeft voor Apple iPhone en voor Android de Flow app beschikbaar gemaakt.
Met deze App heb je een goed overzicht van de lopende flows. Zo kan je snel zien als een flow problemen heeft.
Je kan tevens de flow aanklikken en inzoomen op de desbetreffende stap waar het mis gaat.

Op dit moment is het nog niet mogelijk om vanuit de app een flow te ontwerpen. Wanneer je op “add a flow” klikt wordt je naar de mobiele site van Microsoft Flow verwezen.
Maakt jouw  flow gebruik van push-notificaties? Dan ontvang je die ook op jouw telefoon via deze app!

Microsoft ondersteunt momenteel 2 mobiele platformen. De Windows Phone gebruikers moeten uiteraard even wachten…

Eerste flow

In dit voorbeeld gaan we een flow maken die bij een bepaalde hashtag op Twitter een taak aanmaakt in SharePoint.
Een mogelijke businesscase zou kunnen zijn dat als er vraag gesteld wordt op Twitter, je hier direct op kan reageren.
Je hebt hiervoor een connectie naar Twitter nodig en jouw SharePoint Online tenant in Office 365.

Stappen (Tweet to SharePoint Task)
Login op Microsoft Flow en maak een nieuwe flow: https://flow.microsoft.com/manage/flows/new
In het zoekscherm kan je zoeken naar verschillende “Triggers”. Een trigger is een startpunt waardoor de flow moet starten.
Zodra een Tweet wordt gepost waarbij @Portiva wordt vermeldt, zal de flow starten.

Connect-Twitter

 

Search-for-Portiva

Natuurlijk wil je een soort van een filter toepassen op alle Tweets die geplaatst worden. Bijvoorbeeld filteren op één of meerdere keywords.
Via de “Conditions” kan je een conditie toepassen zodat de¬†“Tweet” aan een bepaalde set¬†woorden moet voldoen.
Standaard kan een Conditie-block √©√©n conditie afvangen, maar wanneer je op “Edit in advanced mode” klikt, kan je een eigen conditie schrijven.

Wanneer de Tweet voldoet aan de volgende inhoud: “Portiva“, “Niek“, “Hallo“, zal de conditie een TRUE afgeven.
@AND(contains(triggerBody()[‘TweetText’], ‘Portiva’), contains(triggerBody()[‘TweetText’], ‘Niek’), contains(triggerBody()[‘TweetText’], ‘Hallo’))

AND-Operator

Hieronder gebruiken we het¬†“if yes” pad om een actie uit te voeren, namelijk een lijst item toevoegen aan een SharePoint lijst.
Helaas is het nog niet mogelijk om een SharePoint Task te cre√ęren. Ook zijn de takenlijsten uitgesloten van de “list name” dropdown.

Condition

 

Je kan ook een extra stap toevoegen zoals het sturen van een Push-bericht naar jouw telefoon. Hiervoor dien je de Flow-app ge√Įnstalleerd te hebben op jouw telefoon.
De stap is eenvoudig toe te voegen via “Send a push notification”. Je kan dan het bericht naar eigen wens inrichten en ook een link opgeven waar je vanuit het Push-bericht naartoe navigeert.
Let op: Het Push-bericht wordt alleen verzonden naar de telefoon waarop de auteur van de Flow is ingelogd op de Flow-app.

Tweet-Push-576x1024

 

Templates

Mocht je inspiratie nodig hebben, dan heeft Microsoft diverse templates waar uit je kan kiezen.
Net als bij IFTTT maakt Microsoft Flow gebruik van duidelijke service-iconen. Je ziet dus in één oogopslag welke services de template gebruikt.

Microsoft-Flow-Templates

Prijzen & toekomst

Microsoft Flow is op dit moment nog in PREVIEW en gratis te gebruiken.
In de toekomst gaat Microsoft een splitsing maken tussen gratis en betaalde services.
Maar wat die verschillen precies zullen zijn, zal pas duidelijk worden bij de offici√ęle release.

Een mogelijke concurrent voor 3rd party oplossingen zoals Nintex Workflows zou het kunnen worden.
Echter is de Flow-editor nog zeer beperkt. Wellicht is dat exact de bedoeling om het zo eenvoudig mogelijk te houden?

Microsoft biedt met Flows een mooie oplossing waarmee het diverse producten uit haar eco-systeem met elkaar verbindt.
In combinatie met bijvoorbeeld PowerApps kunnen hele gave producten ontwikkeld worden.

Van een fysieke pc een virtuele maken

Zoals je misschien hebt kunnen lezen heeft Microsoft onlangs Windows 10 technical preview ter download aangeboden! Je kan de laatste versie als ISO downloaden op de downloadpagina.

Ik werk als SharePoint consultant bij Portiva graag met de laatste technologie√ęn.
Vandaar ik besloten heb om de Windows 10 preview op mijn werk-laptop te installeren.

Om er zeker van te zijn dat ik altijd kan terugvallen op mijn oude Windows 8.1 installatie, maak ik van mijn huidige installatie een virtueel exemplaar. Met Hyper-V op Windows 10 kan ik vervolgens mijn oude Windows 8.1 installatie draaien.

Windows 10 Preview Screenshot

Read more »

Microsoft Office Web Apps Server installeren

In deze blog laat ik zien hoe je eenvoudig Office Web Apps kan installeren in een bestaande SharePoint 2013 farm.

Door Office Web Apps te gebruiken kan je relatief eenvoudig documenten openen EN BEWERKEN via de browser. Een installatie van het Microsoft Office pakket is dus niet nodig!

Office Web Apps in combinatie met SharePoint 2013 dragen sterk bij aan de gebruikers-adoptie voor SharePoint binnen een organisatie. Lees de onderstaande blog door hoe ook uw organisatie snel met Microsoft Office Web Apps kan werken!

Read more »

Verbindingsproblemen SharePoint Designer 2013 en SharePoint Online

Tijdens werkzaamheden bij één van onze klanten stuitte ik plotseling op een probleem.
Na enkele dagen actief met SharePoint Designer te hebben gewerkt, kreeg ik plotseling geen verbinding meer met de SharePoint Online omgeving van de klant.
Zodra ik in SharePoint designer 2013 de site opende <domein>.sharepoint.com, kreeg ik geen foutmelding en ook geen toegang.
Na alles te controleren zoals de netwerk- en internetverbinding (die overigens wel gewoon werkten).. was het duidelijk… SharePoint Designer heeft problemen!
Het leek alsof SharePoint Designer 2013 gewoon geen verbinding maakte en helemaal geen melding gaf… geen kik!

Read more »

Mijn allereerste bericht

Hallo allemaal,

Dit is mijn eerste blog-post op www.sharepointkennis.nl !
Ik hoop hier nog vele jaren veel leuke en interessante berichten te kunnen plaatsen.
Deze blog is bedoeld voor SharePoint consultants door SharePoint consultants en bevat allerlei tips and tricks rondom Microsoft SharePoint Server.

 

Heb jij tips of vragen? Mail mij via het contactformulier.