{"id":53504,"date":"2019-12-03T00:00:00","date_gmt":"2019-12-02T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/bot-nam-pomozhet"},"modified":"2020-02-18T14:01:25","modified_gmt":"2020-02-18T11:01:25","slug":"bot-nam-pomozhet","status":"publish","type":"post","link":"https:\/\/prohoster.info\/no\/blog\/administrirovanie\/bot-nam-pomozhet","title":{"rendered":"Boten vil hjelpe oss","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Boten vil hjelpe oss\" src=\"\/wp-content\/uploads\/2019\/12\/394ff27f220e9b0eab689d46db4ba0b0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFor ett \u00e5r siden ba v\u00e5r kj\u00e6re HR-avdeling oss om \u00e5 skrive en chatbot som kan hjelpe nykommere med \u00e5 tilpasse seg i selskapet. <\/p>\n<p>Vi m\u00e5 presisere at vi ikke utvikler egne produkter, men tilbyr kundene et komplett spekter av utviklingstjenester. Historien handler om v\u00e5rt interne prosjekt, hvor kunden ikke er et tredjepartsfirma, men v\u00e5r egen HR. Hovedoppgaven er \u00e5 gjennomf\u00f8re prosjektet i tide og utgi produktet, til tross for begrenset tilgjengelighet av folk, ressurser og tid. <br \/>\n <noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nLa oss f\u00f8rst beskrive oppgavene som m\u00e5tte l\u00f8ses. <\/p>\n<p>Utviklerne er i sin natur introverte og liker ikke \u00e5 snakke, det er mye lettere \u00e5 skrive sp\u00f8rsm\u00e5let sitt i en elektronisk chat. Med boten slipper man \u00e5 tenke p\u00e5 hvem man skal sp\u00f8rre, hvem man skal ringe, hvor man skal g\u00e5, og generelt hvor man skal finne informasjon, og om den er relevant. <\/p>\n<p>Det andre problemet er informasjon \u2014 det er mye av den, den er spredt over forskjellige kilder, finnes ikke alltid og trenger kontinuerlig oppdatering og supplement.<\/p>\n<p>Selskapet har nesten 500 ansatte som befinner seg i forskjellige kontorer, tidssoner, byer i Russland og til og med i utlandet, sp\u00f8rsm\u00e5lene er vanligvis mange, s\u00e5 enda en oppgave er \u00e5 redusere belastningen p\u00e5 HR-personalet knyttet til de mest stilte sp\u00f8rsm\u00e5lene fra ansatte.<\/p>\n<p>Det var ogs\u00e5 n\u00f8dvendig \u00e5 automatisere prosessene: nykommere som kommer til selskapet, utsendelse av meldinger til ledere og mentorer for nykommere, samt \u00e5 sende automatiske p\u00e5minnelser om kurs og tester som nykommere m\u00e5 ta for \u00e5 tilpasse seg vellykket.<\/p>\n<p>Basert p\u00e5 forretningskravene ble de tekniske kravene formulert.<\/p>\n<p>Boten m\u00e5 operere p\u00e5 Skype (historisk har det blitt brukt i selskapet), derfor ble Azure valgt som tjeneste.<\/p>\n<p>For tilgangsbegrensninger begynte vi \u00e5 bruke en autorisasjonsmekanisme via Skype.<br \/>\nFor tekstgjenkjenning brukte vi biblioteket ParlAI.<\/p>\n<p>Det var ogs\u00e5 behov for et administrativt webportal for konfigurasjon, oppl\u00e6ring, debugging, innstilling av utsendelser og andre oppgaver.<\/p>\n<p><img decoding=\"async\" alt=\"Boten vil hjelpe oss\" src=\"\/wp-content\/uploads\/2019\/12\/dd7d471ab756309d8fb71bd17153ca73.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI l\u00f8pet av arbeidet med prosjektet st\u00f8tte vi p\u00e5 en rekke problemer og utfordringer.<\/p>\n<p>For example, we faced technical issues with our Azure account. Microsoft was unwilling to activate our subscription due to some internal technical difficulties within their service. For almost two months, we couldn't resolve this, and Microsoft's support eventually shrugged and referred us to partners who successfully configured everything and provided us with the account.<\/p>\n<p>The most challenging phase was the project's kickoff, where we had to decide what to use, what the architecture would be, how and where to store the data, and how the system's components and modules would interact with each other.<\/p>\n<p>In our case, the usual challenges of starting any project were further complicated by staffing issues. The nature of our business is such that, unlike commercial projects, internal projects are often tackled by developers who lack sufficient expertise in the necessary areas\u2014they simply found themselves on the bench waiting for the next big commercial project. It's logical that motivation in such situations was also quite low. Productivity dropped significantly, team members often faced idle time, and ultimately, we had to persuade (motivate) or replace people. When swapping developers, we had to conduct training, transfer knowledge, and effectively restart the project. Each new developer viewed the architecture differently and criticized the prior team's decisions and code. Rewriting everything from scratch began.<\/p>\n<p>This continued for about six months. We were simply treading water, refactoring code without producing anything new.<\/p>\n<p>Additionally, internal projects usually have almost no documentation, making it difficult to understand what needed to be done at any given moment and what the current priorities were. It was essential to establish a permanent team, streamline processes, and conduct planning and evaluation for at least three months. But how can this be accomplished when the project is not commercial, meaning that human resources need to be minimized, while still achieving results that match those for external clients?<\/p>\n<p>Vi har definert et ressurspool som deltok i utviklingen av prosjektet, er kjent med det og \u00f8nsker \u00e5 jobbe med det. Vi har laget en timeplan for folks tilgjengelighet p\u00e5 prosjektene. Vi har utf\u00f8rt vurdering og avtalt arbeider, og skrevet disse arbeidene inn i 'hullene' mellom hovedprosjektene. Etter 4 m\u00e5neder fikk vi en fungerende prototype av applikasjonen.<\/p>\n<p>La oss n\u00e5 g\u00e5 mer i dybden p\u00e5 botens funksjonalitet, arkitekturen og de tekniske l\u00f8sningene.<\/p>\n<p>Et av hovedkravene fra HR var \u00e5 gjenkjenne tekst skrevet av brukeren for \u00e5 gi et korrekt svar p\u00e5 sp\u00f8rsm\u00e5let. Man kan skrive - jeg \u00f8nsker \u00e5 ta ferie, jeg vil ta ferie eller jeg vil gjerne ta ferie, og den vil forst\u00e5 det og svare deretter. Eller hvis en ansatt for eksempel har \u00f8delagt stolen sin, og \u00f8nsker \u00e5 skrive - 'stolen er \u00f8delagt' eller 'stolen knakk' eller 'ryggen p\u00e5 stolen falt av', med riktig oppl\u00e6ring vil boten kunne gjenkjenne slike foresp\u00f8rsel. Kvaliteten p\u00e5 tekstgjenkjenning avhenger selvf\u00f8lgelig av botens oppl\u00e6ring, som vi vil snakke mer om senere.<\/p>\n<p>Det neste kravet og en del av funksjonaliteten er systemet for dialoger med boten. Det ble utviklet et system der boten kan f\u00f8re en dialog og forst\u00e5 konteksten av det n\u00e5v\u00e6rende sp\u00f8rsm\u00e5let. Den kan stille oppf\u00f8lgingssp\u00f8rsm\u00e5l som svar p\u00e5 ditt sp\u00f8rsm\u00e5l og fortsette samtalen, hvis vi har l\u00e6rt boten \u00e5 gj\u00f8re dette. Skype st\u00f8tter enkle menyvalg som hjelper brukerne med mulige alternativer for \u00e5 fortsette dialogene. Dersom vi har v\u00e6rt i dialog, men plutselig bestemmer oss for \u00e5 stille et sp\u00f8rsm\u00e5l utenfor tema, s\u00e5 vil boten ogs\u00e5 forst\u00e5 dette.<\/p>\n<p>Boten gir mulighet til \u00e5 sende forskjellige artefakter til brukeren, basert p\u00e5 deres personlige data. For eksempel, basert p\u00e5 deres plassering. La oss anta at en person \u00f8nsker \u00e5 finne toalettet, s\u00e5 vil det bli vist et kart over kontoret som leder dem til toalettet. Og kartet vil bli valgt avhengig av hvilket kontor selskapet den ansatte befinner seg i.<\/p>\n<p>En av de viktigste oppgavene er \u00e5 beskytte brukernes personlige informasjon. Vi kan ikke la hvem som helst f\u00e5 tilgang til konfidensielle data som v\u00e5r bot h\u00e5ndterer. Behovet for autorisasjon for en slik bot er en uunng\u00e5elig del av den. Boten ber brukeren om \u00e5 gjennomf\u00f8re autorisasjon f\u00f8r de kan f\u00f8re en samtale med den. Dette skjer ved f\u00f8rste henvendelse fra en ansatt til boten. Selve autorisasjonen omdirigerer brukeren til den relevante siden, hvor brukeren mottar en token som deretter settes inn i Skype-meldingen. Hvis autorisasjonen er vellykket, kan samtalen med boten begynne.<\/p>\n<p><img decoding=\"async\" alt=\"Boten vil hjelpe oss\" src=\"\/wp-content\/uploads\/2019\/12\/9253ed378739eab212df9accc4cec917.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAutorisasjonen skjer via Skype \u2013 portalen for autorisasjonstjenester, bedriftsnettverket og LDAP. Dermed avhenger autorisasjonen av de n\u00e5v\u00e6rende dataene om brukeren i bedriftsnettverket.<\/p>\n<p>I l\u00f8pet av utviklingen av boten inns\u00e5 vi at det trengs et system innebygd i portalens funksjonalitet, som kan hjelpe HR med \u00e5 raskt feils\u00f8ke boten. Vi la til en slik side i portalen, hvor HR-ansatte kan se feil registrert av brukerne under samhandling med boten og l\u00f8se dem ved \u00e5 justere oppl\u00e6ringen eller la dem v\u00e6re for utviklerne.<\/p>\n<p>Muligheten for \u00e5 trene boten direkte p\u00e5 portalen ble ikke inkludert fra begynnelsen. Under utviklingen inns\u00e5 vi at oppl\u00e6ring av boten er den mest vanlige oppgaven som HR-ansatte vil utf\u00f8re i samhandling med den, og \u00e5 sende filer med tekst til utviklerne for ytterligere oppl\u00e6ring av boten er helt uakseptabelt. Dette tar for mye tid og genererer for mange feil og problemer.<\/p>\n<p><img decoding=\"async\" alt=\"Boten vil hjelpe oss\" src=\"\/wp-content\/uploads\/2019\/12\/65f97b48b0b7e3b7bb5b93859a578cab.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi har skrevet en UI p\u00e5 portalen for brukervennlig oppl\u00e6ring av boten. Den lar HR se botens n\u00e5v\u00e6rende oppl\u00e6ring, trene den videre og gj\u00f8re justeringer i den n\u00e5v\u00e6rende oppl\u00e6ringen. Oppl\u00e6ringen presenteres i en trestruktur der nodene, alts\u00e5 greinene, er fortsettelse av dialogen med boten. Det er mulig \u00e5 lage enkle sp\u00f8rsm\u00e5l-svar, eller man kan lage omfattende dialoger, avhengig av hva HR trenger.<\/p>\n<p>Noen ord om l\u00f8sningen sin arkitektur.<\/p>\n<p><img decoding=\"async\" alt=\"Boten vil hjelpe oss\" src=\"\/wp-content\/uploads\/2019\/12\/de39426e211e7bb20b543e27f848cb8e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nL\u00f8sningen har en modul\u00e6r arkitektur. Den inkluderer tjenester som er ansvarlige for forskjellige oppgaver, nemlig:<br \/>\n\u2022 Skype-bot-tjeneste p\u00e5 Azure \u2014 mottar og behandler brukerforesp\u00f8rselen. Dette er en ganske enkel tjeneste som f\u00f8rst mottar foresp\u00f8rselen og gir den f\u00f8rste behandlingen.<br \/>\n\u2022 Admin-portalen \u2014 en tjeneste som tilbyr et webgrensesnitt for \u00e5 konfigurere portalen og selve boten. Boten kontakter alltid portalen f\u00f8rst, og portalen avgj\u00f8r deretter hva som skal gj\u00f8res med foresp\u00f8rselen.<br \/>\n\u2022 Autoriseringstjenesten \u2014 gir autentiseringsmekanismer for boten og admin-portalen. Autoriseringen skjer via Oauth2-protokollen. Ved positiv autorisering gjennomf\u00f8rer tjenesten autoriseringen i det profesjonelle nettverket i henhold til gyldige brukerdata, slik at systemet kan kontrollere feil knyttet til datadysynkronisering.<br \/>\n\u2022 AI-modul for tekstgjenkjenning, skrevet i Python og bruker rammeverket ParlAI for selve tekstgjenkjenningen. Dette er et nevralt nettverk, i hvert fall i den n\u00e5v\u00e6rende implementeringen. Vi bruker tfDiff-algoritmen for \u00e5 forst\u00e5 sp\u00f8rsm\u00e5l. Modulen tilbyr et API for kommunikasjon og trening.<\/p>\n<p>Til slutt vil jeg si at dette er v\u00e5r f\u00f8rste erfaring med \u00e5 lage en chatbot, og vi har pr\u00f8vd \u00e5 gj\u00f8re systemet s\u00e5 enkelt som mulig, men samtidig funksjonelt, med minimale arbeidsressurser. Jeg tror vi har f\u00e5tt til et ganske interessant produkt. Med sitt eget oppl\u00e6ringssystem, feillogg og varslinger kan det ogs\u00e5 integreres med enhver annen meldingstjeneste.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/478342\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0413\u043e\u0434 \u043d\u0430\u0437\u0430\u0434 \u043d\u0430\u0448 \u043b\u044e\u0431\u0438\u043c\u044b\u0439 HR \u043e\u0442\u0434\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439: \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0447\u0430\u0442 \u0431\u043e\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438. \u041e\u0433\u043e\u0432\u043e\u0440\u0438\u043c\u0441\u044f, \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432, \u043d\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u0443\u0441\u043b\u0443\u0433 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435. \u0420\u0430\u0441\u0441\u043a\u0430\u0437 \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u043d\u0430\u0448\u0435\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u0430 \u043d\u0430\u0448 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 HR. \u0418 \u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u0440\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-53504","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0413\u043e\u0434 \u043d\u0430\u0437\u0430\u0434 \u043d\u0430\u0448 \u043b\u044e\u0431\u0438\u043c\u044b\u0439 HR \u043e\u0442\u0434\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439: \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0447\u0430\u0442 \u0431\u043e\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/no\/blog\/administrirovanie\/bot-nam-pomozhet\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"nn_NO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0411\u043e\u0442 \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0436\u0435\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0413\u043e\u0434 \u043d\u0430\u0437\u0430\u0434 \u043d\u0430\u0448 \u043b\u044e\u0431\u0438\u043c\u044b\u0439 HR \u043e\u0442\u0434\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439: \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0447\u0430\u0442 \u0431\u043e\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/no\/blog\/administrirovanie\/bot-nam-pomozhet\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-02T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Botten hjelper oss | ProHoster","description":"For ett \u00e5r siden henvendte v\u00e5r kj\u00e6re HR-avdeling seg med en foresp\u00f8rsel: \u00e5 skrive en chatbot.","canonical_url":"https:\/\/prohoster.info\/no\/blog\/administrirovanie\/bot-nam-pomozhet","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nn_NO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0411\u043e\u0442 \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0436\u0435\u0442 | ProHoster","og:description":"\u0413\u043e\u0434 \u043d\u0430\u0437\u0430\u0434 \u043d\u0430\u0448 \u043b\u044e\u0431\u0438\u043c\u044b\u0439 HR \u043e\u0442\u0434\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439: \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0447\u0430\u0442 \u0431\u043e\u0442\u0430.","og:url":"https:\/\/prohoster.info\/no\/blog\/administrirovanie\/bot-nam-pomozhet","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-12-02T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53504","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 07:39:21","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:23:56","updated":"2026-01-24 07:39:21","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/53504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/comments?post=53504"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/53504\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/media?parent=53504"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/categories?post=53504"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/tags?post=53504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}