Productos de gastroenterología de Ambu
Ambu ha aprovechado más de diez años de experiencia en endoscopias de un solo uso para ofrecerle una solución fiable, estéril y viable. Los endoscopios gastrointestinales de un solo uso ofrecen las ventajas habituales de los endoscopios convencionales, además de la eficiencia y la esterilidad del concepto de un solo uso.

Ambu® aScope™ Gastro Large
Un gastroscopio terapéutico estéril siempre disponible que ofrece la maniobrabilidad y precisión de un gastroscopio estándar, diseñado para la gestión de hemorragias gastrointestinales superiores, necrosectomías, estenosis y extracción de cuerpos extraños.

Ambu® aScope™ Gastro
Un gastroscopio estéril de un solo uso que siempre está disponible para una gran variedad de procedimientos endoscópicos en el tracto digestivo superior.

Ambu® aScope™ Duodeno 2
Un duodenoscopio estéril de un solo uso que proporciona una medida de seguridad adicional cuando más se necesita.
Sistemas de endoscopia
La optimización continua ayuda a garantizar unas imágenes excelentes con la claridad necesaria para procedimientos de CPRE y una variedad de intervenciones en el tracto digestivo superior. El sistema también es fácil de configurar. Solo tiene que desembalar el endoscopio de Ambu correspondiente y conectarlo a la unidad aBox 2. Todos los endoscopios para procedimientos gastrointestinales de un solo uso aScope de Ambu son compatibles con equipos auxiliares estándar, incluido el insuflador de CO2 ENDOLINQ™.

Ambu® aBox™ 2
Una unidad de visualización y procesamiento Full HD con pantalla táctil, procesador y grabadora integrados. La unidad aBox 2 ofrece un diseño intuitivo moderno y conectividad «plug-and-play» con los endoscopios de un solo uso para procedimientos gastrointestinales Ambu® aScopeTM.
El cirujano torácico y consultor de Ambu, el Dr. Wilson Tsai, comparte sus primeras experiencias con el aScope™ Gastro de un solo uso (13 min).
Error executing template "Designs/ambu/Paragraph/Video.cshtml"System.Net.WebException: The remote server returned an error: (503) Server Unavailable.at System.Net.HttpWebRequest.GetResponse()at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)at System.Xml.XmlTextReaderImpl.OpenUrlDelegate(Object xmlResolver)at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)at System.Threading.CompressedStack.Run(CompressedStack compressedStack, ContextCallback callback, Object state)at System.Xml.XmlTextReaderImpl.OpenUrl()at System.Xml.XmlTextReaderImpl.Read()at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)at System.Xml.XmlDocument.Load(XmlReader reader)at System.Xml.XmlDocument.Load(String filename)at Co3.Ambu.Video.Services.TwentyThreeService.GetTwentyThreeVideoXmlValues(TwentyThreeVideoParameters twentyThreeParameters) in C:\Git\Solution\ambu-com-solution\Co3.Ambu.Video\Services\TwentyThreeService.cs:line 33at CompiledRazorTemplates.Dynamic.RazorEngine_efa5fb8d23aa42889b9b6d5c2cc41204.Execute() in E:\dynamicweb.net\SolutionsCustom\Co3\ambu-com.espresso4.dk\files\Templates\Designs\ambu\Paragraph\Video.cshtml:line 74at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.b__0(TextWriter writer)at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)at Dynamicweb.Rendering.Template.RenderRazorTemplate() 1 @inherits Co3.Espresso.Website.TemplateBases.Paragraphs.Video 2 @using System.Text; 3 @using System.Text.RegularExpressions; 4 @using Co3.Ambu.Video.Models 5 @using Co3.Ambu.Video.Services 6 @using Co3.Espresso.Website.TemplateBases.Paragraphs 7 @{ 8 var Url = Espresso.Item.Video; 9 10 var UrlRegex = new Regex( @"^.*((youtu.be\/|vimeo.com\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*" ); 11 12 var VimeoControlsColor = Espresso.Item.VideoVimeoControlsColor ?? string.Empty; 13 var VimeoShowTitle = Espresso.Item.VideoVimeoTitle; 14 var VimeoShowByLine = Espresso.Item.VideoVimeoByline; 15 16 17 var YoutubeShowControls = Espresso.Item.VideoYoutubeTitle; 18 var YoutubeShowTitle = Espresso.Item.VideoYoutubeControls; 19 var YoutubeShowLogo = Espresso.Item.VideoYoutubeLogo; 20 21 Match videoUrlMatch = UrlRegex.Match( Url ); 22 var EmbedUrl = String.Empty; 23 var videoTwentyThree = String.Empty; 24 25 if(Espresso.Item.VideoProvider == "vimeo"){ 26 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 27 if( videoUrlMatch.Groups[ 1 ].Value == "vimeo.com/" ) { 28 EmbedUrl = string.Format( "//player.vimeo.com/video/{0}?title={1}&byline={2}&portrait=0&color={3}", videoUrlMatch.Groups[ 7 ].Value, VimeoShowTitle == "True" ? "1" : "0", VimeoShowByLine == "True" ? "1" : "0", VimeoControlsColor ); 29 } 30 } 31 } else if(Espresso.Item.VideoProvider == "youtube"){ 32 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 33 EmbedUrl = string.Format( "https://www.youtube.com/embed/{0}?controls={1}&showinfo={2}&modestbranding={3}", videoUrlMatch.Groups[ 7 ].Value, YoutubeShowTitle == "True" ? "1" : "0", YoutubeShowControls == "True" ? "1" : "0", YoutubeShowLogo == "True" ? "0" : "1"); 34 } 35 } else if(Espresso.Item.VideoProvider == "videotwentythree"){ 36 videoTwentyThree = Espresso.Item.Video; 37 } 38 39 bool isHighFetchPriority = GetBoolean("Item.HighFetchPriority"); 40 string fetchPriorityString = isHighFetchPriority ? "fetchpriority=\"high\"" : "fetchpriority=\"low\""; 41 string initEmbedSrc = isHighFetchPriority ? EmbedUrl : ""; 42 } 43 <div class="@Espresso.Container.ClassList" id="@Espresso.Id"> 44 <div class="@Espresso.Wrapper.ClassList"> 45 <div class="@Espresso.Text.Container.ClassList"> 46 @Espresso.Text.Raw 47 </div> 48 <div class="@Espresso.Video.Container.ClassList"> 49 <div class="embed-responsive embed-responsive-16by9"> 50 @if ( Espresso.Item.VideoProvider == "videotwentythree" ) 51 { 52 string videoUrl = videoTwentyThree.Replace( "&", "&" ); 53 videoUrl = !videoUrl.ToLower().Contains( "http://" ) && !videoUrl.ToLower().Contains( "https://" ) ? videoUrl.Replace( "//","https://" ) : videoUrl; 54 55 videoTwentyThree = !videoTwentyThree.ToLower().Contains( "http://" ) && !videoTwentyThree.ToLower().Contains( "https://" ) ? videoTwentyThree.Replace( "//","https://" ) : videoTwentyThree; 56 57 string videoTitle = ""; 58 string videoThumbnail_loc = ""; 59 string videoDescription = ""; 60 string videoContent_loc = ""; 61 DateTime publishDate = new DateTime(); 62 int videoLength = 0; 63 string videoLengthFormatted = ""; 64 65 66 TwentyThreeVideoParameters videoParameters = TwentyThreeService.TwentyThreeParameters( videoUrl ); 67 68 string initVideoTwentyThree = isHighFetchPriority ? videoTwentyThree : ""; 69 70 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initVideoTwentyThree" data-src="@videoTwentyThree" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" data-twentythree-gtm="yes" webkitallowfullscreen="1" allow="autoplay; fullscreen" @fetchPriorityString></iframe> 71 72 if ( videoParameters != null && !string.IsNullOrEmpty(videoParameters.Authority) && !string.IsNullOrEmpty(videoParameters.Token) && !string.IsNullOrEmpty(videoParameters.PhotoId) ) 73 { 74 TwentyThreeVideoValues getTwentyThreeVideoValues = TwentyThreeService.GetTwentyThreeVideoXmlValues( videoParameters ); 75 videoTitle = !string.IsNullOrEmpty(getTwentyThreeVideoValues.Title) ? getTwentyThreeVideoValues.Title : ""; 76 videoThumbnail_loc = getTwentyThreeVideoValues.OriginalDownload; 77 videoContent_loc = getTwentyThreeVideoValues.Video1080PDownload != "" ? getTwentyThreeVideoValues.Video1080PDownload : getTwentyThreeVideoValues.VideoMediumDownload; 78 videoDescription = !string.IsNullOrEmpty(getTwentyThreeVideoValues.ContentText) ? getTwentyThreeVideoValues.ContentText : ""; 79 publishDate = getTwentyThreeVideoValues.PublishDateAnsi; 80 videoLengthFormatted = getTwentyThreeVideoValues.VideoLengthFormated; 81 82 <script type="application/ld+json"> 83 { 84 "@@context": "http://schema.org", 85 "@@type": "VideoObject", 86 "name": "@videoTitle.Replace("\"","\\\"")", 87 "description": "@videoDescription.Replace("\"","\\\"")", 88 "thumbnailUrl": "@videoThumbnail_loc", 89 "uploadDate": "@publishDate.ToString("s")", 90 "duration": "@videoLengthFormatted", 91 "contentUrl": "@videoContent_loc", 92 "embedUrl": "@videoTwentyThree" 93 } 94 </script> 95 } 96 } 97 else 98 { 99 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initEmbedSrc" data-src="@EmbedUrl" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" webkitallowfullscreen="1" data-twentythree-gtm="yes" allow="autoplay; fullscreen" @fetchPriorityString></iframe>100 }101102 </div>103 </div>104 </div>105 </div>
Ambu® aScope™ Gastro
Una vía rápida para alcanzar un escenario de trabajo eficiente
Siempre disponible
Ideal para cualquier escenario en el que el tiempo, la ubicación y la disponibilidad sean esenciales
Fácil de transportar y configurar
Solo tiene que llevar un endoscopio ligero y nuevo con usted, conectarlo a la unidad aBox 2 y a los equipos auxiliares estándar y empezar a trabajar.
Optimiza el flujo de trabajo
Elimine el reprocesamiento y los más de 100 pasos complejos que su personal debe realizar
Grabaciones de procedimientos en vivo
Vea procedimientos endoscópicos realizados en directo por gastroenterólogos especialistas en el evento mundial de streaming de Endoscopy On Air en junio de 2024.
Error executing template "Designs/ambu/Paragraph/Video.cshtml"System.Net.WebException: The remote server returned an error: (503) Server Unavailable.at System.Net.HttpWebRequest.GetResponse()at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)at System.Xml.XmlTextReaderImpl.OpenUrlDelegate(Object xmlResolver)at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)at System.Threading.CompressedStack.Run(CompressedStack compressedStack, ContextCallback callback, Object state)at System.Xml.XmlTextReaderImpl.OpenUrl()at System.Xml.XmlTextReaderImpl.Read()at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)at System.Xml.XmlDocument.Load(XmlReader reader)at System.Xml.XmlDocument.Load(String filename)at Co3.Ambu.Video.Services.TwentyThreeService.GetTwentyThreeVideoXmlValues(TwentyThreeVideoParameters twentyThreeParameters) in C:\Git\Solution\ambu-com-solution\Co3.Ambu.Video\Services\TwentyThreeService.cs:line 33at CompiledRazorTemplates.Dynamic.RazorEngine_efa5fb8d23aa42889b9b6d5c2cc41204.Execute() in E:\dynamicweb.net\SolutionsCustom\Co3\ambu-com.espresso4.dk\files\Templates\Designs\ambu\Paragraph\Video.cshtml:line 74at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.b__0(TextWriter writer)at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)at Dynamicweb.Rendering.Template.RenderRazorTemplate() 1 @inherits Co3.Espresso.Website.TemplateBases.Paragraphs.Video 2 @using System.Text; 3 @using System.Text.RegularExpressions; 4 @using Co3.Ambu.Video.Models 5 @using Co3.Ambu.Video.Services 6 @using Co3.Espresso.Website.TemplateBases.Paragraphs 7 @{ 8 var Url = Espresso.Item.Video; 9 10 var UrlRegex = new Regex( @"^.*((youtu.be\/|vimeo.com\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*" ); 11 12 var VimeoControlsColor = Espresso.Item.VideoVimeoControlsColor ?? string.Empty; 13 var VimeoShowTitle = Espresso.Item.VideoVimeoTitle; 14 var VimeoShowByLine = Espresso.Item.VideoVimeoByline; 15 16 17 var YoutubeShowControls = Espresso.Item.VideoYoutubeTitle; 18 var YoutubeShowTitle = Espresso.Item.VideoYoutubeControls; 19 var YoutubeShowLogo = Espresso.Item.VideoYoutubeLogo; 20 21 Match videoUrlMatch = UrlRegex.Match( Url ); 22 var EmbedUrl = String.Empty; 23 var videoTwentyThree = String.Empty; 24 25 if(Espresso.Item.VideoProvider == "vimeo"){ 26 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 27 if( videoUrlMatch.Groups[ 1 ].Value == "vimeo.com/" ) { 28 EmbedUrl = string.Format( "//player.vimeo.com/video/{0}?title={1}&byline={2}&portrait=0&color={3}", videoUrlMatch.Groups[ 7 ].Value, VimeoShowTitle == "True" ? "1" : "0", VimeoShowByLine == "True" ? "1" : "0", VimeoControlsColor ); 29 } 30 } 31 } else if(Espresso.Item.VideoProvider == "youtube"){ 32 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 33 EmbedUrl = string.Format( "https://www.youtube.com/embed/{0}?controls={1}&showinfo={2}&modestbranding={3}", videoUrlMatch.Groups[ 7 ].Value, YoutubeShowTitle == "True" ? "1" : "0", YoutubeShowControls == "True" ? "1" : "0", YoutubeShowLogo == "True" ? "0" : "1"); 34 } 35 } else if(Espresso.Item.VideoProvider == "videotwentythree"){ 36 videoTwentyThree = Espresso.Item.Video; 37 } 38 39 bool isHighFetchPriority = GetBoolean("Item.HighFetchPriority"); 40 string fetchPriorityString = isHighFetchPriority ? "fetchpriority=\"high\"" : "fetchpriority=\"low\""; 41 string initEmbedSrc = isHighFetchPriority ? EmbedUrl : ""; 42 } 43 <div class="@Espresso.Container.ClassList" id="@Espresso.Id"> 44 <div class="@Espresso.Wrapper.ClassList"> 45 <div class="@Espresso.Text.Container.ClassList"> 46 @Espresso.Text.Raw 47 </div> 48 <div class="@Espresso.Video.Container.ClassList"> 49 <div class="embed-responsive embed-responsive-16by9"> 50 @if ( Espresso.Item.VideoProvider == "videotwentythree" ) 51 { 52 string videoUrl = videoTwentyThree.Replace( "&", "&" ); 53 videoUrl = !videoUrl.ToLower().Contains( "http://" ) && !videoUrl.ToLower().Contains( "https://" ) ? videoUrl.Replace( "//","https://" ) : videoUrl; 54 55 videoTwentyThree = !videoTwentyThree.ToLower().Contains( "http://" ) && !videoTwentyThree.ToLower().Contains( "https://" ) ? videoTwentyThree.Replace( "//","https://" ) : videoTwentyThree; 56 57 string videoTitle = ""; 58 string videoThumbnail_loc = ""; 59 string videoDescription = ""; 60 string videoContent_loc = ""; 61 DateTime publishDate = new DateTime(); 62 int videoLength = 0; 63 string videoLengthFormatted = ""; 64 65 66 TwentyThreeVideoParameters videoParameters = TwentyThreeService.TwentyThreeParameters( videoUrl ); 67 68 string initVideoTwentyThree = isHighFetchPriority ? videoTwentyThree : ""; 69 70 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initVideoTwentyThree" data-src="@videoTwentyThree" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" data-twentythree-gtm="yes" webkitallowfullscreen="1" allow="autoplay; fullscreen" @fetchPriorityString></iframe> 71 72 if ( videoParameters != null && !string.IsNullOrEmpty(videoParameters.Authority) && !string.IsNullOrEmpty(videoParameters.Token) && !string.IsNullOrEmpty(videoParameters.PhotoId) ) 73 { 74 TwentyThreeVideoValues getTwentyThreeVideoValues = TwentyThreeService.GetTwentyThreeVideoXmlValues( videoParameters ); 75 videoTitle = !string.IsNullOrEmpty(getTwentyThreeVideoValues.Title) ? getTwentyThreeVideoValues.Title : ""; 76 videoThumbnail_loc = getTwentyThreeVideoValues.OriginalDownload; 77 videoContent_loc = getTwentyThreeVideoValues.Video1080PDownload != "" ? getTwentyThreeVideoValues.Video1080PDownload : getTwentyThreeVideoValues.VideoMediumDownload; 78 videoDescription = !string.IsNullOrEmpty(getTwentyThreeVideoValues.ContentText) ? getTwentyThreeVideoValues.ContentText : ""; 79 publishDate = getTwentyThreeVideoValues.PublishDateAnsi; 80 videoLengthFormatted = getTwentyThreeVideoValues.VideoLengthFormated; 81 82 <script type="application/ld+json"> 83 { 84 "@@context": "http://schema.org", 85 "@@type": "VideoObject", 86 "name": "@videoTitle.Replace("\"","\\\"")", 87 "description": "@videoDescription.Replace("\"","\\\"")", 88 "thumbnailUrl": "@videoThumbnail_loc", 89 "uploadDate": "@publishDate.ToString("s")", 90 "duration": "@videoLengthFormatted", 91 "contentUrl": "@videoContent_loc", 92 "embedUrl": "@videoTwentyThree" 93 } 94 </script> 95 } 96 } 97 else 98 { 99 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initEmbedSrc" data-src="@EmbedUrl" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" webkitallowfullscreen="1" data-twentythree-gtm="yes" allow="autoplay; fullscreen" @fetchPriorityString></iframe>100 }101102 </div>103 </div>104 </div>105 </div>
Error executing template "Designs/ambu/Paragraph/Video.cshtml"System.Net.WebException: The remote server returned an error: (503) Server Unavailable.at System.Net.HttpWebRequest.GetResponse()at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)at System.Xml.XmlTextReaderImpl.OpenUrlDelegate(Object xmlResolver)at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)at System.Threading.CompressedStack.Run(CompressedStack compressedStack, ContextCallback callback, Object state)at System.Xml.XmlTextReaderImpl.OpenUrl()at System.Xml.XmlTextReaderImpl.Read()at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)at System.Xml.XmlDocument.Load(XmlReader reader)at System.Xml.XmlDocument.Load(String filename)at Co3.Ambu.Video.Services.TwentyThreeService.GetTwentyThreeVideoXmlValues(TwentyThreeVideoParameters twentyThreeParameters) in C:\Git\Solution\ambu-com-solution\Co3.Ambu.Video\Services\TwentyThreeService.cs:line 33at CompiledRazorTemplates.Dynamic.RazorEngine_efa5fb8d23aa42889b9b6d5c2cc41204.Execute() in E:\dynamicweb.net\SolutionsCustom\Co3\ambu-com.espresso4.dk\files\Templates\Designs\ambu\Paragraph\Video.cshtml:line 74at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.b__0(TextWriter writer)at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)at Dynamicweb.Rendering.Template.RenderRazorTemplate() 1 @inherits Co3.Espresso.Website.TemplateBases.Paragraphs.Video 2 @using System.Text; 3 @using System.Text.RegularExpressions; 4 @using Co3.Ambu.Video.Models 5 @using Co3.Ambu.Video.Services 6 @using Co3.Espresso.Website.TemplateBases.Paragraphs 7 @{ 8 var Url = Espresso.Item.Video; 9 10 var UrlRegex = new Regex( @"^.*((youtu.be\/|vimeo.com\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*" ); 11 12 var VimeoControlsColor = Espresso.Item.VideoVimeoControlsColor ?? string.Empty; 13 var VimeoShowTitle = Espresso.Item.VideoVimeoTitle; 14 var VimeoShowByLine = Espresso.Item.VideoVimeoByline; 15 16 17 var YoutubeShowControls = Espresso.Item.VideoYoutubeTitle; 18 var YoutubeShowTitle = Espresso.Item.VideoYoutubeControls; 19 var YoutubeShowLogo = Espresso.Item.VideoYoutubeLogo; 20 21 Match videoUrlMatch = UrlRegex.Match( Url ); 22 var EmbedUrl = String.Empty; 23 var videoTwentyThree = String.Empty; 24 25 if(Espresso.Item.VideoProvider == "vimeo"){ 26 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 27 if( videoUrlMatch.Groups[ 1 ].Value == "vimeo.com/" ) { 28 EmbedUrl = string.Format( "//player.vimeo.com/video/{0}?title={1}&byline={2}&portrait=0&color={3}", videoUrlMatch.Groups[ 7 ].Value, VimeoShowTitle == "True" ? "1" : "0", VimeoShowByLine == "True" ? "1" : "0", VimeoControlsColor ); 29 } 30 } 31 } else if(Espresso.Item.VideoProvider == "youtube"){ 32 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 33 EmbedUrl = string.Format( "https://www.youtube.com/embed/{0}?controls={1}&showinfo={2}&modestbranding={3}", videoUrlMatch.Groups[ 7 ].Value, YoutubeShowTitle == "True" ? "1" : "0", YoutubeShowControls == "True" ? "1" : "0", YoutubeShowLogo == "True" ? "0" : "1"); 34 } 35 } else if(Espresso.Item.VideoProvider == "videotwentythree"){ 36 videoTwentyThree = Espresso.Item.Video; 37 } 38 39 bool isHighFetchPriority = GetBoolean("Item.HighFetchPriority"); 40 string fetchPriorityString = isHighFetchPriority ? "fetchpriority=\"high\"" : "fetchpriority=\"low\""; 41 string initEmbedSrc = isHighFetchPriority ? EmbedUrl : ""; 42 } 43 <div class="@Espresso.Container.ClassList" id="@Espresso.Id"> 44 <div class="@Espresso.Wrapper.ClassList"> 45 <div class="@Espresso.Text.Container.ClassList"> 46 @Espresso.Text.Raw 47 </div> 48 <div class="@Espresso.Video.Container.ClassList"> 49 <div class="embed-responsive embed-responsive-16by9"> 50 @if ( Espresso.Item.VideoProvider == "videotwentythree" ) 51 { 52 string videoUrl = videoTwentyThree.Replace( "&", "&" ); 53 videoUrl = !videoUrl.ToLower().Contains( "http://" ) && !videoUrl.ToLower().Contains( "https://" ) ? videoUrl.Replace( "//","https://" ) : videoUrl; 54 55 videoTwentyThree = !videoTwentyThree.ToLower().Contains( "http://" ) && !videoTwentyThree.ToLower().Contains( "https://" ) ? videoTwentyThree.Replace( "//","https://" ) : videoTwentyThree; 56 57 string videoTitle = ""; 58 string videoThumbnail_loc = ""; 59 string videoDescription = ""; 60 string videoContent_loc = ""; 61 DateTime publishDate = new DateTime(); 62 int videoLength = 0; 63 string videoLengthFormatted = ""; 64 65 66 TwentyThreeVideoParameters videoParameters = TwentyThreeService.TwentyThreeParameters( videoUrl ); 67 68 string initVideoTwentyThree = isHighFetchPriority ? videoTwentyThree : ""; 69 70 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initVideoTwentyThree" data-src="@videoTwentyThree" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" data-twentythree-gtm="yes" webkitallowfullscreen="1" allow="autoplay; fullscreen" @fetchPriorityString></iframe> 71 72 if ( videoParameters != null && !string.IsNullOrEmpty(videoParameters.Authority) && !string.IsNullOrEmpty(videoParameters.Token) && !string.IsNullOrEmpty(videoParameters.PhotoId) ) 73 { 74 TwentyThreeVideoValues getTwentyThreeVideoValues = TwentyThreeService.GetTwentyThreeVideoXmlValues( videoParameters ); 75 videoTitle = !string.IsNullOrEmpty(getTwentyThreeVideoValues.Title) ? getTwentyThreeVideoValues.Title : ""; 76 videoThumbnail_loc = getTwentyThreeVideoValues.OriginalDownload; 77 videoContent_loc = getTwentyThreeVideoValues.Video1080PDownload != "" ? getTwentyThreeVideoValues.Video1080PDownload : getTwentyThreeVideoValues.VideoMediumDownload; 78 videoDescription = !string.IsNullOrEmpty(getTwentyThreeVideoValues.ContentText) ? getTwentyThreeVideoValues.ContentText : ""; 79 publishDate = getTwentyThreeVideoValues.PublishDateAnsi; 80 videoLengthFormatted = getTwentyThreeVideoValues.VideoLengthFormated; 81 82 <script type="application/ld+json"> 83 { 84 "@@context": "http://schema.org", 85 "@@type": "VideoObject", 86 "name": "@videoTitle.Replace("\"","\\\"")", 87 "description": "@videoDescription.Replace("\"","\\\"")", 88 "thumbnailUrl": "@videoThumbnail_loc", 89 "uploadDate": "@publishDate.ToString("s")", 90 "duration": "@videoLengthFormatted", 91 "contentUrl": "@videoContent_loc", 92 "embedUrl": "@videoTwentyThree" 93 } 94 </script> 95 } 96 } 97 else 98 { 99 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initEmbedSrc" data-src="@EmbedUrl" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" webkitallowfullscreen="1" data-twentythree-gtm="yes" allow="autoplay; fullscreen" @fetchPriorityString></iframe>100 }101102 </div>103 </div>104 </div>105 </div>
Error executing template "Designs/ambu/Paragraph/Video.cshtml"System.Net.WebException: The remote server returned an error: (503) Server Unavailable.at System.Net.HttpWebRequest.GetResponse()at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)at System.Xml.XmlTextReaderImpl.OpenUrlDelegate(Object xmlResolver)at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)at System.Threading.CompressedStack.Run(CompressedStack compressedStack, ContextCallback callback, Object state)at System.Xml.XmlTextReaderImpl.OpenUrl()at System.Xml.XmlTextReaderImpl.Read()at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)at System.Xml.XmlDocument.Load(XmlReader reader)at System.Xml.XmlDocument.Load(String filename)at Co3.Ambu.Video.Services.TwentyThreeService.GetTwentyThreeVideoXmlValues(TwentyThreeVideoParameters twentyThreeParameters) in C:\Git\Solution\ambu-com-solution\Co3.Ambu.Video\Services\TwentyThreeService.cs:line 33at CompiledRazorTemplates.Dynamic.RazorEngine_efa5fb8d23aa42889b9b6d5c2cc41204.Execute() in E:\dynamicweb.net\SolutionsCustom\Co3\ambu-com.espresso4.dk\files\Templates\Designs\ambu\Paragraph\Video.cshtml:line 74at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.b__0(TextWriter writer)at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)at Dynamicweb.Rendering.Template.RenderRazorTemplate() 1 @inherits Co3.Espresso.Website.TemplateBases.Paragraphs.Video 2 @using System.Text; 3 @using System.Text.RegularExpressions; 4 @using Co3.Ambu.Video.Models 5 @using Co3.Ambu.Video.Services 6 @using Co3.Espresso.Website.TemplateBases.Paragraphs 7 @{ 8 var Url = Espresso.Item.Video; 9 10 var UrlRegex = new Regex( @"^.*((youtu.be\/|vimeo.com\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*" ); 11 12 var VimeoControlsColor = Espresso.Item.VideoVimeoControlsColor ?? string.Empty; 13 var VimeoShowTitle = Espresso.Item.VideoVimeoTitle; 14 var VimeoShowByLine = Espresso.Item.VideoVimeoByline; 15 16 17 var YoutubeShowControls = Espresso.Item.VideoYoutubeTitle; 18 var YoutubeShowTitle = Espresso.Item.VideoYoutubeControls; 19 var YoutubeShowLogo = Espresso.Item.VideoYoutubeLogo; 20 21 Match videoUrlMatch = UrlRegex.Match( Url ); 22 var EmbedUrl = String.Empty; 23 var videoTwentyThree = String.Empty; 24 25 if(Espresso.Item.VideoProvider == "vimeo"){ 26 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 27 if( videoUrlMatch.Groups[ 1 ].Value == "vimeo.com/" ) { 28 EmbedUrl = string.Format( "//player.vimeo.com/video/{0}?title={1}&byline={2}&portrait=0&color={3}", videoUrlMatch.Groups[ 7 ].Value, VimeoShowTitle == "True" ? "1" : "0", VimeoShowByLine == "True" ? "1" : "0", VimeoControlsColor ); 29 } 30 } 31 } else if(Espresso.Item.VideoProvider == "youtube"){ 32 if( videoUrlMatch.Success && videoUrlMatch.Groups.Count >= 8 ) { 33 EmbedUrl = string.Format( "https://www.youtube.com/embed/{0}?controls={1}&showinfo={2}&modestbranding={3}", videoUrlMatch.Groups[ 7 ].Value, YoutubeShowTitle == "True" ? "1" : "0", YoutubeShowControls == "True" ? "1" : "0", YoutubeShowLogo == "True" ? "0" : "1"); 34 } 35 } else if(Espresso.Item.VideoProvider == "videotwentythree"){ 36 videoTwentyThree = Espresso.Item.Video; 37 } 38 39 bool isHighFetchPriority = GetBoolean("Item.HighFetchPriority"); 40 string fetchPriorityString = isHighFetchPriority ? "fetchpriority=\"high\"" : "fetchpriority=\"low\""; 41 string initEmbedSrc = isHighFetchPriority ? EmbedUrl : ""; 42 } 43 <div class="@Espresso.Container.ClassList" id="@Espresso.Id"> 44 <div class="@Espresso.Wrapper.ClassList"> 45 <div class="@Espresso.Text.Container.ClassList"> 46 @Espresso.Text.Raw 47 </div> 48 <div class="@Espresso.Video.Container.ClassList"> 49 <div class="embed-responsive embed-responsive-16by9"> 50 @if ( Espresso.Item.VideoProvider == "videotwentythree" ) 51 { 52 string videoUrl = videoTwentyThree.Replace( "&", "&" ); 53 videoUrl = !videoUrl.ToLower().Contains( "http://" ) && !videoUrl.ToLower().Contains( "https://" ) ? videoUrl.Replace( "//","https://" ) : videoUrl; 54 55 videoTwentyThree = !videoTwentyThree.ToLower().Contains( "http://" ) && !videoTwentyThree.ToLower().Contains( "https://" ) ? videoTwentyThree.Replace( "//","https://" ) : videoTwentyThree; 56 57 string videoTitle = ""; 58 string videoThumbnail_loc = ""; 59 string videoDescription = ""; 60 string videoContent_loc = ""; 61 DateTime publishDate = new DateTime(); 62 int videoLength = 0; 63 string videoLengthFormatted = ""; 64 65 66 TwentyThreeVideoParameters videoParameters = TwentyThreeService.TwentyThreeParameters( videoUrl ); 67 68 string initVideoTwentyThree = isHighFetchPriority ? videoTwentyThree : ""; 69 70 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initVideoTwentyThree" data-src="@videoTwentyThree" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" data-twentythree-gtm="yes" webkitallowfullscreen="1" allow="autoplay; fullscreen" @fetchPriorityString></iframe> 71 72 if ( videoParameters != null && !string.IsNullOrEmpty(videoParameters.Authority) && !string.IsNullOrEmpty(videoParameters.Token) && !string.IsNullOrEmpty(videoParameters.PhotoId) ) 73 { 74 TwentyThreeVideoValues getTwentyThreeVideoValues = TwentyThreeService.GetTwentyThreeVideoXmlValues( videoParameters ); 75 videoTitle = !string.IsNullOrEmpty(getTwentyThreeVideoValues.Title) ? getTwentyThreeVideoValues.Title : ""; 76 videoThumbnail_loc = getTwentyThreeVideoValues.OriginalDownload; 77 videoContent_loc = getTwentyThreeVideoValues.Video1080PDownload != "" ? getTwentyThreeVideoValues.Video1080PDownload : getTwentyThreeVideoValues.VideoMediumDownload; 78 videoDescription = !string.IsNullOrEmpty(getTwentyThreeVideoValues.ContentText) ? getTwentyThreeVideoValues.ContentText : ""; 79 publishDate = getTwentyThreeVideoValues.PublishDateAnsi; 80 videoLengthFormatted = getTwentyThreeVideoValues.VideoLengthFormated; 81 82 <script type="application/ld+json"> 83 { 84 "@@context": "http://schema.org", 85 "@@type": "VideoObject", 86 "name": "@videoTitle.Replace("\"","\\\"")", 87 "description": "@videoDescription.Replace("\"","\\\"")", 88 "thumbnailUrl": "@videoThumbnail_loc", 89 "uploadDate": "@publishDate.ToString("s")", 90 "duration": "@videoLengthFormatted", 91 "contentUrl": "@videoContent_loc", 92 "embedUrl": "@videoTwentyThree" 93 } 94 </script> 95 } 96 } 97 else 98 { 99 <iframe class="embed-responsive-item @(isHighFetchPriority ? "" : "js-e-content-defer e-content-defer-placeholder")" src="@initEmbedSrc" data-src="@EmbedUrl" width="1080" height="608" frameborder="0" border="0" scrolling="no" allowfullscreen="1" mozallowfullscreen="1" webkitallowfullscreen="1" data-twentythree-gtm="yes" allow="autoplay; fullscreen" @fetchPriorityString></iframe>100 }101102 </div>103 </div>104 </div>105 </div>
Testimonios acerca del Ambu® aScope Gastro
Escuche los testimonios de profesionales sanitarios de medicina gastrointestinal sobre cómo la solución aScope Gastro de un solo uso ha hecho que sus días de trabajo sean más fáciles y fluidos.
Primeras experiencias de especialistas en endoscopia con un gastroscopio flexible de un solo uso
Las evaluaciones indicaron que la solución de endoscopia de un solo uso aScope Gastro es una alternativa viable a los gastroscopios flexibles reutilizables
Ambu® aScope™ Duodeno
Encuesta posterior a la CPRE
Basada en más de 500 evaluaciones del Ambu® aScope™ Duodeno de un solo uso
Se solicitó a un grupo de especialistas en endoscopia de 13 países europeos que calificaran el aScope Duodeno de un solo uso inmediatamente después de un procedimiento de CPRE. En el 93% de las evaluaciones, los médicos indicaron que su nivel general de satisfacción fue positivo o neutro, y en el 76% de los casos expusieron comentarios positivos acerca de la punta radiotransparente debido a la mejora en la visualización que ofrece esta característica única.
Descargue el artículo técnico para saber cuáles fueron las puntuaciones para los atributos de rendimiento, características específicas y satisfacción general.
Casos clínicos con aScope Gastro
Ideas clave de los médicos que utilizan el aScope Gastro de un solo uso
ENTP intracavitaria mediante el sistema Eso-SPONGE
Dr. DÖRTE WICHMANN, ALEMANIA
Aprenda cómo se cambió el concepto de tratamiento cuando se identificó una posición inadecuada de la anterior sutura divergente en la cavidad para-gástrica.
Gastrostomía percutánea endoscópica controlada (PEG)
Dr. NIKOS STERGIOU
Conozca la calidad de la diafanoscopia en una PEG realizada con un gastroscopio de un solo uso.
Disección submucosa con gastroscopio de un solo uso
Dr. EDUARDO ALBÉNIZ, Dr. JUAN J. VILA , ESPAÑA
Compruebe el buen funcionamiento del gastroscopio de un solo uso incluso en casos complejos, como disecciones submucosas, aportando ventajas debido a sus características técnicas.
Gastroscopia de urgencia con un gastroscopio de un solo uso
Dra. AMAIA ARRUBLA, Dr. JUAN J. VILA , ESPAÑA
Conozca cómo el gastroscopio de un solo uso le puede ayudar en sus casos de urgencia.
Casos Clínicos con aScope Duodeno
Información clave de los médicos que utilizan los endoscopios gastrointestinales de un solo uso Ambu
CPRE, RFA endobiliar y colocación de stents
MD, FASGE Khanh Do-Cong Pham, Noruega
Conozca el importante papel que jugó Ambu® aScope™ Duodeno en un tratamiento de ablación de colangiocarcinoma (tumor de Klatskin, Bismuth IV) en un paciente inmunodeprimido colonizado con bacterias multirresistentes.
Caso muy poco frecuente de estenosis funcional del conducto biliar extrahepático
Prof. Dr. med. Mark Ellrichmann, Alemania
Descubra cómo la punta radiotransparente de aScope Duodeno facilitó la visualización de todo el trayecto del colédoco y confirmó la ubicación de la estenosis funcional.
Colocación de stent de plástico en pacientes con colestasis
Prof. Dr. med. Arthur Schmidt, Alemania
Descubra cómo la punta distal radiotransparente del aScope Duodeno permitió una visualización fluoroscópica excelente del colédoco distal, lo que hizo posible la confirmación de una estenosis distal benigna.
Extracción de stent y cálculos en un paciente con una variación anatómica muy poco frecuente del conducto cístico
Prof. Dr. med Jörg Schirra, Alemania
Conozca cómo se utilizó aScope Duodeno para la extracción de un stent de plástico de 11,5 Fr, la canulación asistida por guía y la extracción de cálculos del catéter con globo en un caso raro e inesperado.