MasterChess. av Trygve Pløhn Ståle André Nygård. Maiprosjekt (4 uker) cit269. Kandidatutdanning - SWU. Avdeling for samfunn, næring og natur

Størrelse: px
Begynne med side:

Download "MasterChess. av Trygve Pløhn Ståle André Nygård. Maiprosjekt (4 uker) cit269. Kandidatutdanning - SWU. Avdeling for samfunn, næring og natur"

Transkript

1 MasterChess av Trygve Pløhn Ståle André Nygård Maiprosjekt (4 uker) cit269 Kandidatutdanning - SWU Avdeling for samfunn, næring og natur Prosjektoppgave vår 2003

2 Prosjektrapport 1. Forord Denne rapporten er utarbeidet som en del av maiprosjektet ved IT-højskolen i København/Høgskolen i Nord-Trøndelag. Kurset er gjennomført i form av et utviklingsprosjekt. Selve prosjektet er gjennomført ved Høgskolen i Nord-Trøndelag (HiNT) våren Prosjektgruppen har bestått av Trygve Pløhn og Ståle André Nygård. Vår tidligere kompetanse av betydning for dette kurset er tilegnet fra: Grunnleggende programmering fra HiNT Objektorientering fra HiNT (innføring i UML) Søkemaskiner fra IT-C (1. semester) Parallelle systemer fra IT-C (1. semester) Avanceret multimedieproduktion på internet (dette semester) Prosjektets mål er å gi prosjektmedlemmene innsikt i avansert Flash-produksjon i form av et større Flash-prosjekt hvor flere skal jobbe med den samme produksjonen. Gjennom prosjektet ønsker vi å lærer mer om actionskripting samt hvordan man kan få flash til å kommunisere med en annen flash-applikasjon over nettet via en tjener. Kunnskapene skal erhverves ved å utvikle et reelt produkt i form av et 2-player sjakkprogram som er nettbasert. (se prosjektbeskrivelse vedlegg 1) Veileder i prosjektperioden har vært Håvard Sørli fra Høgskolen i Nord-Trøndelag. Steinkjer 30. mai 2003 Trygve Pløhn Ståle André Nygård MasterChess 1

3 Prosjektrapport 2. Sammendrag Vi har i denne 4-ukers prosjektperioden utviklet et sjakkspill som ligger tilgjengelig på Internett. Dette er et 2-player spill hvor man kan spill mot hverandre over nettet. Målgruppen for spillet er alle med tilgang til Internett, som liker å spille sjakk, og som har en datamaskin som ikke er altfor gammel. Spillet er laget slik at spillerne starter sjakk-klienter via sin nettleser, og disse klientene kommuniserer med hverandre via en tjener. Vi har benyttet Macromedia Flash MX som utviklingsverktøy for klientene, og har der benyttet teknologi som gjør at brukerne må ha Flashplayer 6.0 plug-in installert i nettleseren. På tjenersiden har vi valgt å benytte Unity Socket Server, som er XML-basert. Her har det også vært nødvendig med en del Java-programmering for å utvikle nødvendig funksjonalitet. Vi har funnet det meget hensiktsmessig å benytte XML som meldingsstruktur da man har standardisert teknologi for å håndtere XML-meldinger på både klient- og tjenersiden. Denne rapporten beskriver de valg som er gjort gjennom prosjektet, og konkluderer med at det har vært et meget lærerikt og interessant prosjekt, og at vi gjennom prosjektet har utviklet et meget godt produkt. Det ferdige produktet er installert og kan testes fram til etter sensurern på URL-adressen MasterChess 2

4 Prosjektrapport Innholdsfortegnelse 1. Forord Sammendrag Kommunikasjonen mellom klientene Hva er XML? Elementer, elementinnhold, attributter og CDATA DTD-struktur, velformede og gyldige dokumenter XML-parsing Kommunikasjonsprotokollen i MasterChess Struktur på XML-meldingene Klient-/tjener-arkitekturen XML-Socket i Flash XMLSocket-klassen Kommunikasjon mellom klient og tjener XMLSocket og sikkerhet Muligheter og begrensninger ved bruk av XMLSocket Unity Socket Server Rom-metaforen i Unity Socket Server Konfigurering av Unity Socket Server MasterChess1.java Funksjonalitet på tjenersiden UnityCore - bruk av ferdige funksjoner på klientsiden Sjakk-klienten Fargebruk Preloader Innlogging Lobby Spillbrettet Sjakkbrettet svartrute og hvitrute Brikkene Markering av lovlige og ulovlige felt Hvordan beregner vi og viser hvilke felt som er lovlige og ulovlige Hvordan sjekker vi for sjakk, sjakkmatt og remis Smarte og dumme brikker Bruk av lyd Sjakk-tjeneren Utviklingsprosess og grensesnitt Innlogging, klientegenskaper og brukerliste Meldingsformidling Lagring av spill på tjeneren Kravspesifikasjon Testing Konklusjon Litteraturliste Figurliste Vedlegg MasterChess 3

5 Prosjektrapport 3. Kommunikasjonen mellom klientene 3.1. Hva er XML? XML 1 er et markeringsspråk som kan brukes til å beskrive hvilken som helst type informasjon ved hjelp av koder ( tagger ). XML kan brukes for å formatere tekst, ved lagring i databaser, eller (slik som vi benytter det) ved meldingsutveksling. Man kan si at HTML er en variant av XML siden et HTML-dokument i tillegg til informasjon innholder tagger som beskriver hvordan informasjonen skal presenteres i nettleseren (skrifttyper, størrelse, lenker, osv.). Samtidig oppfyller ikke nødvendigvis et HTMLdokument alle reglene som gjelder for et velformet XML-dokument. I et velformet XMLdokument skal bl.a.: Navn på start-tag og slutt-tag må stemme. Dette er feil: <BODY>Teksten</body>, mens dette er korrekt: <BODY>Teksten</BODY>, og dette er korrekt: <body>teksten</body>. Alle tagger avsluttes må avsluttes med en slutt-tag. IMG-taggen er et eksempel på en tag som er godkjent i HTML men ikke i XML. Tomme tagger må skrives slik: <IMG SRC="bilde.jpg"/>. Alle tagger skal nøstes riktig. Dette er feil: <X>xxxx<Y>zzzz</X>ææææ</Y>, mens dette er riktig: <X>xxxx<Y>yyyy</Y>xxxx</X>. Ved å ta i bruk XML kan man lage egne markeringsspråk vha. egne definerte tagger for å strukturere informasjonen akkurat slik man vil. For å forklare hva som menes med dette, er det enklest å ta utgangspunkt i et eksempel. Nedenfor vises hvordan man kan strukturere en boksamling på en selvbeskrivende måte vha. XML: <?xml version="1.0"?> <BOKARKIV> <BOK BOKID="1"> <TITTEL>Doedens seier</tittel> <FORFATTER>Alistair MacLean</FORFATTER> <UTGIVELSESAAR>1995</UTGIVELSESAAR> </BOK> <BOK BOKID="2"> <TITTEL>Fiendens fiende</tittel> <FORFATTER>Jan Guillou</FORFATTER> <UTGIVELSESAAR>1989</UTGIVELSESAAR> </BOK> </BOKARKIV> Elementer, elementinnhold, attributter og CDATA Et XML-dokument består av såkalte elementer strukturert på en hierarkisk måte. I eksemplet ovenfor har vi 5 elementer: BOKARKIV, BOK, TITTEL, FORFATTER, UTGIVELSESAAR. 1 XML: Extensible Markup Language MasterChess 4

6 Prosjektrapport Et element må ha: En start-tag. En slutt-tag. Et elementnavn. I tillegg kan et element f.eks. ha: Elementinnhold (verdi). Dette kan være vanlig tekst eller nøsting av andre elementer. Attributt(er). Figur 1 og Figur 2 nedenfor beskriver dette for to av elementene i bokarkiveksemplet: Elementnavn Elementnavn <FORFATTER>Alistair MacLean</FORFATTER> Start-tag Elementinnhold (verdi) Slutt-tag Figur 1 - FORFATTER-elementet Elementnavn Attributtnavn Attributtverdi <BOK BOKID="2"> <TITTEL>Fiendens fiende</tittel> <FORFATTER>Jan Guillou</FORFATTER> <UTGIVELSESAAR>1989</UTGIVELSESAAR> </BOK> Figur 2 - BOK-elementet Dersom vanlig tekst (elementverdi) inneholder reserverte XML-tegn (som f.eks. < ) må man benytte entitetsreferansene til disse tegnene (f.eks. < ), eller bruke den spesielle CDATAtaggen. Innenfor denne taggen kan man skrive hvilken som helst tekst, og dette benytter vi til tider i vårt prosjekt for å sikre at data som sendes innbakt i XML-meldinger ikke ødelegger XML-strukturen. Figur 3 nedenfor viser formatet på denne taggen. <![CDATA[ Hvilken som helst type tekst " ' < > &... ]]> CDATA start CDATA-område Figur 3 - CDATA-områder CDATA slutt MasterChess 5

7 Prosjektrapport DTD-struktur, velformede og gyldige dokumenter Det er også mulig å definere strukturen på et XML-dokument vha. en DTD 2. En DTD beskriver i detalj hvilke elementer som er lovlige, om de skal komme i en fast rekkefølge, om elementet må være med, om det skal være kun et eller det kan være flere elementer, hvilke attributter kan/må være med, osv. Et XML-dokument som er linket til en DTD og som oppfyller alle kravene til denne DTD en sies å være gyldig (lovlig). Et velformet XMLdokument trenger altså ikke nødvendigvis å være gyldig. De XML-meldingene vi benytter i dette prosjektet har ingen formell DTD-beskrivelse, men strukturen på meldingen må følge den beskrivelsen som kan leses i vedlegg 3 (XML-struktur MasterChess versjon 1) XML-parsing De fleste programmeringsspråk har tilgjengelig grunnfunksjoner eller tilleggsfunksjoner som gjør det mulig å parse XML-dokumenter. En XML-parser brukes til å lese et XMLdokument og trekke ut ønsket informasjon. Fordelen med en åpen standard XML, er at programmeringsgrensesnittet for XML-parsere er standardisert. Man kan med andre ord benytte tilnærmet samme syntaks ved tolking av XML-dokumenter i både Java, Flash ActionScript og PHP, som er noen eksempler på programmeringsspråk som har implementert parsere. Det er hovedsakelig to typer parsere: 1. Hendelsesbasert parsere: Dokumentet gås igjennom fra start til slutt (hvis det ikke avbrytes underveis), og bestemte metoder kalles opp når parseren kommer til ulike deler av dokumentet (f.eks. startelement og endelement som kalles opp når parseren kommer til en start-tag og en slutt-tag). Ved å implementere egne metoder med egne tester for disse hendelsene kan man plukke ut aktuell informasjon fra ønskede elementer. 2. DOM 3 -parsere: Hele dokumentet lastes inn i et objekt (datastruktur i RAM). Elementer, attributter og elementverdier finnes direkte ved å kalle opp de riktige metodene i DOM-objektet (f.eks. getnodename og getnodevalue). Eksemplet nedenfor ( Figur 4) viser hvordan vi benytter parsere både på klientsiden (Flash) og tjenersiden (Java) for å hente ut data fra XML-meldingene i vårt prosjekt: 2 DTD: Data Type Definition 3 Document Object Model MasterChess 6

8 Prosjektrapport (1) Flash: type = xmldok.childnodes[0].attributes.type; (2) Flash: Element root = xmldok.getrootelement(); String fra = root.getattributevalue("from"); (1) (2) <MESSAGE TYPE="chessmanMove" FROM="MasterChess1 Client"> <TOCLIENTID>11</TOCLIENTID> <MOVE>Qd2-d4</MOVE> </MESSAGE> (4) (4) Flash: flytt = xmldok.childnodes[0].childnodes[1].firstchild.nodevalue; (3) (3) Flash: klientid = xmldok.childnodes[0].childnodes[0].firstchild.nodevalue; (3) Java: List elements = root.getchildren(); for(int i=0;i<root.size();i++) { Element element = (Element) elements.get(i); if(element.getname().equals("toclientid")) { klientid = element.gettext(); Figur 4 - XML-parsing i Flash og Java 3.2. Kommunikasjonsprotokollen i MasterChess Et 2-player nettbasert sjakkspill er avhengig av at to instanser av en Flash-applikasjon er i stand til å sende meldinger til hverandre over Internett. Dette kan for eksempel være en melding som sendes til motstander når en spiller har flyttet en brikke på brettet, en melding om at en spiller står i sjakk, eller en melding som sendes dersom en spiller lukker Flashprogrammet. I vårt spill er disse meldingene basert på XML (se Figur 5): APPLIKASJON 1 MasterChess.swf XML-baserte meldinger APPLIKASJON 2 MasterChess.swf Figur 5 - Kommunikasjon 2-player nettbasert sjakk Struktur på XML-meldingene Felles for alle XML-meldingene som sendes er at rot-elementet har navnet <MESSAGE> og at dette elementet har attributtene TYPE og FROM. Nedenfor vises et eksempel på en slik melding: <MESSAGE TYPE="chessmanMove" FROM="MasterChess Client"> <TOCLIENTID>5</TOCLIENTID> <MOVE>Pd2-d4</MOVE> </MESSAGE Attributten TYPE forteller mottakeren at dette dreier seg om flytting av en brikke. Mottakeren vet da videre at flyttet som er gjort befinner seg inni barne-elementet som har navnet <MOVE> (i dette tilfellet Pd2-d4 som betyr bonde på felt d2 flytter til felt d4 ). MasterChess 7

9 Prosjektrapport En detaljert oversikt over strukturen på alle aktuelle meldinger som sendes mellom spillerne finnes i vedlegg 3, XML-struktur MasterChess versjon 1. Tabell 1 nedenfor viser en kort forklaring på de fleste av meldingstypene: Tabell 1 - XML-struktur kommunikasjonsprotokollen Type Forklaring requestclientname Sjakkspilleren har angitt et navn (nickname) han ønsker å benytte ved innlogging til lobbyen, og sender en forespørsel om det er greit å bruke det (om navnet er ledig). acceptclientname Spilleren får beskjed tilbake om ønsket navn aksepteres eller ikke. userlist Sjakkspillere i lobbyen får oppdatert liste over alle spillere i lobbyen når nye kommer til eller når andre forlater lobbyen. requestchallenge En spiller utfordrer en annen spiller som er inne i lobbyen. acceptchallenge Utfordret spiller svarer ja eller nei på utfordringen. cancelchallenge En utfordrer trekker tilbake utfordringen. chessmanmove Informasjon om flytting av sjakkbrikke. info Sender informasjon om at egen konge står i sjakk, sjakk matt, eller at spillet går til remis (uavgjort). chatmessage En tekstmelding (chat) fra en spiller til motspilleren. opponentleftgame En melding som sendes til en spiller når motstanderen har forlatt spillet; og med informasjon om årsaken til dette (motstander har koblet fra, motstander har overgitt seg, spillet er utsatt, de har blitt enige om uavgjort). leavegame Sender en melding om at spiller forlater spillet og går ut i lobbyen igjen. Meldingen inneholder også informasjon om hvorfor spiller forlater spillet (motstander har koblet fra, spilleren gir seg, spillet utsettes eller de har blitt enige om uavgjort). savegame Sendes av en spiller når han ønsker å lagre et øyeblikksbilde av brettet. Spilleren angir et ønsket passord, og får oppgitt en game-id tilbake fra tjeneren. loadgame Sendes av en spiller når han ønsker å åpne et lagret spill. Spilleren angir ønsket game-id og tilhørende passord, og forespørsel om å åpne et gammelt (utsatt) spill sendes til motspilleren. requestturntable En spiller sender en forespørsel til motspiller om å bytte plass ( snu bordet ). Hvit spiller vil overta sort spiller sin plass og omvendt Klient-/tjener-arkitekturen For at datamaskiner på Internett skal kunne kommunisere med hverandre må en av datamaskinene passivt vente på at den andre skal ta kontakt, mens den andre datamaskinen aktivt må initiere kommunikasjonen med den som står å lytter. Kommunikasjonen skjer med andre ord mellom 2 programmer, hvor det ene har rollen som tjenerprogram og det andre har rollen som klientprogram. En Flash-applikasjon har muligheten til å opptre som et klientprogram men ikke muligheten til å opptre som et tjenerprogram. Det vil si at to Flash-applikasjoner ikke er i stand til å MasterChess 8

10 Prosjektrapport kommunisere direkte med hverandre, men må kommunisere via en tredjepart som er i stand til å opptre som et tjenerprogram (se Figur 6). KLIENT 1 MasterChess.swf KLIENT 2 MasterChess.swf XML-baserte meldinger TJENER XML-baserte meldinger Figur 6 - Kommunikasjon mellom to klienter via tjener Klient 1 sender en melding til tjeneren som sørger for å sende meldingen videre til klient 2 som er den egentlige mottakeren av meldingen. I Flash kan man benytte XMLSocket-klassen for å kommunisere med et tjenerprogram XML-Socket i Flash Flash tilbyr klient-/tjener-funksjonalitet ved å benytte XMLSocket-klassen. Ved å benytte objekter av denne klassen kan man opprettet en TCP/IP socket-forbindelse mellom Flashklienten og en tjener-applikasjon. KLIENT 1 MasterChess.swf Flash XMLSocket class TCP/IP KLIENT 2 MasterChess.swf Flash XMLSocket class TCP/IP Internett-teknologi TJENER Internett-teknologi Figur 7 - Kommunikasjon med tjener via XMLSocket-klassen XMLSocket-klassen XMLSocket tilbyr 3 ferdigdefinerte funksjoner: Tabell 2 - XMLSocket funksjoner Funksjon XMLSocket.connect (host, port) XMLSocket.send (XML-object) XMLSocket.close ( ) Forklaring Åpner socket-forbindelse med angitt tjener (host, port). Sender et XML-objekt til over socket-forbindelsen til tjenerapplikasjonen. Lukker socket-forbindelsen. MasterChess 9

11 Prosjektrapport Videre tilbyr den 4 hendelseshåndterere som eventuelt kan implementeres i Flash-klienten: Tabell 3 - Hendelseshåndterere XMLSocket Event-handler Forklaring XMLSocket.onConnect (success) En funksjon som kalles når en forespørsel (connect) er utført med/uten suksess (true/false). XMLSocket.onData (data) En funksjon som kalles opp når en XML-melding har blitt overført fra tjener-applikasjonen. Som standard kaller denne funksjonen opp onxml-funksjonen med den parsede XML-meldingen som argument. XMLSocket.onXML (XML-object) En funksjon som kalles opp når en XML-melding er mottatt fra tjener-applikasjonen, og meldingen er ferdig parset. XMLSocket.onClose ( ) En funksjon som kalles når en forbindelse er lukket av på tjener-siden Kommunikasjon mellom klient og tjener Figur 8 viser hvordan kommunikasjon mellom en Flash-klient og en tjener-applikasjon kan foregå. På klientsiden vises det hvilke funksjoner som benyttes for å koble til og sende data over socket-forbindelsen (open, send), og hvilke håndterings-funksjoner som kalles opp når det mottas data fra tjeneren (onconnect, onxml, onclose). Når forbindelsen ( sesjonen ) mellom klient og tjener er opprettet, kan det sendes et ubegrenset antall meldinger fram og tilbake (toveis online kommunikasjon). Sesjonen i eksemplet kobles ned på tjenersiden, men den kunne også ha blitt avsluttet på klientsiden ved å benytte funksjonen close. Flash-klient Tjener connect (" ", 9100) onconnect (true) send ("<MELDING>Hallo!</MELDING>") onxml ("<MELDING>Hei ja</melding>") listen, accept... OK receive... "<MELDING>Hei ja</melding>" onclose ( ) close... Figur 8 - Eksempel på XMLSocket-sesjon MasterChess 10

12 Prosjektrapport XMLSocket og sikkerhet Av sikkerhetsmessige årsaker er det en del begrensninger ved bruk av XMLSocket: En Flash-klient kan kun koble til TCP-porter fra 1024 og oppover. En Flash-klient kan kun koble til tjenerapplikasjoner som ligger på datamaskiner i samme underdomene som.swf-fila ligger (dette er de samme sikkerhetsrestriksjoner som vi har på loadvariables, XML.sendAndLoad og XML.load. o Det er for eksempel greit at tjenerapplikasjonen ligger på tjener1.hint.no og.swf-fila ligger på o Men ikke greit dersom tjenerapplikasjonen ligger på tjener1.hint.no og.swffila ligger på o Det er selvfølgelig også greit dersom tjenerapplikasjon og.swf-fil (som regel publisert via en webtjener) ligger på samme datamaskin. I dette tilfelle går det også an å benytte IP-adressen som URL og host-navn Muligheter og begrensninger ved bruk av XMLSocket Ved å benytte XMLSocket har man en toveis kommunikasjon mellom tjenerapplikasjon og Flash-klient. Klienten står hele tiden å lytter etter data, og har muligheten til å behandle data som kommer fortløpende. XMLSocket er derfor for eksempel godt egnet i applikasjoner som inneholder muligheten for real-time Chat. Et chat-system kunne også blitt implementert vha. en standard webtjener med mulighet for tjenerside-skripting (ASP, PHP, ) på tjenersiden, og loadvariables eller XML.load på klientsiden. I motsetning til XMLSocket er man da avhengig av at Flash-klienten aktivt sender GET-forespørsler til webtjeneren med jevne mellomrom for å få lastet over oppdatert informasjon. Dersom man benytter standard tjenerside-skripting på tjenersiden, har man den fordelen at teknologien på tjenersiden er lettere tilgjengelig for å få implementer tjenerapplikasjonen. Ulempen med å benytte en løsning med XMLSocket og åpen klient-/tjener-kommunikasjon er at implementeringen på tjenersiden blir vanskeligere. Man må sette opp en egen dedikert socket-tjener for å få direkte kommunikasjon med Flash-klienten, og dette krever som regel at man selv disponerer en tjenermaskin som kan benyttes til denne bruken. En annen ulempe med å bruke en dedikert socket-tjener, er at det kan være umulig for enkelte brukere å få tilgang til tjeneren pga. brannmurer. Den tjeneren som vi har valgt benytter for eksempel TCP-port nr. 9100, og i enkelte tilfeller vil folk som sitter på innsiden av brannmurer ikke ha muligheten til å ta kontakt med andre datamaskiner via denne porten på Internett. Selv om de får hentet ned Flash-fila som ligger på en standard webtjener på port 80, vil de ikke kunne benytte denne klienten til å spille sjakk med andre på Internett (se Figur 9 som illustrerer dette). MasterChess 11

13 Prosjektrapport Nettleser unity.hint.no:9100 (1) Uten brannmur Nettleser unity.hint.no:9100 (2) Med brannmur Figur 9 - Aktuelt problemer med brannmur 3.4. Unity Socket Server I vårt prosjekt har vi valgt å benytte den såkalte Unity Socket Server som utgangspunkt på tjenersiden. Programmet er i hovedsak utviklet av Derek Clayton, og kan lastes ned fra Internett på adressen En 10-klienters trial licence og en ubegrenset non-commercial licence (academic institutions, artists, and non-profit organizations) er gratis i bruk. På hjemmesiden finnes også en mer omfattende dokumentasjon av produktet. Unity er et Java-basert tjenerprogram som gjør det mulig å tilpasse egne trådbaserte sockettjenere vha. ferdig definerte Java-klasser (Client, KnockResponse, Message, Room, RoomProperties). Dokumentasjon (Javadoc) på bruk av disse klassene finnes på hjemmesiden til Unity, og på prosjektets vedlagte CD-ROM. Ved å benytte API-et til dette produktet i stedet for Java sin Socket- og ServerSocket-klasse direkte reduserer vi abstraksjonsnivået en del, samtidig som vi benytter oss av Java-klasser som er grundig testet og tilsynelatende stabile. Å programmere et tjenerprogram fra bunnen av er uansett ikke hovedfokus i dette prosjektet. Begge prosjektdeltakerne har tidligere deltatt i et prosjekt ( Master-chat ) hvor vi har programmert og implementert en chat-tjener vha. Java og Servlets. Figur 10 viser en oversikt over de teknologier vi benytter oss av i det nettbaserte sjakkspillet vi har utviklet. KLIENT MasterChess.swf Unity Core funksjoner Flash XML class Flash XMLSocket class TCP/IP XML-baserte meldinger TCP Socket API Internett-teknologi TJENER MasterChessRoom.class Unity Socket Server API JDOM XML API Java Socket class TCP/IP Figur 10 - Oversikt over teknologier på klient- og tjenerside MasterChess 12

14 Prosjektrapport Rom-metaforen i Unity Socket Server I Unity Socket Server benyttes en rom -metafor. Klientprogram kan gå inn i ønsket rom på tjeneren og kan da sende og motta meldinger til og fra andre klienter som oppholder seg i samme rom. Unity har et spesielt standard rom som har funksjonen som en dispatcher ; dvs. ekspederer klienter videre til riktig rom. Figur 11 viser hvordan Flash-klienten først kontakter dispatcher-tjeneren (1) med forespørsel om ønsket rom. Dispatcheren sørger for å formidle kontakt mellom klienten og, i dette tilfellet, masterchess1-tjeneren (2). <MESSAGE TYPE="requestRoom" FROM="Client"> <ROOMID>masterChess1</ROOMID> </MESSAGE (1) dispatcher sportchat MasterChess.swf musicchat (2) masterchess1 Figur 11 - Unity Socket Server rooms I tillegg til det spesielle dispatcher-rommet, følger det en del andre standard-rom med Unity som har ferdig definerte funksjoner. F.eks. så følger det med et broadcast -rom som rett og slett sender meldinger som sendes inne i rommet til alle klienter som befinner seg der (inkludert klienten som sendte melding). Et annet eksempel på rom som følger med er et ChatRoom, som i tillegg har funksjoner for å ta vare på brukernavn, og for å sende oppdaterte lister over brukere som er inne i rommet. I Unity skiller vi mellom rom-typer (ROOM_TYPES) som beskriver hva rommet skal tilby av tjenester og rom-instanser (ROOM_INSTANCES): Think of rooms in a hotel. A hotel may only have 3 room types...economy, business, and luxury. However, the hotel may actually have 100 instances of rooms...25 economy, 25 business, and 50 luxury. [Unity - Version Server Documentation] Dersom det er deklarert en rom-type, vil det ikke være tilgjengelig på tjeneren før det er opprettet en instans av dette rommet. Det kan opprettes flere instanser av samme rom-typen, for eksempel kan rom-typen ChatRoom ha to instanser på samme Unity-tjener: sportchat og musicchat. MasterChess 13

15 Prosjektrapport Konfigurering av Unity Socket Server Unity konfigureres ved å endre på de XML-baserte konfigurasjonsfilene som ligger lagret i Unity sin hovedkatalog: server.xml: Informasjon om lokal katalog (UNITY_HOME), TCP-porter (server og admin), admin-passord, meldingsslutt -tegn (EOM), og hvor de resterende konfigurasjonsfilene befinner seg. RoomTypes.xml: Informasjon om hvilke typer rom som finnes, og hva de tilsvarende Java class-filene heter. RoomInstances.xml: Informasjon om hvilke instanser av rommene som skal startes opp. Det kan startes ingen, en eller flere instanser av hver rom-type. I denne filen kan du også bl.a. sette opp restriksjoner på IP-adresser, antall tillatte klienter m.m MasterChess1.java Hvert rom må implementeres som en Java-klasse som arver egenskaper av Unity-klassen Room. Den kompilerte klassen kjøres av tjenerprogrammet som en egen tråd (Threadklassen). I disse klassene programmeres det inn logikk i forhold til hvordan meldinger (XML) som kommer til det spesifikke rommet skal behandles. I vårt prosjekt har vi programmert en egen Room-klasse MasterChess1 som behandler alle XML-meldinger som kommer til og fra Unity. Kildekoden til denne klassen finnes i Vedlegg 4 og klassediagrammet er vist i Figur 12. Vi har også programmert en egen privat klasse ClientProperties som holder rede på egenskaper til klienter (sjakkspillere) som er tilkoblet rommet. Vårt rom er lagt inn i konfigurasjonsfilene til Unity på følgende måte: I fila RoomTypes.xml : <ROOM> <ID>MasterChess1</ID> <CLASS>MasterChess1</CLASS> </ROOM> I fila RoomInstances.xml : <ROOM> <ID>masterChess1</ID> <TYPE_ID>MasterChess1</TYPE_ID> <MAX_CLIENTS>10</MAX_CLIENTS> <SAVEGAME_DIRECTORY>rooms/masterChess</SAVEGAME_DIRECTORY> </ROOM> Siden vi benytter oss av en trial-licence versjon av Unity har vi satt MAX_CLIENTS lik 10 slik at brukeren blir koblet kontrollert ned fra tjeneren dersom han er nr. 11 som kobler seg til. SAVEGAME_DIRECTORY er en egendefinert egenskap til rommet, og bestemmer hvor lagrede spill blir plassert (i underkatalogen rooms/masterchess i forhold til hovedkatalogen til Unity). Denne verdien hentes fram i MasterChess1-klassen ved å kalle opp Room-metoden getproperty("savegame_directory"). MasterChess 14

16 Prosjektrapport Room MasterChess1 - methodmap : HashMap + onaddclient (Client) : void + onclientcountchange (int) : void + onreceivemessage (Message) : void + onremoveclient (Client) : void + onroomdie ( ) : void - doacceptchallenge (Element, Message) : void - doacceptclientname (Element, Message) : void - docancelchallenge (Element, Message) : void - dochatmessage (Element, Message) : void - doforwardraw (Element, Message) : void - doleavegame (Element, Message) : void - doloadfromfile (String) : String - doloadgame (Element, Message) : void - doopponentleftgame (int, String) : void - dorequestchallenge (Element, Message) : void - dosavegame (Element, Message) : void - dosavetofile (String, String) : void - dosenduserlist ( ) : void ClientProperties - m_addonuserlist : boolean - m_name : String - m_opponentid : int + getaddonuserlist ( ) : boolean + getname ( ) : String + getopponentid ( ) : String + set AddonUserlist (boolean) : void + setname (String) : void + setopponentid (int) : void Figur 12 - Klassediagram MasterChess1 MasterChess1-klassen består av en del public -metoder som kan/må implementeres, og som kan ses på som hendelseshåndterere (se Tabell 4). I tillegg har MasterChess1-klassen arvet en rekke metoder og egenskaper fra Room-klassen. Dette er metoder for å sende meldinger til alle i rommet, en og en klient, kaste ut klienter lukke rommet osv. Dokumentasjon på alle klassene er tilgjengelig som Javadoc på hjemmesiden til Unity. Tabell 4 - Hendelser og hendelseshåndterere i Unity Server Rooms Hendelse Hendelseshåndterer(e) - metode Rommet initieres init() Melding mottatt fra en klient onreceivemessage(message message) Ny klient har ankommet rommet onaddclient(client client) onclientcountchange(int newcount) En klient har forlatt rommet onremoveclient(client client) onclientcountchange(int newcount) Rommet (servere) har blitt avsluttet onroomdie() De private metodene (som starter navnet med do ) er metoder som vi selv har programmert, og som vi sørger for at kalles opp fra hendelseshåndtererne. Den metoden som er mest i bruk er onreceivemessage som kalles opp hver gang det kommer en ny melding inn til dette rommet. I denne metoden tolkes det først hvilken type XMLmelding som kommer (TYPE = requestclientname, TYPE = chessmanmove osv. se Tabell 1). Avhengig av hvilken type melding som har ankommet kalles en av våre metoder opp (doacceptclientname, doforwardraw, osv.) med XML-objektet og meldings-objektet som innparameter. I disse metodene sørges det for å holde rede på klienter i rommet ved å sette klient-egenskeper i ClientProperties-klassen, og det sørges for at meldinger sendes til de ulike klientene vha. Room-metoden broadcastclient. MasterChess 15

17 Prosjektrapport 3.5. Funksjonalitet på tjenersiden Vedlegg 2 ( Opprinnelig flytskjema innlogging ) viser flytskjemaet som er utgangspunktet for utviklingen av innlogginsfunksjonaliteten. Dette innebærer hele prosessen fra at brukeren får tilgang til sjakkspillets lobby, til at to sjakkspillere har blitt enige om å spille mot hverandre. I tillegg til at Unity-tjeneren fungerer som en formidler av nettverksmeldinger fra en klient til en annen, har den også en del tilleggsfunksjonalitet som beskrives i stikkordsform her: 1. Tjeneren holder rede på hvilke brukernavn hver enkelt sjakkspiller som er online er registrert som. a. Når en bruker kobler seg til MasterChess-tjeneren får han først beskjed om å registrere seg med et ønsket brukernavn. b. Tjeneren kontrollerer om noen er registrert med dette brukernavnet fra før, og sender beskjed tilbake til klienten om at han må velge et nytt. 2. Tjeneren sender oppdatert brukerliste over sjakkspillere som befinner seg i lobbyen, og det kun de aktuelle spillerne som er i lobbyen. Brukerliste sendes dersom: a. En nylig innlogget sjakkspiller har ankommet lobbyen. b. En sjakkspiller har utfordret en annen sjakkspiller. Begge navnene (utfordrer og den som utfordres) fjernes på brukerlisten som sendes, og disse to vil ikke motta den oppdaterte listen. c. En sjakkspiller har avsluttet en sjakkspill og valgt å gå tilbake til lobbyen igjen. 3. Tjeneren gir beskjed til motstander dersom en sjakkspiller avbryter et spill på unormal måte; for eksempel ved at han lukker Flash-programmet sitt. Dette gjøres ved at tjeneren holder rede på hvem som er motstanderen til en sjakkspiller som er opptatt med et spill. 4. Tjeneren har mulighet til å ta imot og lagre pågående spill. Disse spillene kan senere hentes tilbake (åpnes) igjen. Lagring gjøres på følgende måte på tjenersiden: a. Tjeneren tar imot en XML-melding fra sjakkspilleren ( savegame ) med bl.a. et øyeblikksbilde på hvordan sjakkbrettet ser ut ( CHESSBOARD : farge, brikke, og posisjon) og de trekkene som er gjort så langt ( MOVELIST ). Meldingen inneholder også informasjon om ønsket passord ( PASSWORD ), og eventuelt en spill-id ( GAMEID ) dersom spiller har lagret spillet tidligere. b. Tjeneren sjekker hvilken GAMEID som er angitt. Dersom GAMEID-en er -1 vil tjeneren bestemme en ny game-id (neste ledige game-id ligger lagret på en egen fil), og lagre spillet som en tekstfil på tjenermaskinen. Lagret spill med game-id 123 får filnavnet game123.xml. c. Tjeneren sender tilslutt en bekreftelse ( acceptsavegame ) tilbake til sjakkspilleren med informasjon om Game-ID og passord. 5. Tjeneren har muligheten til å returnere et lagret spill dersom begge spillere er enige om å bytte til et lagret spill. Åpning av spill gjøres på følgende måte: a. Tjeneren mottar forespørsel fra spiller A om å åpne et spill ( loadgame ). ACCEPTED er satt lik false i utgangspunktet. b. Tjeneren kontrollerer om spill-id er gyldig ( File not found ), og returnerer melding til spiller A om feil spill-id ( acceptloadgame med kode -1) dersom den ikke er gyldig. c. Tjeneren kontrollerer så eventuelt om passordet stemmer. Returnerer melding til spiller A om feil passord ( acceptloadgame med kode -2) dersom det ikke stemmer. d. Dersom både spill-id og passord stemmer overens vil tjeneren sende forespørselen ( loadgame ) videre til motspiller B. MasterChess 16

18 Prosjektrapport e. Det neste som skjer er at tjeneren mottar en melding fra spiller B ( loadgame ) som inneholder informasjon om spilleren aksepterer å åpne spillet ( GAMEID er ulik -3 og ACCEPTED er lik true) eller ikke ( GAMEID er lik -3 og ACCEPTED er lik false). i. Dersom spilleren aksepterer åpning av spill sendes en kopi av brett og flytt til begge sjakkspillerne (A og B). ii. Dersom spilleren ikke aksepterer åpning av spill sendes en melding til spiller A om at motstander forkastet forespørselen om å åpne spill ( acceptloadgame med kode -3) UnityCore - bruk av ferdige funksjoner på klientsiden Også på klientsiden (Flash) har vi muligheten til å ta i bruk ferdige funksjoner som gjør det enklere å kommunisere med Unity Socket Server på tjenersiden: UnityCore client module (også disse kan lastes ned fra Unity sin hjemmeside). Vi valgte å bruke disse som utgangspunkt ved programmering av Socket-kommunikasjonen på Flash-klienten, og vi har i størst mulig grad holdt oss til den framgangsmåten som er brukt i eksempel-klienter som er beskrevet på Unity sin hjemmeside. UnityCore består av 3 eksterne filer (se Figur 13) med ferdige klasser og funksjoner skrevet i ActionScript-kode. Disse filene ble kopiert til en egen katalog (unitycore) under utviklingen, og ble inkludert i.fla-fila ved å benytte #include: #include "unitycore/socketmanager.as" #include "unitycore/messageprocessor.as" #include "unitycore/log.as" Disse 3 filene inneholder funksjoner kan benyttes for å skjule noe av kompleksiteten i forhold til å benytte XMLSocket- og XML-klassene direkte. De inneholder noen funksjoner og hendelseshåndterere som ikke skal overskrives og noen som vi delvis må implementere innhold i selv. Vår implementering av disse funksjonene er også for oversiktligheten sin del (og i hht. Unity sine eksempler) gjort i egne eksterne filer (i samme katalog som.fla-fila): #include "MyClientSocketManager.as" #include "MyClientMessageProcessor.as" #include "MyClientMessageBuilder.as" MasterChess 17

19 Prosjektrapport Figur 13 - UnityCore eksterne filer (.as) I de siste 3 filene programmeres inn logikk i forhold til hva som skal skje ved tilkobling til tjeneren, ved mottak av meldinger og hvordan XML-meldinger skal konstrueres (fullstendig kildekoder finnes i Vedlegg 5). Ved å holde dette i egne filer vil det være lett å legge til ny funksjonalitet i forhold til kommunikasjon med Unity-tjeneren. Filene har følgende innhold: MyClientSocketManager.as: o Hendelseshåndterere som må implementeres og som kalles opp under tilkobling til tjeneren: - MyClientSocketManager.prototype.onConnectFailure = function ( ) - MyClientSocketManager.prototype.onServerKillConnect = function ( ) - MyClientSocketManager.prototype.onClientKillConnect ( ) - MyClientSocketManager.prototype.onConnectSuccess ( ) MyClientMessageProcessor.as: o Hendelseshåndtere som kalles automatisk opp avhengig av hvilken type melding som kommer. o Dersom vi for eksempel har en XML-melding av typen TYPE = chessmanmove, oppretter vi her en funksjon som kalles chessmanmove og programmerer inn det som skal skje dersom en slik melding kommer. Denne funksjonen kalles automatisk opp dersom en slik type melding ankommer klienten: - MyClientMessageProcessor.prototype.chessmanMove (XML.childNodes) MyClientMessageBuilder.as: o Inneholder funksjoner som tar i mot parametere, bygger riktige XMLmeldinger (setter på riktige tagger osv.) og returnerer meldingen som en tekststreng. o Dette gjør det enklere å konstruere XML-meldinger med riktig syntaks. funksjonen som skal konstruere meldingen som skal sendes ved chat har for MasterChess 18

20 Prosjektrapport eksempel følgende funksjonshode: - MyClientMessageBuilder.prototype.createChatMessage (tilklient,tekst) Det siste steget ved implementeringen av unitycore på klientsiden er å lage instanser av prototype av unitycore-klassene, og å sette referanser mellom socket-manager og message-processor. Dette gjøres i.fla-fila: // Opprett en MessageBuilder for å konstruere // XML MESSAGE tagger: msgbuilder = new MyClientMessageBuilder(); // Opprett instanser av våre sub-klasser: sockman = new MyClientSocketManager(unityServer, unityport, syslog); msgprocessor = new MyClientMessageProcessor(sysLog); // Sett referanser mellom sockman og msgprocessor sockman.setmsgprocessor(msgprocessor); msgprocessor.setsockman(sockman); For å sende meldinger over nettverket kan nå for eksempel følgende syntaks benyttes: var chattekst = "Hallo!"; var xmlmelding = msgbuilder.createchatmessage(motstanderid, chattekst) msgprocessor.sendmessage(xmlmelding); MasterChess 19

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas Prosjekt nr. 2011 22 Testrapport Hovedprosjektets tittel Implementering av plugin og utvikling av wizard for Det Norske Veritas Prosjektdeltakere Magnus Strand Nekstad s156159 Jørgen Rønbeck s135779 Dato

Detaljer

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider: Fra sist JSP - 2 Installasjon av Web-tjener Et enkelt JSP-script HTML statisk Forms Tags Ønsker dynamiske nettsider: Klientside-script/programmering Javascript, vbscript, applets Tjenerside-script/programmering

Detaljer

TDT4100 Objektorientert programmering

TDT4100 Objektorientert programmering Eksamensoppgave i TDT4100 Objektorientert programmering Tirsdag 2. juni 2009, kl. 09:00-13:00 Oppgaven er utarbeidet av faglærer Hallvard Trætteberg og kvalitetssikrer Trond Aalberg. Kontaktperson under

Detaljer

KTN1 - Design av forbindelsesorientert protokoll

KTN1 - Design av forbindelsesorientert protokoll KTN1 - Design av forbindelsesorientert protokoll Beskrivelse av A1 A1 skal tilby en pålitelig, forbindelsesorientert tjeneste over en upålitelig, forbindelsesløs tjeneste A2. Det er flere ting A1 må implementere

Detaljer

Mars Robotene (5. 7. trinn)

Mars Robotene (5. 7. trinn) Mars Robotene (5. 7. trinn) Lærerveiledning Informasjon om skoleprogrammet Gjennom dette skoleprogrammet skal elevene oppleve og trene seg på et teknologi og design prosjekt, samt få erfaring med datainnsamling.

Detaljer

En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden.

En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden. En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden. La meg med en gang si at jeg er rimelig grønn i Linux verden så dere får bære over med meg

Detaljer

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang VMware Horizon View Client Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang Introduksjon Fjerntilgang er blitt oppgradert til en bedre og mer moderne løsning. Programmet er identisk

Detaljer

En enkel lærerveiledning

En enkel lærerveiledning En enkel lærerveiledning ~ 1 ~ Innhold INNLEDNING... 3 Hva?... 3 Hvorfor?... 3 INN- og UTLOGGING... 4 Innlogging... 4 Utlogging... 5 Lærerinnlogging/-utlogging... 5 OUTLOOK / EPOST... 6 Skrive epost...

Detaljer

Brukerveiledning for Vesuv

Brukerveiledning for Vesuv Brukerveiledning for Vesuv Innhold Pålogging... 3 Registrering av ny bruker... 3 Glemt passord... 4 Startsiden... 5 Nytt utbrudd... 6 Nedtrekksmenyer... 6 Obligatoriske felt... 7 Spørsmål vises og fjernes...

Detaljer

Bruker- dokumentasjon. for. Norsk Kompetanseregister

Bruker- dokumentasjon. for. Norsk Kompetanseregister Bruker- dokumentasjon for Norsk Kompetanseregister Kortinnehaver Side 1 av 10 Innholdsfortegnelse Innledning...3 Kortinnehaver..4 Innlogging... 4 Innlogging med kompetansebevis... 4 Innlogging fra Internett...

Detaljer

SJAKK * Veiledning og undervisningsmateriell. for lærere. Utarbeidet for Larvikskolene i 2011 av Bjarte Engeset, Larvik Sjakklubb,

SJAKK * Veiledning og undervisningsmateriell. for lærere. Utarbeidet for Larvikskolene i 2011 av Bjarte Engeset, Larvik Sjakklubb, SJAKK * Veiledning og undervisningsmateriell for lærere Utarbeidet for Larvikskolene i 2011 av Bjarte Engeset, Larvik Sjakklubb, i forbindelse med prosjektet SJAKKLØFTET SJAKKREGLER *En spiller har hvite

Detaljer

Kom i gang med emedia

Kom i gang med emedia Kom i gang med emedia Rev. 1 IG Solutions, www.ig-solutions.com 1 Innholdsfortegnelse: Fremside 1 Innholdsfortegnelse 2 Hvordan lage plastkort 3 Legg til bakgrunnsbilde 4 Legg til foto 4 Legg til tekst

Detaljer

DOKUMENTASJON E-post oppsett

DOKUMENTASJON E-post oppsett DOKUMENTASJON E-post oppsett Oppsett av e-post konto Veiledningen viser innstillinger for Microsoft Outlook 2013, og oppkobling mot server kan gjøres med POP3 (lagre e-post lokalt på maskin) eller IMAP

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

Brukerveiledning WordPress. Innlogging:

Brukerveiledning WordPress. Innlogging: Brukerveiledning WordPress Her er en liten guide for hjelpe deg gjennom det grunnleggende i Wordpress. Denne veilederen vil ta deg gjennom: Innlogging Lage en side Lage et innlegg Innlogging: For å logge

Detaljer

Veiledning hjemmeside Stjørdal Friidrettsklubb

Veiledning hjemmeside Stjørdal Friidrettsklubb Veiledning hjemmeside Stjørdal Friidrettsklubb Hjemmesida med adressen www.sfik.no er åpen for alle. Hvis du skal publisere et innlegg på hjemmesida må du logge deg inn med brukernavn og passord. Dette

Detaljer

Nedlasting av SCRIBUS og installasjon av programmet

Nedlasting av SCRIBUS og installasjon av programmet Nedlasting av SCRIBUS og installasjon av programmet Laget for BODØ FRIMERKEKLUBB av Sten Isaksen Versjon 06.01.2018 1 Før du laster ned Scribus: Du må vite hvilken versjon av Windows du har, sannsynligvis

Detaljer

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004 Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004 Oppgave 1 RMI-tjenerobjekt (databasewrapper) A Sentral tjenermaskin med database, RMi-register og RMI-tjenerprogram vis kart gjør bestilling

Detaljer

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett.

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett. Norgestur Introduksjon Bli med på en rundreise i Norge! Vi skal lage et spill hvor du styrer et helikopter rundt omkring et kart over Norge, mens du prøver å raskest mulig finne steder og byer du blir

Detaljer

KONTROLL INSIDE MSOLUTION

KONTROLL INSIDE MSOLUTION KONTROLL INSIDE MSOLUTION Forandre renholdsteam eller renholdsdager på oppdrag I denne brukerveiledningen skal vi bruke bytte renholdsdager. Det skjer jo at vi bytter renholdsdager eller team på kunder.

Detaljer

Administrering av SafariSøk

Administrering av SafariSøk Administrering av SafariSøk Administrering av SafariSøk Revisjonshistorie Revisjon $Revision: 1.6 $ $Date: 2003/08/05 12:44:02 $ Innholdsfortegnelse 1. Om programmet... 1 Generelt... 1 2. Fremgangsmåter...

Detaljer

1. Lage og vise et enkelt XML-dokument

1. Lage og vise et enkelt XML-dokument Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Lage og vise et enkelt XML-dokument Lene Hoff (revidert av Tore Mallaug) 1.9.2013 Lærestoffet er utviklet for faget XML Teknologi 1. Lage

Detaljer

INF Puslegruppa - Kom i gang med PusleChat

INF Puslegruppa - Kom i gang med PusleChat INF1010 - Puslegruppa - Kom i gang med PusleChat Sigmund Hansen sigmunha@student.uio.no 31. mars 2011 Last ned dokumentasjonen til kildekoden. 1 1 Klassestruktur 1.1 inf1010.pusle.chat.client.chatclient

Detaljer

KOM I GANG MED WORDPRESS En enkel guide for å hjelpe deg gjennom det grunnleggende i Wordpress

KOM I GANG MED WORDPRESS En enkel guide for å hjelpe deg gjennom det grunnleggende i Wordpress KOM I GANG MED WORDPRESS En enkel guide for å hjelpe deg gjennom det grunnleggende i Wordpress Sist oppdatert 05.06.2015 Innholdsfortegnelse 1. Hva er Wordpress?... 3 2. Hvordan logger jeg inn i kontrollpanelet?...

Detaljer

Brukerdokumentasjon Promed Online Booking

Brukerdokumentasjon Promed Online Booking Brukerdokumentasjon Promed Online Booking Informasjon om ProMed og online booking... 2 Systemkrav... 2 Internettoppkobling (hvis du bruker Norsk Helsenett)... 3 Internettoppkobling (hvis du ikke bruker

Detaljer

the web Introduksjon Lesson

the web Introduksjon Lesson Lesson 1 the web All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduksjon

Detaljer

Hvordan å lage og publisere ditt personlige visittkort

Hvordan å lage og publisere ditt personlige visittkort Hvordan å lage og publisere ditt personlige visittkort Av Asle Skauge Dette skal være en bruksanvisning som alle kan følge for å få lagt ut sitt personlige visittkort på internett. Hensikten med et slikt

Detaljer

Brukerveiledning Astra XT- programvare oppsett og kommunikasjons innstillinger.

Brukerveiledning Astra XT- programvare oppsett og kommunikasjons innstillinger. Brukerveiledning Astra XT- programvare oppsett og kommunikasjons innstillinger. Innholdsfortegnelse: Side 2 Side 3 Side 5 Side 7 Side 9 Side 14 Side 17 : Programforklaring : Installasjon : Registrering

Detaljer

Hvor i All Verden? Del 2 Erfaren Scratch PDF

Hvor i All Verden? Del 2 Erfaren Scratch PDF Hvor i All Verden? Del 2 Erfaren Scratch PDF Introduksjon Hvor i All Verden? er et reise- og geografispill hvor man raskest mulig skal fly innom reisemål spredt rundt i Europa. Dette er den andre leksjonen

Detaljer

1. Hent NotaPlan Online Backup på www.notaplan.no 2. Trykk på Download i menyen og på Download i linjen med Notaplan Backup

1. Hent NotaPlan Online Backup på www.notaplan.no 2. Trykk på Download i menyen og på Download i linjen med Notaplan Backup 1 Systemkrav ADSL eller minimum ISDN via router. Ved automatisk backup: Min. Windows XP / 2000 / 2003 (pga. Service) Ved manuellt system: Min. Windows 98 SE NotaPlan Backup bør installeres på den/de maskiner

Detaljer

Om du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1.

Om du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1. Pingviner på tur Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill Fag: Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon Velkommen til Scratch. Vi skal

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 10 Frist: 2014-04-11 Mål for denne øvinga:

Detaljer

praktiske eksempler DOM Document Object Model DOM og Høst 2013 Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

praktiske eksempler DOM Document Object Model DOM og Høst 2013 Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS DOM og praktiske eksempler Gløer Olav Langslet Sandvika VGS Høst 2013 Informasjonsteknologi 2 DOM Document Object Model Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Oblig 5 Webutvikling. Av Thomas Gitlevaag Oblig 5 Webutvikling Av Thomas Gitlevaag For oppgave 1 og 2 skal dere levere en funksjonell webside på deres hjemmeområde. Dere skal også levere alle phps-filene slik at man for en hver side kan slenge

Detaljer

FINANSREGNSKAP med IKT 7,5 sp (ØABED1000) BEDRIFTSØKONOMI I med IKT 10 sp (ØABED6000)

FINANSREGNSKAP med IKT 7,5 sp (ØABED1000) BEDRIFTSØKONOMI I med IKT 10 sp (ØABED6000) FINANSREGNSKAP med IKT 7,5 sp (ØABED1000) BEDRIFTSØKONOMI I med IKT 10 sp (ØABED6000) Orientering i forbindelse med PC-eksamen 27. november 2014 Alle oppmeldte studenter skal ta eksamen 27. november fra

Detaljer

HR analysen. Ny versjon 2009. Brukermal. Administratorer

HR analysen. Ny versjon 2009. Brukermal. Administratorer HR analysen Ny versjon 2009 Brukermal Administratorer 1) Som administrator Det første bildet en kommer inn på når en har logget seg inn er: A) Legg merke til den hvite boksen på høyre side der det står

Detaljer

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk Produktdokumentasjon Madison Møbler Administrasjonsside og Nettbutikk 1 1. Forord 1.1 Dokumentasjonen Dette er en teknisk dokumentasjon på produktet som er utviklet. Denne er tiltenkt personer med teknisk

Detaljer

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF Else Lervik, august 2010 (Av hensyn til JSF-delen av kurset anbefaler vi at du sørger for å ha NetBeans-versjon 6.9.) I den grad denne veiledningen

Detaljer

PROSESSDOKUMENTASJON

PROSESSDOKUMENTASJON PROSJEKT NR.: 10-30 Studieprogram: Anvendt Datateknologi Postadresse: Postboks 4 St. Olavs plass, 0130 Oslo Besøksadresse: Holbergs plass, Oslo TILGJENGELIGHET: Papir og elektronisk Telefon: 22 45 32 00

Detaljer

Brukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering

Brukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering Brukerdokumentasjon Webservices og webklient for kodeverk/ kodeverdi verifisering Innholdsfortegnelse... 3... 3... 3... 3... 4... 4... 4... 4... 8... 9... 10!... 10 "... 11 # $... 11 1. Om systemet 1.1.

Detaljer

Memoz brukerveiledning

Memoz brukerveiledning Memoz brukerveiledning http://memoz.hib.no Pålogging...1 Oversikt...2 Profilside...2 Inne i en memoz...3 Legg til ting...3 Tekstboks...3 Rediger og flytte på en boks...4 Bildeboks...5 Videoboks...7 HTML-boks...7

Detaljer

KOMME I GANG 3. Logge på 3. I redigeringsvinduet 4 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 6

KOMME I GANG 3. Logge på 3. I redigeringsvinduet 4 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 6 Innhold KOMME I GANG 3 Logge på 3 I redigeringsvinduet 4 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 6 Lukk 7 Ny 7 Flytt opp/ Flytt ned 7 Klipp 8 Kopier 8 Lim inn (krysspubliser, ny,

Detaljer

Brukermanual. Itpays W3 Publish. Sette opp, logge inn og komme i gang. Redigert den 23. mai 2005. http://www.itpays.no/produkter/publisering/

Brukermanual. Itpays W3 Publish. Sette opp, logge inn og komme i gang. Redigert den 23. mai 2005. http://www.itpays.no/produkter/publisering/ Brukermanual Itpays W3 Publish Sette opp, logge inn og komme i gang Redigert den 23. mai 2005 http://www.itpays.no/produkter/publisering/ Innholdsoversikt: 1 Generelt om Itpays w3 publish Side 3 2 Sette

Detaljer

References Hovedprosjekt ved Høgskolen i Oslo 2010 Testrapport

References Hovedprosjekt ved Høgskolen i Oslo 2010 Testrapport Innholdsfortegnelse Testdokumentasjon... 3 Innledning... 3 Brukertester... 3 Brukertest av filer... 3 Brukertest av lenker... 4 Brukertest av notater... 5 Enhetstester... 7 Konklusjon... 8 2 S ide Testdokumentasjon

Detaljer

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet "TGA"

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet TGA Et større programeksempel Hvordan løse et reelt problem med en objektorientert fremgangsmåte En større problemstilling I uke 4 skrev vi et program for å sjekke om et gen (en tekstfil) inneholdt ordet "TGA"

Detaljer

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

InfoRed Publisering. - produktbeskrivelse.  TalkPool WebServices Postboks Åneby InfoRed Publisering - produktbeskrivelse www.talkpool.no TalkPool WebServices Postboks 90 1484 Åneby InfoRed Produktbeskrivelse 2 Sammendrag InfoRed Publisering er produktet for å administrere en hel informasjonstjeneste,

Detaljer

CASCADING STYLESHEETS (CSS)

CASCADING STYLESHEETS (CSS) CASCADING STYLESHEETS (CSS) HVA ER CSS Stylesheets er en metode for å flytte selve formatteringen av et HTML dokument ut av selve dokumentet og over i et eksternt regelsett. Dette skyldes HTMLs manglende

Detaljer

FTP Info til brukerne

FTP Info til brukerne FTP Info til brukerne Ftp-serveren til Statens vegvesen er tenkt benyttet for brukere som trenger å utveksle store filer. Det presiseres at ftp-serveren kun er beregnet for utveksling av filer, ikke for

Detaljer

ThinkPage CMS 2.0. Hurtigveiledning. Av ThinkPage AS

ThinkPage CMS 2.0. Hurtigveiledning. Av ThinkPage AS ThinkPage CMS 2.0 Hurtigveiledning Av ThinkPage AS ThinkPage CMS 2 Forord Dette er en midlertidig brukerveiledning tar for seg de viktigste basisfunksjonene i ThinkPage CMS og gir brukeren nødvendig innføring

Detaljer

Testrapport. Studentevalueringssystem

Testrapport. Studentevalueringssystem Testrapport Studentevalueringssystem 1 Forord 1.2 Forord Dette prosjektet er et hovedprosjekt i data ved Høgskolen i Oslo, avdeling for ingeniørutdanning, og gjennomføres i samarbeid med Ingeniøravdeling

Detaljer

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP.

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. 1 Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. (Læreboka kapittel 2-5) Legg merke til den første blokken,

Detaljer

Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett å få firkanter til å falle over skjermen.

Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett å få firkanter til å falle over skjermen. Tetris Introduksjon Processing Introduksjon Lag starten på ditt eget tetris spill! Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett å få firkanter til å

Detaljer

NorskInternett Brukermanual. Sist oppdatert 09.08.15. Side 1/30

NorskInternett Brukermanual. Sist oppdatert 09.08.15. Side 1/30 NorskInternett Brukermanual Sist oppdatert 09.08.15. Side 1/30 Innholdsliste Hvordan kan vår tjeneste brukes...2 Hva vi leverer...2 Kontoinformasjon...3 Bruk av VPN tilkobling...3 Konfigurering av Android...4

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 9 Web, HTTP og IIS Applikasjonslaget i Internett Web protokollen: HTTP Webtjeneren IIS Utskrift med HTTP i Internett Pensum Kvisli: Windows Server og datanett, Kap.

Detaljer

Manual for innlegging av standard sideinnhold og nyheter via «backend»

Manual for innlegging av standard sideinnhold og nyheter via «backend» Manual for innlegging av standard sideinnhold og nyheter via «backend» 23.3.2006 Utarbeidet av: 2 Innlogging og beskrivelse av hovedelement i «backend» For å få tilgang til redigeringsmodul velges følgende

Detaljer

Brukermanual for Quizbuilder

Brukermanual for Quizbuilder Brukermanual for Quizbuilder 1. juni 2010 Innhold 1 Installasjon av Quizbuilder 2 1.1 Installasjon fra Kildekode........................ 2 1.2 Installasjon fra Zip-fil.......................... 2 2 Quizbuilder

Detaljer

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett.

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett. Hvor i All Verden? Del 1 Introduksjon Hvor i All Verden? er et reise- og geografispill hvor man raskest mulig skal fly innom reisemål spredt rundt i Europa. I denne første leksjonen vil vi se på hvordan

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 9 Web, HTTP og IIS Applikasjonslaget i Internett Web protokollen: HTTP Webtjeneren IIS Utskrift med HTTP i Internett Pensum Kvisli: Windows Server og datanett, Kap.

Detaljer

Bygge en kube. Introduksjon. Steg 1: Lage en ny mod. Skrevet av: Pål G. Solheim

Bygge en kube. Introduksjon. Steg 1: Lage en ny mod. Skrevet av: Pål G. Solheim Bygge en kube Skrevet av: Pål G. Solheim Kurs: Learntomod Tema: Blokkbasert, Minecraft Fag: Programmering, Teknologi Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon Vi skal bygge en

Detaljer

BRUKERMANUAL. Telsys Online Backup

BRUKERMANUAL. Telsys Online Backup BRUKERMANUAL Telsys Online Backup TELSYS AS - 06.08.2009 Innhold Generelt... 3 Kom i gang... 4 Installasjon av Telsys Online Backup Proff/Standard... 4 Start opp klienten for første gang!... 10 Logg inn...

Detaljer

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

Detaljer

Donkey Kong. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle

Donkey Kong. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle Donkey Kong Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill, Animasjon Fag: Naturfag, Programmering, Engelsk, Kunst og håndverk Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon

Detaljer

Enkle generiske klasser i Java

Enkle generiske klasser i Java Enkle generiske klasser i Java Oslo, 7/1-13 Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Del 1: Enkle pekere Før vi tar fatt på det som er nytt i dette notatet, skal vi repetere litt

Detaljer

Straffespark Introduksjon Scratch Lærerveiledning

Straffespark Introduksjon Scratch Lærerveiledning Straffespark Introduksjon Scratch Lærerveiledning Introduksjon Vi skal lage et enkelt fotballspill, hvor du skal prøve å score på så mange straffespark som mulig. Steg 1: Katten og fotballbanen Vi begynner

Detaljer

Veiledning for Krets- og gruppesider.

Veiledning for Krets- og gruppesider. Veiledning for Krets- og gruppesider. For å hjelpe grupper og kretser som ønsker å komme på nett, men ennå ikke er det, tilbyr nå forbundet grupper og kretser egne nettsider. Nettsiden til gruppe og krets

Detaljer

Brukermanual for kommuneansvarlig og testleder

Brukermanual for kommuneansvarlig og testleder Brukermanual for kommuneansvarlig og testleder Jegerprøveeksamen www.jegerproveeksamen.no Innholdsfortegnelse Kommuneansvarlig... 3 Testleder... 3 Opprette testsenter og testledere... 3 Teknisk godkjenning

Detaljer

Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL 9.4.2 databasesystem.

Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL 9.4.2 databasesystem. Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL 9.4.2 databasesystem. Konfigurere server er en oppgave for administrator. All installasjon og konfigurasjon må utføres ved å kjøre

Detaljer

SiteGen CMS. Innføringsmanual

SiteGen CMS. Innføringsmanual SiteGen CMS Innføringsmanual Copyright Barlind Solutions AS 2008 Hva er SiteGen CMS? SiteGen CMS er et såkalt content-management-system; eller med litt andre ord et publiseringssystem. Det kan brukes til

Detaljer

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse Huldt & Lillevik Ansattportal - en tilleggsmodul til Huldt & Lillevik Lønn Teknisk beskrivelse Huldt & Lillevik er trygghet Trygghet er å vite at løsningen du bruker virker, hver eneste dag, enkelt og

Detaljer

IST Skole Vurdering - Foresatt

IST Skole Vurdering - Foresatt IST Skole Vurdering - Foresatt Velkommen til en ny skole! IST tar nå steget fra kun å levere programvare til å forenkle og utvikle alle skolens funksjoner. Våre løsninger tar hånd om prosessene fra den

Detaljer

Hvor og hvordan lagrer du mediafilene dine?

Hvor og hvordan lagrer du mediafilene dine? Beskriv din digitale infrastruktur, med tilhørende arbeidsflyt. Hvor og hvordan lagrer du mediafilene dine? Hva gjør du med back-up? Hva slags online lagringsløsning har du valgt? Hvordan finner du fram

Detaljer

Kapittel 3. The fun starts

Kapittel 3. The fun starts Kapittel 3 The fun starts Introduksjon I dette kapittelet vil jeg prøve å gjøre ting på en annen måte. Siden vi nå skal begynne å faktisk lage noe, tenkte jeg at jeg vil gjøre det slik at kapittelet blir

Detaljer

DDS-CAD. Oppsett av student-/demolisens

DDS-CAD. Oppsett av student-/demolisens S DDS-CAD Oppsett av student-/demolisens Bruk av DDS-CAD er lisens beskyttet. Dette er fysiske USB nøkkel som inneholder kryptert lisensinformasjon. Programvaren er dermed beskyttet for å sikre legitim

Detaljer

Vanlige spørsmål. GallupPanelet. TNS Panel-app. TNS Juni 2015 v.1.3

Vanlige spørsmål. GallupPanelet. TNS Panel-app. TNS Juni 2015 v.1.3 Vanlige spørsmål Innhold 1 Hvor kan man laste ned appen 1 2 Vanlige spørsmål 03-19 3 Begrensninger i GallupPanel-app v. 2.3.2 20 4 Kontakt oss 21 2 Hvor kan man laste ned GallupPanel-appen? For ios kan

Detaljer

VEILEDER GI FJERNHJELP

VEILEDER GI FJERNHJELP VEILEDER GI FJERNHJELP INNLEDNING Denne veilederen beskriver hvordan du som skal gi fjernhjelp skal bruke tjenesten. Veilederen beskriver hvordan du logger på og hvordan du bruker modulene Support og Access.

Detaljer

INSPERA- brukerveiledning for student hjemmeeksamen i gruppe

INSPERA- brukerveiledning for student hjemmeeksamen i gruppe INSPERA- brukerveiledning for student hjemmeeksamen i gruppe Oppdatert 20. januar 2015 Pålogging Du logger deg på via uia.inspera.no (med vanlig UiA-brukernavn og passord) Du vil få melding om din nettleser

Detaljer

Tetris. Introduksjon. Skrevet av: Kine Gjerstad Eide. Lag starten på ditt eget tetris spill!

Tetris. Introduksjon. Skrevet av: Kine Gjerstad Eide. Lag starten på ditt eget tetris spill! Tetris Skrevet av: Kine Gjerstad Eide Kurs: Processing Introduksjon Lag starten på ditt eget tetris spill! Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett

Detaljer

Brukerveiledning nettsted Stjørdal kajakklubb. Tilgang til siden. Opprette bruker? Tilgang til siden... 1 Opprette bruker?... 1

Brukerveiledning nettsted Stjørdal kajakklubb. Tilgang til siden. Opprette bruker? Tilgang til siden... 1 Opprette bruker?... 1 Brukerveiledning nettsted Stjørdal kajakklubb Tilgang til siden... 1 Opprette bruker?... 1 Nyheter / artikler... 3 Lage artikkel... 3 Redigerer artikkel... 11 Slette artikkel... 12 Tilgang til siden Opprette

Detaljer

infotorg Enkel brukermanual

infotorg Enkel brukermanual infotorg Enkel brukermanual Innhold Innledning... 3 Logg inn... 3 Feilmelding... 3 Sperret bruker / Glemt passord... 4 Bytt passord... 5 Innstillinger og oppstartsregister... 5 Søk og Svar... 6 Velg tjeneste/register...

Detaljer

Geometra. Brukermanual. Telefon: 64831920

Geometra. Brukermanual. Telefon: 64831920 Geometra Brukermanual Telefon: 64831920 Innhold GENERELT...3 Hva er Geometra?...3 Om PDF tegninger...3 KOM I GANG!...5 Start programvaren og logg inn...5 Grunnleggende funksjoner:...6 Lag et prosjekt,

Detaljer

Produktrapport Gruppe 9

Produktrapport Gruppe 9 Forord Dette dokumentet er ment for personer som skal vedlikeholde, endre eller utvikle systemet. Produktdokument innholder informasjoner om programmets funksjoner og hvordan de fungerer. Før bruk av dette

Detaljer

WordPress. Brukerveiledning. Kjære kunde. Innlogging:

WordPress. Brukerveiledning. Kjære kunde. Innlogging: Brukerveiledning WordPress Sist oppdatert: 26.02.2014 Kjære kunde Her er en liten guide for å hjelpe deg gjennom det grunnleggende i Wordpress. Denne veilederen vil ta deg gjennom: Innlogging - s.1 Kontrollpanel

Detaljer

PowerOffice Server Service

PowerOffice Server Service PowerOffice Server Service 20 14 Po we ro ffice AS - v4.5.1 PowerOffice SQL - PowerOffice Server Service Alle rettigheter reservert. Ingen deler av dette arbeidet kan reproduseres i noen form eller på

Detaljer

KOMME I GANG 2. Logge på 2. I redigeringsvinduet 3 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 5

KOMME I GANG 2. Logge på 2. I redigeringsvinduet 3 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 5 Innhold KOMME I GANG 2 Logge på 2 I redigeringsvinduet 3 OVERSIKT OVER KNAPPENE SOM LIGGER ØVERST I REDIGERINGSVINDUET 5 Lukk 6 Ny 6 Flytt opp/ Flytt ned 6 Klipp 7 Kopier 7 Lim inn (krysspubliser, ny,

Detaljer

WP-WATCHER WORDPRESS SIKKERHET

WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei! Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp! Jeg

Detaljer

Hvordan legge til et dokument/bilde på en eksisterende side:

Hvordan legge til et dokument/bilde på en eksisterende side: Hvordan legge til et dokument/bilde på en eksisterende side: Først må filen (eller bildet) legges inn på filområdet til WebOrg. Velg «Filutforsker» som vist på bildet. Velg den mappen du vil bruke. Hver

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Datateknikk Side 1 av 8 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Mandag, 23.05.05, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 3 oppgaver og

Detaljer

Guide til system for flervalgsprøver

Guide til system for flervalgsprøver Guide til system for flervalgsprøver Systemet skal i utgangspunktet være selvforklarende, og brukere oppfordres til å klikke seg rundt og bli kjent med systemet på egen hånd. Det er allikevel laget en

Detaljer

en hjemmeside Lesson Introduksjon Du kjenner en del HTML tagger, så nå er det på tide å lage din første hjemmeside! La oss begynne med en gang.

en hjemmeside Lesson Introduksjon Du kjenner en del HTML tagger, så nå er det på tide å lage din første hjemmeside! La oss begynne med en gang. Lesson 2 en hjemmeside All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduksjon

Detaljer

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS Skjemaer med HTML5 Gløer Olav Langslet Sandvika VGS Leksjon 10 Informasjonsteknologi 1 og 2 Skjemaer på nettsider I denne leksjonen skal vi se litt nærmere på bruk av skjemaer på nettsider. Du har sett

Detaljer

Lotus Traveler - Manual for installasjon

Lotus Traveler - Manual for installasjon Lotus Traveler - Manual for installasjon Innholdsliste Nedlasting...2 Installasjon...3 Konfigurering...4 Problemer...5 Nedlasting 1) Åpne nettleseren på mobilen din. På de fleste Nokia-telefoner har denne

Detaljer

Brukerveiledning http://www.hovikif.no/ Bruk av siden. Når du går inn på siden får du opp følgende bilde:

Brukerveiledning http://www.hovikif.no/ Bruk av siden. Når du går inn på siden får du opp følgende bilde: Brukerveiledning http://www.hovikif.no/ Bruk av siden Når du går inn på siden får du opp følgende bilde: Øverst i høyre hjørne kan du endre størrelsen på teksten og søke etter lagrede artikler. De enkelte

Detaljer

Norgestur. Introduksjon. Steg 1: Et norgeskart. Sjekkliste. Scratch. Skrevet av: Geir Arne Hjelle

Norgestur. Introduksjon. Steg 1: Et norgeskart. Sjekkliste. Scratch. Skrevet av: Geir Arne Hjelle Scratch Norgestur Skrevet av: Geir Arne Hjelle Kurs: Scratch Språk: Norsk bokmål Introduksjon Bli med på en rundreise i Norge! Vi skal lage et spill hvor du styrer et helikopter rundt omkring et kart over

Detaljer

Klikk på publisering + offentlig + nyhet for å lage en artikkel som skal komme som nyhetssak på forsiden av fylkeslagssiden.

Klikk på publisering + offentlig + nyhet for å lage en artikkel som skal komme som nyhetssak på forsiden av fylkeslagssiden. 1. Logg deg inn i portalen: Klikk på Min side og oppgi medlemsnummer og passord: Inntil du endrer passord, er det NJFF + ditt postnummeret, som er passord, f.eks. NJFF1378. Velg fylkeslag fra dropdown-menyen

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15.desember 2006 Varighet: Fagnummer: Fagnavn: 09.00 13.00 (4 timer) LO116D og LN116D Programmering i Visual

Detaljer

Kanter, kanter, mange mangekanter

Kanter, kanter, mange mangekanter Kanter, kanter, mange mangekanter Nybegynner Processing PDF Introduksjon: Her skal vi se på litt mer avansert opptegning og bevegelse. Vi skal ta utgangspunkt i oppgaven om den sprettende ballen, men bytte

Detaljer

King Kong Erfaren Scratch PDF

King Kong Erfaren Scratch PDF King Kong Erfaren Scratch PDF Introduksjon I dette spillet inspirert av historien om King Kong, skal vi se hvor lett det er å bruke grafikk som ikke allerede ligger i Scratchbiblioteket. I spillet styrer

Detaljer

Ø02: ActionScript MovieClip-objekter, eksterne bilder

Ø02: ActionScript MovieClip-objekter, eksterne bilder Ø02: ActionScript MovieClip-objekter, eksterne bilder Denne øvingen baserer seg også til en viss grad på les og trøkk, så husk å bruk tid på å reflektere over hva koden gjør, og hvordan du kan tilpasse

Detaljer

Oversikt over flervalgstester på Ifi

Oversikt over flervalgstester på Ifi Oversikt over flervalgstester på Ifi Christian Kringstad Kielland christkk@ifi.uio.no 1. august 2003 Introduksjon Dette dokumentet beskriver hvordan systemet for flervalgstester på Ifi fungerer. Systemet

Detaljer

Sudokubrettet Et sudokubrett består av n n ruter. Vi bruker følgende begreper i oppgaven:

Sudokubrettet Et sudokubrett består av n n ruter. Vi bruker følgende begreper i oppgaven: INF1010 2016 Innleveringsoppgave 8 SUDOKU Versjon 29. mars. Denne versjonen gjelder oppgave 8. Resten er tatt med bare for å gi en pekepinn om arbeidet videre. Det kommer andre krav til del 10 og 11 når

Detaljer