;

Technologie IBM pomůže státní správě zkvalitnit služby pro občany

11. 12. 2009

Sdílet

Nový produkt IBM Government Industry Framework pomůže úřadům všech velikostí využít nové technologie k transformaci stávajících podpůrných a dodacích procesů. Umožní jim efektivněji nasazovat omezené prostředky a rychleji reagovat na nejrůznější požadavky od mimořádných událostí až po poskytování sociálních služeb. Nový systém je základní softwarová platforma, kterou dále rozšiřují i nezávislí vývojáři softwaru. Ti ji využívají jako základ pro budování jedinečných aplikací, jež řeší konkrétní problémy v rámci celé státní správy.

Stejně jako se firmy stále více soustředí na své zákazníky, i vlády nyní dosahují úspěchu tak, že nově orientují své struktury, informační technologie a procesy na občany.

Platformu lze například využít k lepšímu řízení přetížené dopravy. Díky lepšímu toku informací a procesů, jež spouštějí nasazení zdrojů, lze vozidla v případě problémů snadno přesměrovat na alternativní trasy.

 

Framework podporuje pět klíčových oblastí státní správy

Zatížení zdrojů státní správy je veliké a stále roste. Nová platforma IBM Government Industry Framework proto nabízí technologie, které splňují požadavky pěti klíčových oblastí, jimž čelí každá vláda:

  • Správa daní a příjmů: Využití nástrojů business intelligence k dosažení lepšího přehledu a kontroly a zvýšení výkonnosti.
  • Bezpečnost a zabezpečení: Zlepšení zabezpečení hranic, bezpečnosti veřejnosti a reakce záchranných složek díky výměně informací a spolupráci.
  • Sociální a zdravotnické služby a sociální zabezpečení: Optimalizace spokojenosti občanů zjednodušením přístupu ke zdravotním a sociálním programům s důrazem na lepší výsledky.
  • Integrované městské infrastruktury: Vznik chytřejších měst, která jsou provozně efektivní, bezpečnější, pohodlnější a dlouhodobě udržitelná díky efektivní správě zdrojů.
  • Městská doprava a silnice: Pomoc s budováním chytřejších, multimodálních dopravních systémů, které společně přispějí k optimalizaci kapacity, omezí dopravní zácpy a zvýší provozní efektivitu, spolehlivost a bezpečnost.

 

IBM Government Industry Framework je softwarový technologický páteřní systém, který vytváří podmínky pro širokou řadu řešení státní správy. Pomůže klientům vybudovat pro všechny jejich provozy integrovanou platformu, která bude založena na uznávaných standardech. IBM Government Industry Framework pomůže vládám zkvalitnit služby pro občany s nižšími náklady a riziky. Zároveň představuje základnu pro další rozvoj dlouhodobě udržitelné dynamické infrastruktury.

 

Tuto nejnovější nabídku IBM podporuje nový Industry Framework Business Partner Validation Program for Government, který bude podporovat a dohlížet na činnost partnerů při generování softwarových řešení pro státní správu. Nezávislí vývojáři softwarových aplikací budou mít otevřený přístup k základní platformě Systému, aby mohli pro tuto technologii snadno přizpůsobit svůj software.

 

Další informace o řešení IBM Government Industry Framework a o tom, jak IBM pomáhá klientům a obchodním partnerům přijímat chytřejší a rychlejší rozhodnutí, najdete na webu: www.ibm.com/software/industry/frameworks/

Našli jste v článku chybu?

Autor aktuality

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }
OSZAR »