Merge pull request #1909 from RevGear/singtel.com
Add guide from singtel.com
This commit is contained in:
6 files changed
+1115
No files matched your search
@@ -0,0 +1,17 @@
|
||||
name: singtel.com
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * *'
|
||||
workflow_dispatch:
|
||||
workflow_run:
|
||||
workflows: [_trigger]
|
||||
types:
|
||||
- completed
|
||||
jobs:
|
||||
load:
|
||||
uses: ./.github/workflows/_load.yml
|
||||
with:
|
||||
site: ${{github.workflow}}
|
||||
secrets:
|
||||
APP_ID: ${{ secrets.APP_ID }}
|
||||
APP_PRIVATE_KEY: ${{ secrets.APP_PRIVATE_KEY }}
|
||||
@@ -0,0 +1 @@
|
||||
{"6350":[{"channelid":"6350","duration":"10800","programId":"3538393","program":{"description":"Saturday night, we feel the air is getting hot... Like you baby! There's only one way to keep the party going - stick with MTV 90s, we've got all the best songs right here!","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538393","title":"Saturday Night Party!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-28T22:00:00"},{"channelid":"6350","duration":"14400","programId":"3538394","program":{"description":"There's no better way to celebrate the 90s than to dance, dance, dance your way through the years! From house to techno, via intergalactic disco, we'll make sure you don't... stop... movin'!","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538394","title":"Dance Megamix! 90-99","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T01:00:00"},{"channelid":"6350","duration":"10800","programId":"3538364","program":{"description":"Nothing but the best tracks and ultimate anthems from the 90s.","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538364","title":"Ultimate 90s Playlist!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T05:00:00"},{"channelid":"6350","duration":"10800","programId":"3538380","program":{"description":"Get your walkman ready, we've hand-picked a mega selection of 90s pop, R&B and dance videos from the MTV archive. Mix it up, on MTV 90s!","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538380","title":"90s Mixtape!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T08:00:00"},{"channelid":"6350","duration":"10800","programId":"3538364","program":{"description":"Nothing but the best tracks and ultimate anthems from the 90s.","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538364","title":"Ultimate 90s Playlist!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T11:00:00"},{"channelid":"6350","duration":"3600","programId":"3538367","program":{"description":"Zig-A-Zig-ah! It's all about girl power! Tune in for all the biggest girl power hits from the 90s.","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538367","title":"Girl Power Hour!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T14:00:00"},{"channelid":"6350","duration":"10800","programId":"3538390","program":{"description":"We rewind back to the decade that brought us grunge and girl power, hip hop and teen pop, eurodance and house... It smells like... the 90s!","programflags":[{"id":null,"description":"Series","value":null,"name":null,"lang":null,"pname":"Series"}],"category":null,"subCategory":null,"programValues":[{"description":"8350","id":null,"name":"MSEPG_Episode_ID","pname":null},{"description":"1","id":null,"name":"MSEPG_Syndicated_Episode_Number","pname":null},{"description":"PG13","id":null,"name":"MDA","pname":null}],"id":"3538390","title":"Smells Like... The 90s!","names":[]},"scheduleFlags":null,"startDateTime":"2023-01-29T15:00:00"},{"channelid":"6350","duration":"14400","programId":"3538395","programLine truncated
|
||||
@@ -0,0 +1,833 @@
|
||||
|
||||
<!DOCTYPE HTML>
|
||||
|
||||
|
||||
<html lang="en">
|
||||
<head><script src="/Well-vp-thou-by-it-wing-There-Theft-beth-you-cro" async></script>
|
||||
|
||||
<title>Page Not Found</title>
|
||||
|
||||
<meta charset="utf-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
|
||||
|
||||
<meta name="pageTitle"/>
|
||||
<meta name="description"/>
|
||||
<meta name="keywords"/>
|
||||
|
||||
|
||||
<meta property="og:title" content="Page Not Found"/>
|
||||
|
||||
<meta property="og:url" content="https://www.singtel.com/includes/error/404"/>
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="shortcut icon" href="/content/dam/singtel/Standard/favicon.ico" type="image/vnd.microsoft.icon"/>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
var checkout = false;
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
var homePage = false;
|
||||
</script>
|
||||
|
||||
<script>
|
||||
var dataObject = window.dataObject || [];
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<meta/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="/ruxitagentjs_ICA2NVfqru_10255221104040649.js" data-dtconfig="rid=RID_83477599|rpid=1544931316|domain=singtel.com|reportUrl=/rb_7a0b9284-f16e-4698-a5cf-9da3058cd87e|uam=1|app=ee6bd5a5e1c8a73d|rcdec=1209600000|featureHash=ICA2NVfqru|vcv=2|rdnt=1|uxrgce=1|bp=3|srmcrv=10|cuc=iym6nv0x|mel=100000|dpvc=1|ssv=4|lastModification=1674961518049|dtVersion=10255221104040649|srmcrl=1|tp=500,50,0,1|uxdcw=1500|agentUri=/ruxitagentjs_ICA2NVfqru_10255221104040649.js"></script><script type="text/javascript" src="/ruxitagentjs_ICA2NVfqru_10255221104040649.js" data-dtconfig="uam=1|app=ee6bd5a5e1c8a73d|rcdec=1209600000|featureHash=ICA2NVfqru|vcv=2|rdnt=1|uxrgce=1|bp=3|srmcrv=10|cuc=iym6nv0x|mel=100000|dpvc=1|ssv=4|lastModification=1674831918056|dtVersion=10255221104040649|srmcrl=1|tp=500,50,0,1|uxdcw=1500|agentUri=/ruxitagentjs_ICA2NVfqru_10255221104040649.js|reportUrl=/rb_7a0b9284-f16e-4698-a5cf-9da3058cd87e|rid=RID_-392210|rpid=319914694|domain=singtel.com"></script><script>
|
||||
window.t0 = new Date().getTime();
|
||||
function tPast() {
|
||||
return ((new Date().getTime() - t0) / 1000).toFixed(3);
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="/etc.clientlibs/clientlibs/granite/jquery.min.js"></script>
|
||||
<script type="text/javascript" src="/etc.clientlibs/clientlibs/granite/utils.min.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="stylesheet" href="https://cdn.aws.singtel.com/brt/osg/1_4_434/vendors/foundation/css/normalize.css"/>
|
||||
|
||||
|
||||
<link rel="stylesheet" href="https://cdn.aws.singtel.com/brt/osg/1_4_434/lux.css"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="stylesheet" href="/etc.clientlibs/springd/clientlibs/springd-layouting.min.css" type="text/css">
|
||||
<script type="text/javascript" src="/etc.clientlibs/springd/clientlibs/springd-layouting.min.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
/* Column control image path from OSGI */
|
||||
window.localStorage["smallImagePath"] = "/content/dam/singtel/online-draft/column-control/small";
|
||||
window.localStorage["mediumImagePath"] = "/content/dam/singtel/online-draft/column-control/medium";
|
||||
window.localStorage["largeImagePath"] = "/content/dam/singtel/online-draft/column-control/large";
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="canonical" href="https://www.singtel.com/includes/error/404"/>
|
||||
|
||||
</head>
|
||||
|
||||
<body class="template-bg-white">
|
||||
|
||||
<script type="text/javascript">
|
||||
window.lpSiteId = "1917348";
|
||||
window.lpSection = "general-enquiries-fixed-english";
|
||||
window.singtelGoogleMapKey = "AIzaSyBK1rFRpW3CJclNjA9SlNZIGabZYU-MReY";
|
||||
window.isEditorMode = "false";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="/etc/clientlibs/granite/coralui/js/libs/jquery.js"></script>
|
||||
<script type="text/javascript" src="/etc/clientlibs/granite/coralui/js/libs/jquery-cookie.js"></script>
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="/etc.clientlibs/springd/clientlibs/clientlib-lp.min.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
lpTag.sdes = lpTag.sdes||[];
|
||||
//Section information will group pages together to create the LE2.0 location. lpTag.section should be put on every tagged page.
|
||||
lpTag.section = [window.lpSection];
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div id="lpButtonWrapper" style="position:absolute; left: -500px;"> <div id="lpButtonDiv-MobileVA"></div> <!-- Div for a mobile skill embedded button --> <div id="lpButtonDiv-FixedVA"></div> <!-- Div for a fixed skill embedded button --> <div id="lpButtonDiv-SupportVA"></div> <!-- Div for a support skill embedded button --> <div id="lpButtonDiv-OnePassVA"></div> <!-- Div for a OnePass skill embedded button --> <div id="lpButtonDiv-PreChatVA"></div> <!-- Div for a Pre-chat embedded button --> <div id="lpButtonDiv-ConSalesVA"></div> <!-- Div for a ConSales embedded button --> <div id="lpButtonDiv"></div> </div><script> window.lpUnit = ""; window.lpSiteId = "1917348"; window.lp_EngagementId = "";</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-K45QVF" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
|
||||
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
||||
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
||||
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
||||
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
||||
})(window,document,"script","dataLayer","GTM-K45QVF");</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-widget-inclusion datamodel="{}" widgetid="cartHeaderSingtel" bootstrap_src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/utils/bootstrap.js"> </ux-widget-inclusion>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-widget-inclusion datamodel="{"logoutUrl":"https://onepass.singtel.com/ssoselfservice/userLogout.action?portalTy=1&success_callback_url=","callbackUrl":"/personal/my-account/login"}" widgetid="singtelLogout" bootstrap_src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/utils/bootstrap.js"> </ux-widget-inclusion>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
window.localStorage["lp_Section"] = ""
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-consent-banner datamodel="{"text":"Our website uses cookies to improve our site and your online experience. By continuing to use our website, you consent to cookies being used. See our \n<a target=\"_blank\" href=\"https://www.singtel.com/data-protection/cookie-policy\">Cookie Policy</a> to find out more.","descStyle":"body-copy-text","cookieName":"consentBanner180524","expireDays":90,"openApp":{"enable":true,"text":"<p>Manage your services with <b>My Singtel App</b></p>\r\n","imgUrl":"/content/dam/singtel/personal/app-banner/my-singtel-app-icon.png","appUrl":{"android":"https://play.google.com/store/apps/details?id=com.singtel.mysingtel&hl=en_SG&gl=US","ios":"https://apps.apple.com/sg/app/my-singtel-app/id1054859191"}},"theme":"dark"}"></ux-consent-banner>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script> window.localStorage["currentPageRootUrl"] = "/includes"; window.localStorage["currentPageTopParentUrl"] = "/includes/error"; window.localStorage["currentPageUrl"] = "/includes/error/404"; window.localStorage["thirdlevelPage"] = ""; window.localStorage["fourthlevelPage"] = "";</script><ux-header-singtel datamodel="{"login":true,"linkItemList":[{"title":"Personal","src":"/personal","menuList":null},{"title":"Business","src":"/business","menuList":null},{"title":"Support","src":"/support-megamenu","menuList":null},{"title":"About Us","src":"/about-us","menuList":null}],"searchPlaceholder":"Search","logo":{"link":"/content/singtel/en/personal.html","alt":"logo","src":"//cdn1.singteldigital.com/content/dam/singtel/online-draft/singtel_logo_coloured.png"},"logoDark":{"alt":"logo","src":"//cdn1.singteldigital.com/content/dam/singtel/online-draft/singtel_logo_white.png"},"loginButtonText":"Login","loginButtonUrl":"/personal/my-account/login","maleUser":{"alt":"male","src":"//cdn2.singteldigital.com/content/dam/singtel/online-draft/male.png"},"femaleUser":{"alt":"female","src":"//cdn1.singteldigital.com/content/dam/singtel/online-draft/female.png"},"logoutButtonText":"Logout","headerList":[{"linkItem":{"title":"Mobile","src":"/personal/mobile","menuList":null},"subMenu":[{"menuSectionTitle":{"title":"Devices","src":"/personal/mobile/devices","menuList":null},"menuList":[{"linkItem":{"title":"With Plan","src":"/personal/mobile/devices/with-plan","menuList":[]}},{"linkItem":{"title":"Without Plan","src":"/personal/mobile/devices/without-plan","menuList":[]}}]},{"menuSectionTitle":{"title":"Plans","src":"/personal/mobile/plans","menuList":null},"menuList":[{"linkItem":{"title":"Postpaid","src":"/personal/mobile/plans/postpaid","menuList":[]}},{"linkItem":{"title":"SIM only","src":"/personal/mobile/plans/sim-only","menuList":[]}},{"linkItem":{"title":"Prepaid","src":"/personal/mobile/plans/prepaid","menuList":[]}},{"linkItem":{"title":"Corporate Individual Scheme (CIS)","src":"/personal/mobile/plans/corporate-individual-scheme","menuList":[]}}]},{"menuSectionTitle":{"title":"Services","src":"/personal/mobile/services","menuList":null},"menuList":[{"linkItem":{"title":"5G","src":"/personal/mobile/services/5g","menuList":[]}},{"linkItem":{"title":"Roaming","src":"/personal/mobile/services/roaming","menuList":[]}},{"linkItem":{"title":"Add-ons","src":"/personal/mobile/services/add-ons","menuList":[]}},{"linkItem":{"title":"Mobile Priority plan","src":"/personal/mobile/services/mobile-priority-plan","menuList":[]}}]}]},{"linkItem":{"title":"Broadband","src":"/personal/broadband","menuList":null},"subMenu":[{"menuSectionTitle":{"title":"Fibre","src":"/personal/broadband/fibre","menuList":null},"menuList":[{"linkItem":{"title":"Plans","src":"/personal/broadband/fibre/plans","menuList":[]}},{"linkItem":{"title":"Add-ons","src":"/personal/broadband/fibre/add-ons","menuList":[]}},{"linkItem":{"title":"New homes","src":"/personal/broadband/fibre/new-homes","menuList":[]}}]},{"menuSectionTitle":{"title":"Solutions","src":"/personal/broadband/solutions","menuList":null},"menuList":[{"linkItem&qLine truncated
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-widget-inclusion datamodel="{"logoutUrl":"https://onepass.singtel.com/ssoselfservice/userLogout.action?portalTy=1&success_callback_url=","callbackUrl":"/personal/my-account/login"}" widgetid="singtelLogout" bootstrap_src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/utils/bootstrap.js"> </ux-widget-inclusion>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
function refreshAemEditorLayer(mode){
|
||||
try {
|
||||
parent.Granite.author.layerManager.loadLayer(mode);
|
||||
} catch (e) {
|
||||
console.warn(e);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="aem-Grid aem-Grid--12 aem-Grid--default--12 ">
|
||||
|
||||
<div class="sd-component-errorpage-singtel aem-GridColumn aem-GridColumn--default--12">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-error-page datamodel="{"title":"404","subTitle":"Oops! Page not found.","desc":"The page you requested could not be found. Perhaps you could explore the rest of the site?","link":"/personal","linkText":"Back to Singtel.com","placeholderText":"Search Singtel.com","googleSearchUrl":"/online-api/cxf/search/search","googleSearchToken":"abc","personalItemNumber":3,"businessItemNumber":1,"aboutUsItemNumber":0,"searchResultPageUrl":"http://info.singtel.com/search","searchResultPageUrlText":"View All Results"}"> <h2> Title : 404</h2> <h2> Subtitle : Oops! Page not found.</h2> <p> Description : The page you requested could not be found. Perhaps you could explore the rest of the site?</p> </ux-error-page>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<div class="sd-component-pagesection-singtel aem-GridColumn aem-GridColumn--default--12">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-page-section datamodel="{"uniqueId":"_content_singtel_en_includes_error_404_jcr_content_par_sd_component_pagesec","bgColor":"#f6f5f5","backgroundStyle":null,"gradientStart":null,"gradientEnd":null,"shadow":null,"isBgImgHiddenForMobile":null,"isPanelNeeded":null,"theme":null,"desktopHeight":null,"mobileHeight":null,"paddingDesktop":null,"paddingMobile":null,"backgroundImage":{"desktop":{"alt":"","src":""},"tablet":{"alt":"","src":""},"mobile":{"alt":"","src":""}}}"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12"> <div class="aem-GridColumn aem-GridColumn--default--12"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="sd-component-columncontroller-singtel aem-GridColumn aem-GridColumn--default--12"> <div class="component-container hide"> <div class="widget-instance"> <div class="row left-collapse collapse equal-spacing"> <ux-column-control datamodel="{"small":12,"medium":4,"large":4}"> <div class="col_component_sd_component_columnc_0 parsys"><div class="sd-component-marketingbanner-singtel section"> <div class="component-container hide"> <div class="widget-instance"> <ux-marketing-banner datamodel="{"bgColor":null,"backgroundImg":"//cdn2.singteldigital.com/content/dam/singtel/online-draft/tv/lifestyle/lifestyle-marketing-banner-17.jpg","alt":"Mobile products","link":"/personal/products-services/mobile","title":"Mobile","desc":"SEE WHAT SUITS YOU","theme":"dark","showCornerAndShadow":false}"> <h2>Mobile</h2> <p>SEE WHAT SUITS YOU</p> <a href="/personal/products-services/mobile"> <img src="/content/dam/singtel/online-draft/tv/lifestyle/lifestyle-marketing-banner-17.jpg"/> </a> </ux-marketing-banner> </div> </div> </div></div> </ux-column-control> <ux-column-control datamodel="{"small":0,"medium":4,"large":4}"> <div class="col_component_sd_component_columnc_1 parsys"><div class="sd-component-marketingbanner-singtel section"> <div class="component-container hide"> <div class="widget-instance"> <ux-marketing-banner datamodel="{"bgColor":null,"backgroundImg":"//cdn1.singteldigital.com/content/dam/singtel/online-draft/tv/lifestyle/lifestyle-marketing-banner-18.jpg","alt":"Singtel TV","link":"/personal/products-services/broadband","title":"Broadband","desc":"SURF WITH EASE","theme":"dark","showCornerAndShadow":false}"> <h2>Broadband</h2> <p>SURF WITH EASE</p> <a href="/personal/products-services/broadband"> <img src="/content/dam/singtel/online-draft/tv/lifestyle/lifestyle-marketing-banner-18.jpg"/> </a> </ux-marketing-banner> </div> </div> </div></div> </ux-column-control> <ux-column-control datamodel="{"columnClasses":" last-column","small":0,"medium":4,"large":4}"> <div class="col_component_sd_component_columnc_2 parsys"><div class="sd-component-marketingbanner-singtel section"> <div class="component-container hide"> <div class="widget-instance"> Line truncated
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sd-component-featurelinks-singtel">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-footer-links datamodel="{"footer":{"items":[{"heading":{"title":"Mobile","src":"/personal/products-services/mobile","menuList":null},"children":[{"title":"Phones & More","src":"/personal/products-services/mobile/detox-phones","menuList":null},{"title":"SIM Only Plus Plans","src":"/personal/products-services/mobile/sim-only-plans","menuList":null},{"title":"Postpaid Plans","src":"/personal/products-services/mobile/detox-plans","menuList":null},{"title":"Postpaid Add-ons","src":"/personal/products-services/mobile/add-ons","menuList":null},{"title":"Prepaid Plans","src":"/personal/products-services/mobile/prepaid-plans","menuList":null},{"title":"Roaming","src":"/personal/products-services/mobile/roaming","menuList":null},{"title":"5G","src":"/personal/products-services/mobile/5g","menuList":null},{"title":"AR/VR Entertainment","src":"/personal/products-services/mobile/ar-vr-entertainment","menuList":null}]},{"heading":{"title":"Broadband","src":"/personal/products-services/broadband","menuList":null},"children":[{"title":"Broadband Plans","src":"/personal/products-services/broadband/fibre-broadband-plans","menuList":null},{"title":"Home Priority Plan","src":"/personal/products-services/broadband/homepriority","menuList":null},{"title":"Broadband Add-ons","src":"/personal/products-services/broadband/add-ons","menuList":null},{"title":"WiFi 6","src":"/personal/products-services/broadband/wifi6","menuList":null},{"title":"WiFi Mesh","src":"/personal/products-services/broadband/wifimesh","menuList":null},{"title":"Smart Home Solutions ","src":"/personal/products-services/broadband/smarthome","menuList":null},{"title":"Lifestyle Products","src":"/personal/products-services/broadband/premiums","menuList":null}]},{"heading":{"title":"TV","src":"/personal/products-services/tv","menuList":null},"children":[{"title":"Packs","src":"/personal/products-services/tv/packs","menuList":null},{"title":"Channels","src":"/personal/products-services/tv/singtel-tv-channels","menuList":null},{"title":"TV Guide","src":"/personal/products-services/tv/tv-programme-guide","menuList":null},{"title":"Singtel TV GO","src":"/personal/products-services/tv/singtel-tv-go","menuList":null},{"title":"DVR Set-Top Box","src":"/personal/products-services/tv/dvr","menuList":null}]},{"heading":{"title":"Devices & Gadgets","src":"/personal/products-services/devices-and-gadgets","menuList":null},"children":[{"title":"Wearables","src":"/personal/products-services/devices-and-gadgets/wearables","menuList":null},{"title":"Work-From-Home","src":"/personal/products-services/devices-and-gadgets/work-from-home","menuList":null},{"title":"Gaming","src":"/personal/products-services/devices-and-gadgets/gaming","menuList":null},{"title":"Phones & Tablets","src":"/personal/products-services/devices-and-gadgets/phone-tablets","menuList":null},{"title":"Home Entertainment & Appliances","src":"/personal/products-services/devices-and-gadgets/home-entertainment-appliances","menuList":null}]},{"heading":{"title":"Lifestyle & Services","src":"/personal/products-services/lifestyle-services","menuList":null},"children":[{"title":"Insurance","src":"/personal/products-services/lifestyle-services/insurance","menuList":null},{"title":"My Singtel app","src":&quoLine truncated
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="newpar new section">
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="par iparys_inherited">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-footer-singtel datamodel="{"links":[{"text":"DATA PROTECTION","link":"/data-protection"},{"text":"CAREERS","link":"https://groupcareers.singtel.com"},{"text":"TERMS OF USE","link":"/standard-agreement"},{"text":"COPYRIGHT NOTICES","link":"/copyright"},{"text":"CONTACT US","link":"/contact-us"},{"text":"SINGTEL GLOBAL OFFICES","link":"/business/why-singtel-business/global-services"},{"text":"STORE LOCATOR","link":"/store-locator"}],"copyrightText":"© Singtel (CRN: 199201624D) All Rights Reserved.","hasContent":true,"isFullWidth":false}"> <a href="/data-protection">DATA PROTECTION</a> <a href="https://groupcareers.singtel.com">CAREERS</a> <a href="/standard-agreement">TERMS OF USE</a> <a href="/copyright">COPYRIGHT NOTICES</a> <a href="/contact-us">CONTACT US</a> <a href="/business/why-singtel-business/global-services">SINGTEL GLOBAL OFFICES</a> <a href="/store-locator">STORE LOCATOR</a> <p>© Singtel (CRN: 199201624D) All Rights Reserved.</p> </ux-footer-singtel>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="component-container hide">
|
||||
<div class="widget-instance">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<ux-faq-singtel datamodel="{"triggerIcons":{"webChatImg":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/ruby.png","alt":"singtel"},"virtualChatImg":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/shirley.png","alt":"singtel"},"helpImg":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/ruby.png","alt":"singtel"},"messageDuration":"8000","webChatPopUpImage":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/hover.png","alt":"singtel"},"virtualChatPopUpImageMorning":{"src":"//cdn2.singteldigital.com/content/dam/singtel/personal/support/shirley/Bubble-morning.png","alt":"singtel"},"virtualChatPopUpImageAfternoon":{"src":"//cdn2.singteldigital.com/content/dam/singtel/personal/support/shirley/Bubble-afternoon.png","alt":"singtel"},"virtualChatPopUpImageEvening":{"src":"//cdn2.singteldigital.com/content/dam/singtel/personal/support/shirley/Bubble-evening.png","alt":"singtel"},"proactiveChatInvitationImage":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/proactive-chat-invitation-3x.png","alt":"singtel"}},"faqPageContent":{"faq":{"frequentlyAskedQuestionList":[],"viewMore":{"text":null,"link":""},"faqText":"FAQ"},"virtualAgent":{"askTitle":"Ask","questionInputPlaceholder":"Ask your question here!","agentTitle":"Ask Shirley","imageTitle":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/shirley-header.png","alt":"Digital FAQ"},"enable":true,"enableProactiveChatInvitation":false,"proactiveChatInvitationContext":"","chat":{"iFrameUrl":"https://shirley-prod.singtel.com//"},"header":{"img":{"src":"//cdn2.singteldigital.com/content/dam/singtel/personal/support/shirley/shirley-open.png","alt":"Digital FAQ"},"linkText":"Start Chat Now","description":"Hi, I'm Shirley! Let me help you with your questions on mobile, broadband, accounts and billing."},"survey":{"img":{"src":"//cdn2.singteldigital.com/content/dam/singtel/personal/support/shirley/shirley-open.png","alt":"Digital FAQ"},"header":"Asked Shirley?","description":"Have you asked Shirley a question ?<br><br>Help us improve by telling us about you experience. The survey will only take a minute of your time.","surveyUrl":"https://www.surveymonkey.com/r/ShirleyVA","yesButtonLabel":"Yes I'd like to","yesButtonAriaLabel":"The survey will open in a new window","noButtonLabel":"No, Thanks","notes":"The survey will open in a new window."},"proactiveChatInvitationStartAfter":10,"proactiveChatInvitationEndAfter":5},"webChat":{"webChatStatuesInterval":500,"webChatStatuesTimeout":10000,"agentTitle":"Live Chat","helpTitle":"Contact us","timeForChecking":"1000","online":{"description":"Hi, I’m Ruby! I can help you with your sales enquiry on Singtel services. ","button":{"title":"Chat with us today!"}},"busy":{"description":"Sorry, there are no available chat agents to address your needs now."},"askTitle":"Ask","questionInputPlaceholder":"Ask your question here!","enable":false,"header":{"img":{"src":"//cdn1.singteldigital.com/content/dam/singtel/personal/support/shirley/ruby.png","alt":"Digital FAQ"},"linkText":"Start Chat Now."}},"callback":{"submitButton":{"title":"Submit"},"callBackButton":{"title":"Chat with Sales Consultant ","src":"https://wa.me/6590181688?text=ONLINESALESCHATS"},"title":"Our chat feature is temporarily unavailable. ","description":"You can chat with us via WhatsApp at www.singtel.com/onlinechats or call Line truncated
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
function refreshAemEditorLayer(mode){
|
||||
try {
|
||||
parent.Granite.author.layerManager.loadLayer(mode);
|
||||
} catch (e) {
|
||||
console.warn(e);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/osg/1_4_434/plugins/polyfills.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/osg/1_4_434/vendors/foundation-sites/js/vendor/modernizr.js"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
console.log(tPast(), 'Fetching requireConfig');
|
||||
|
||||
// Load lux, compatible with local or remote loading of JS.
|
||||
window.patternLibraryBaseUrl = 'https://cdn.aws.singtel.com/brt/osg/1_4_434/';
|
||||
window.uxfBaseUrl = 'https://cdn.aws.singtel.com/brt/uxf/20230212/';
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository/common/lib/ractive/ractive.js?vd=12113121221"></script>
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/paths/web/paths-min.js?vd=12113121221"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/osg/1_4_434/vendors/requirejs/require.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/osg/1_4_434/core/mainLux.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/osg/1_4_434/core/osgRactiveWrapper.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/config/uxf.optimized-min.js?vd=12113121221"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
requirejs.config({
|
||||
baseUrl: 'https://cdn.aws.singtel.com/brt/uxf/20230212'
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/utils/mapping.js?vd=12113121221"></script>
|
||||
|
||||
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/brt/uxf/20230212/businesswidget/repository_l9_common/common/utils/register.js?vd=12113121221"></script>
|
||||
|
||||
|
||||
|
||||
<!--BEGIN QUALTRICS WEBSITE FEEDBACK SNIPPET-->
|
||||
|
||||
<!--END WEBSITE FEEDBACK SNIPPET-->
|
||||
|
||||
|
||||
|
||||
<!-- Lux2 version 2.53.0 -->
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/lux/lux.209b9171.js"></script>
|
||||
<script type="text/javascript" src="https://cdn.aws.singtel.com/lux/main.fd856a6a.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,157 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<site site="singtel.com">
|
||||
<channels>
|
||||
<channel lang="en" xmltv_id="ABCAustralia.au" site_id="5251">ABC Australia</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="6694">ABS-CBN News Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="AdithyaTV.in" site_id="5628">Adithya TV</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5256">AFN</channel> -->
|
||||
<channel lang="en" xmltv_id="AnimalPlanetSoutheastAsia.sg" site_id="5208">Animal Planet</channel>
|
||||
<channel lang="en" xmltv_id="AnimaxAsia.sg" site_id="5342">Animax</channel>
|
||||
<channel lang="en" xmltv_id="AniplusAsia.sg" site_id="5340">ANIPLUS HD</channel>
|
||||
<channel lang="ms" xmltv_id="Asianet.in" site_id="5638">Asianet</channel>
|
||||
<channel lang="ms" xmltv_id="AsianetMovies.in" site_id="5639">Asianet Movies</channel>
|
||||
<channel lang="ms" xmltv_id="AstroPrima.my" site_id="5602">Astro Prima HD</channel>
|
||||
<channel lang="ms" xmltv_id="AstroRia.my" site_id="5608">Astro Ria HD</channel>
|
||||
<channel lang="en" xmltv_id="AXNSingapore.sg" site_id="5304">AXN</channel>
|
||||
<channel lang="en" xmltv_id="BabyTV.uk" site_id="5464">BabyTV</channel>
|
||||
<channel lang="en" xmltv_id="BBCEarthAsia.uk" site_id="6203">BBC Earth</channel>
|
||||
<channel lang="en" xmltv_id="BBCLifestyleAsia.uk" site_id="6255">BBC Lifestyle</channel>
|
||||
<channel lang="en" xmltv_id="BBCWorldNewsAsiaPacific.uk" site_id="6166">BBC World News</channel>
|
||||
<channel lang="en" xmltv_id="beINSports.qa" site_id="6126">beIN SPORTS</channel>
|
||||
<channel lang="en" xmltv_id="beINSports2.qa" site_id="6127">beIN SPORTS 2</channel>
|
||||
<channel lang="en" xmltv_id="beINSports3.qa" site_id="6110">beIN SPORTS 3</channel>
|
||||
<channel lang="en" xmltv_id="beINSports4.qa" site_id="5127">beIN SPORTS 4</channel>
|
||||
<channel lang="en" xmltv_id="beINSports5.qa" site_id="5128">beIN SPORTS 5</channel>
|
||||
<channel lang="en" xmltv_id="BloombergTVAsia.hk" site_id="5171">Bloomberg Television</channel>
|
||||
<channel lang="en" xmltv_id="BoomerangAsia.sg" site_id="5228">Boomerang</channel>
|
||||
<channel lang="zh" xmltv_id="BRTVInternationalChannel.cn" site_id="5537">BRTV International</channel>
|
||||
<channel lang="en" xmltv_id="CartoonNetworkAsia.sg" site_id="5226">Cartoon Network</channel>
|
||||
<channel lang="en" xmltv_id="CBeebiesAsia.uk" site_id="5236">CBeebies</channel>
|
||||
<channel lang="zh" xmltv_id="CCM.hk" site_id="5580">CCM</channel>
|
||||
<channel lang="zh" xmltv_id="CCTVEntertainment.cn" site_id="5534">CCTV Entertainment</channel>
|
||||
<channel lang="zh" xmltv_id="CCTV4Asia.cn" site_id="5555">CCTV-4</channel>
|
||||
<channel lang="zh" xmltv_id="CelestialMovies.hk" site_id="5585">Celestial Movies</channel>
|
||||
<channel lang="en" xmltv_id="CGTN.cn" site_id="5155">CGTN</channel>
|
||||
<channel lang="en" xmltv_id="CGTNDocumentary.cn" site_id="5211">CGTN-Documentary</channel>
|
||||
<channel lang="en" xmltv_id="Channel5.sg" site_id="5002">Ch 5</channel>
|
||||
<channel lang="zh" xmltv_id="Channel8.sg" site_id="5003">Ch 8</channel>
|
||||
<channel lang="zh" xmltv_id="ChannelU.sg" site_id="5007">Ch U</channel>
|
||||
<!-- <channel lang="zh" xmltv_id="???" site_id="5538">China Movie Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="CinemaOneGlobal.ph" site_id="5692">Cinema One Global</channel>
|
||||
<channel lang="en" xmltv_id="CinemaxAsia.sg" site_id="6424">CINEMAX</channel>
|
||||
<channel lang="en" xmltv_id="CitraDrama.id" site_id="5610">Citra Drama</channel>
|
||||
<!-- <channel lang="zh" xmltv_id="???" site_id="6571">CM+</channel> -->
|
||||
<channel lang="en" xmltv_id="CNA.sg" site_id="5006">CNA</channel>
|
||||
<channel lang="en" xmltv_id="CNBCAsia.sg" site_id="5173">CNBC Asia</channel>
|
||||
<channel lang="en" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="5167">CNN International</channel>
|
||||
<channel lang="en" xmltv_id="Colors.in" site_id="5652">Colors</channel>
|
||||
<channel lang="en" xmltv_id="ColorsTamil.in" site_id="5623">Colors Tamil HD</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5125">Cricket Plus</channel> -->
|
||||
<channel lang="en" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="5206">Crime + Investigation</channel>
|
||||
<channel lang="zh" xmltv_id="CTiTV.tw" site_id="5557">CTI Asia</channel>
|
||||
<channel lang="en" xmltv_id="DWEnglish.de" site_id="5161">Deutsche Welle (English)</channel>
|
||||
<channel lang="en" xmltv_id="DiscoveryAsia.sg" site_id="5204">Discovery Asia</channel>
|
||||
<channel lang="en" xmltv_id="DiscoveryChannelSoutheastAsia.sg" site_id="5202">Discovery Channel</channel>
|
||||
<channel lang="en" xmltv_id="DiscoveryScienceSoutheastAsia.sg" site_id="5205">Discovery Science</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5258">DMAX</channel> -->
|
||||
<channel lang="zh" xmltv_id="DragonTVInternational.cn" site_id="5535">Dragon TV Intl</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5618">Drama Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="DreamWorksChannelAsia.us" site_id="5233">DreamWorks</channel>
|
||||
<channel lang="en" xmltv_id="eGGNetwork.my" site_id="5120">eGG Network</channel>
|
||||
<!-- <channel lang="zh" xmltv_id="???" site_id="5501">e-Le</channel> -->
|
||||
<channel lang="zh" xmltv_id="ETTVChina.tw" site_id="5521">ETTV Asia</channel>
|
||||
<channel lang="zh" xmltv_id="ETTVAsiaNews.tw" site_id="5046">ETTV Asia News </channel>
|
||||
<channel lang="en" xmltv_id="EurosportAsia.fr" site_id="6116">EUROSPORT </channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="6119">Fight Sports</channel> -->
|
||||
<channel lang="en" xmltv_id="FoodNetworkAsia.sg" site_id="5252">Food Network</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5165">FOX News Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="France24English.fr" site_id="5041">France 24 (English)</channel>
|
||||
<channel lang="fr" xmltv_id="France24French.fr" site_id="5040">France 24 (French) </channel>
|
||||
<channel lang="zh" xmltv_id="GEM.sg" site_id="5519">GEM</channel>
|
||||
<channel lang="en" xmltv_id="GMALifeTV.ph" site_id="5689">GMA Life TV</channel>
|
||||
<channel lang="en" xmltv_id="GMANewsTV.ph" site_id="5690">GMA News TV</channel>
|
||||
<channel lang="en" xmltv_id="GMAPinoyTV.ph" site_id="5056">GMA Pinoy TV </channel>
|
||||
<channel lang="en" xmltv_id="HBOFamilyAsia.sg" site_id="6422">HBO Family</channel>
|
||||
<channel lang="en" xmltv_id="HBOAsia.sg" site_id="6420">HBO HD</channel>
|
||||
<channel lang="en" xmltv_id="HBOHitsAsia.sg" site_id="6423">HBO Hits</channel>
|
||||
<channel lang="en" xmltv_id="HBOSignatureAsia.sg" site_id="6421">HBO Signature</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5250">HGTV</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5209">HISTORY</channel> -->
|
||||
<channel lang="en" xmltv_id="HITS.sg" site_id="5326">HITS</channel>
|
||||
<channel lang="en" xmltv_id="HITSMovies.sg" site_id="6301">HITS Movies HD </channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5169">HLN</channel> -->
|
||||
<channel lang="en" xmltv_id="HubPremier1.sg" site_id="4102">Hub Premier 1</channel>
|
||||
<channel lang="en" xmltv_id="HubPremier2.sg" site_id="4103">Hub Premier 2</channel>
|
||||
<channel lang="en" xmltv_id="HubPremier3.sg" site_id="4104">Hub Premier 3</channel>
|
||||
<channel lang="en" xmltv_id="HubPremier4.sg" site_id="4105">Hub Premier 4</channel>
|
||||
<channel lang="zh" xmltv_id="HunanTVInternational.cn" site_id="5536">Hunan International</channel>
|
||||
<!-- <channel lang="zh" xmltv_id="???" site_id="5502">Jia Le Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="KBSWorld.kr" site_id="5038">KBS World</channel>
|
||||
<channel lang="zh" xmltv_id="KBSWorld.kr" site_id="5038">KBS World (Mandarin)</channel>
|
||||
<channel lang="en" xmltv_id="KTV.in" site_id="5625">KTV HD</channel>
|
||||
<channel lang="en" xmltv_id="LifetimeAsia.us" site_id="5302">Lifetime</channel>
|
||||
<channel lang="en" xmltv_id="LoveNature.ca" site_id="5213">Love Nature</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5670">maa movies</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="6123">mio Cricket</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="6124">mio Cricket Plus</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5111">mio Sports</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5112">mio Sports 2</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5113">mio Sports 3</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="6350">MTV 90s</channel> -->
|
||||
<channel lang="en" xmltv_id="MTVAsia.sg" site_id="5658">MTV India</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5349">MTV LIVE HD</channel> -->
|
||||
<channel lang="en" xmltv_id="NationalGeographicWildSingapore.sg" site_id="5207">Nat Geo Wild HD</channel>
|
||||
<channel lang="en" xmltv_id="NationalGeographicSingapore.sg" site_id="5201">National Geographic </channel>
|
||||
<channel lang="en" xmltv_id="NDTV24x7.in" site_id="5678">NDTV 24x7</channel>
|
||||
<channel lang="en" xmltv_id="NDTVIndia.in" site_id="5679">NDTV India</channel>
|
||||
<channel lang="en" xmltv_id="NHKWorldJapan.jp" site_id="5157">NHK World - Japan</channel>
|
||||
<channel lang="en" xmltv_id="NHKWorldPremium.jp" site_id="5682">NHK World Premium</channel>
|
||||
<channel lang="en" xmltv_id="NickJrAsia.sg" site_id="5238">Nick Jr.</channel>
|
||||
<channel lang="en" xmltv_id="NickelodeonAsia.sg" site_id="5240">Nickelodeon Asia HD</channel>
|
||||
<channel lang="zh" xmltv_id="nowJelli.hk" site_id="5512">now Jelli</channel>
|
||||
<channel lang="en" xmltv_id="OneTVAsia.sg" site_id="5604">ONE HD (Malay)</channel>
|
||||
<channel lang="zh" xmltv_id="OneTVAsia.sg" site_id="5513">ONE HD (Mandarin)</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5119">Outdoor Channel</channel> -->
|
||||
<channel lang="en" xmltv_id="ParamountNetworkSingapore.sg" site_id="5418">Paramount Network</channel>
|
||||
<channel lang="en" xmltv_id="Pesona.my" site_id="5607">Pesona HD</channel>
|
||||
<channel lang="zh" xmltv_id="PhoenixInfoNewsChannel.hk" site_id="6547">Phoenix InfoNews</channel>
|
||||
<channel lang="en" xmltv_id="PremierSports1Asia.ie" site_id="5118">Premier Sports</channel>
|
||||
<channel lang="en" xmltv_id="ROCKEntertainment.sg" site_id="5318">ROCK Entertainment</channel>
|
||||
<channel lang="en" xmltv_id="ROCKExtreme.sg" site_id="6310">ROCK Extreme</channel>
|
||||
<channel lang="en" xmltv_id="ATNSABTV.ca" site_id="5648">SAB TV</channel>
|
||||
<channel lang="en" xmltv_id="SEAToday.id" site_id="5615">SEA Today</channel>
|
||||
<channel lang="en" xmltv_id="SonyEntertainmentTelevision.in" site_id="5644">SET (HINDI)</channel>
|
||||
<channel lang="en" xmltv_id="SkyNewsInternational.uk" site_id="5151">Sky News HD</channel>
|
||||
<channel lang="en" xmltv_id="SonyMaxSingapore.sg" site_id="5668">SONY MAX</channel>
|
||||
<channel lang="en" xmltv_id="SPOTV.kr" site_id="6114">SPOTV</channel>
|
||||
<channel lang="en" xmltv_id="SPOTV2.kr" site_id="6115">SPOTV 2</channel>
|
||||
<channel lang="en" xmltv_id="StarBharat.in" site_id="5654">Star Bharat</channel>
|
||||
<channel lang="en" xmltv_id="StarGold.in" site_id="5662">STAR Gold</channel>
|
||||
<channel lang="en" xmltv_id="StarMaa.in" site_id="5671">Star Maa</channel>
|
||||
<channel lang="en" xmltv_id="StarPlus.in" site_id="5656">STAR Plus</channel>
|
||||
<channel lang="ta" xmltv_id="SunLife.in" site_id="5626">Sun Life</channel>
|
||||
<channel lang="en" xmltv_id="SunMusic.in" site_id="5627">Sun Music</channel>
|
||||
<channel lang="en" xmltv_id="SunNews.in" site_id="5636">Sun News</channel>
|
||||
<channel lang="en" xmltv_id="SunTV.in" site_id="5622">Sun TV</channel>
|
||||
<channel lang="ms" xmltv_id="Suria.sg" site_id="5004">Suria</channel>
|
||||
<channel lang="en" xmltv_id="TechStorm.sg" site_id="5260">TechStorm</channel>
|
||||
<channel lang="en" xmltv_id="TheFilipinoChannelAsia.us" site_id="5693">The Filipino Channel</channel>
|
||||
<channel lang="en" xmltv_id="TimesNow.in" site_id="5676">Times Now</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5254">TLC</channel> -->
|
||||
<channel lang="en" xmltv_id="TraceSportStars.fr" site_id="5257">TRACE Sports Stars HD</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="5021">Travel Channel HD</channel> -->
|
||||
<channel lang="zh" xmltv_id="Jade.hk" site_id="5511">TVB Jade</channel>
|
||||
<channel lang="zh" xmltv_id="TVBXingHe.hk" site_id="5517">TVB Xing He</channel>
|
||||
<channel lang="zh" xmltv_id="TVBSAsia.tw" site_id="6507">TVBS Asia</channel>
|
||||
<channel lang="zh" xmltv_id="TVBSNews.tw" site_id="6516">TVBS News</channel>
|
||||
<channel lang="en" xmltv_id="tvNAsia.hk" site_id="5619">tvN HD (Malay) </channel>
|
||||
<channel lang="zh" xmltv_id="tvNAsia.hk" site_id="5518">tvN HD (Mandarin)</channel>
|
||||
<channel lang="en" xmltv_id="Vasantham.sg" site_id="5005">Vasantham</channel>
|
||||
<channel lang="en" xmltv_id="VijayTV.in" site_id="5634">Vijay</channel>
|
||||
<channel lang="en" xmltv_id="WarnerTVAsia.us" site_id="5306">Warner TV</channel>
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="4141">World Cup CH01</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="???" site_id="4142">World Cup CH02</channel> -->
|
||||
<channel lang="en" xmltv_id="ZeeTamil.in" site_id="5632">Zee Tamil</channel>
|
||||
<channel lang="en" xmltv_id="ZeeTV.in" site_id="5646">ZEE TV</channel>
|
||||
</channels>
|
||||
</site>
|
||||
@@ -0,0 +1,43 @@
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
module.exports = {
|
||||
site: 'singtel.com',
|
||||
days: 2,
|
||||
request: {
|
||||
cache: {
|
||||
ttl: 60 * 60 * 1000 // 1 hour
|
||||
}
|
||||
},
|
||||
url({ date }) {
|
||||
return `https://www.singtel.com/etc/singtel/public/tv/epg-parsed-data/${date.format('DDMMYYYY')}.json`
|
||||
},
|
||||
parser({ content, channel }) {
|
||||
let programs = []
|
||||
const items = parseItems(content, channel)
|
||||
items.forEach(item => {
|
||||
const start = dayjs.utc(item.startDateTime)
|
||||
const stop = start.add(item.duration, 's')
|
||||
programs.push({
|
||||
title: item.program.title,
|
||||
category: item.program.subCategory,
|
||||
description: item.program.description,
|
||||
start,
|
||||
stop
|
||||
})
|
||||
})
|
||||
|
||||
return programs
|
||||
}
|
||||
}
|
||||
|
||||
function parseItems(content, channel) {
|
||||
try {
|
||||
const data = JSON.parse(content)
|
||||
return data && data[channel.site_id] ? data[channel.site_id] : []
|
||||
} catch (err) {
|
||||
return []
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
// npm run channels:parse -- --config=./sites/singtel.com/singtel.com.config.js --output=./sites/singtel.com/singtel.com.channels.xml
|
||||
// npx epg-grabber --config=sites/singtel.com/singtel.com.config.js --channels=sites/singtel.com/singtel.com.channels.xml --output=guide.xml --days=2
|
||||
|
||||
const { parser, url, request } = require('./singtel.com.config.js')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
jest.mock('axios')
|
||||
|
||||
const date = dayjs.utc('2023-01-29', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '5418',
|
||||
xmltv_id: 'ParamountNetworkSingapore.sg'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://www.singtel.com/etc/singtel/public/tv/epg-parsed-data/29012023.json'
|
||||
)
|
||||
})
|
||||
|
||||
|
||||
it('can parse response', () => {
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
|
||||
let results = parser({ content, channel})
|
||||
results = results.map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(results.length).toBe(23)
|
||||
expect(results[0]).toMatchObject({
|
||||
start: '2023-01-29T00:00:00.000Z',
|
||||
stop: '2023-01-29T01:30:00.000Z',
|
||||
title: 'Hip Hop Family Christmas Wedding',
|
||||
description:
|
||||
`Hip Hop's most famous family is back, and this time Christmas wedding bells are ringing! Jessica and Jayson are getting ready to say their "I do's".`,
|
||||
category: 'Specials'
|
||||
})
|
||||
|
||||
expect(results[10]).toMatchObject({
|
||||
start: '2023-01-29T09:00:00.000Z',
|
||||
stop: '2023-01-29T09:30:00.000Z',
|
||||
title: 'The Daily Show',
|
||||
description:
|
||||
"The Daily Show correspondents tackle the biggest stories in news, politics and pop culture.",
|
||||
category: 'English Entertainment'
|
||||
})
|
||||
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/no_content.html'))
|
||||
const results = parser({ content, channel })
|
||||
|
||||
expect(results).toMatchObject([])
|
||||
})
|
||||
Reference in new issue
Block a user