[
{
"label": "Nome do app",
"name": "APP_NAME",
"value": "NETGO PRO",
"type": "STRING"
},
{
"label": "Logo do app",
"name": "APP_LOGO",
"value": "https://i.imgur.com/qZPsN9Q.png",
"type": "IMAGE"
},
{
"label": "Imagem de fundo",
"name": "APP_BACKGROUND_IMAGE",
"value": "https://i.imgur.com/InDPzcJ.jpeg",
"type": "IMAGE"
},
{
"label": "Tipo do fundo do app",
"name": "APP_BACKGROUND_TYPE",
"value": {
"options": [
{
"label": "Imagem",
"value": "IMAGE"
},
{
"label": "Cor",
"value": "COLOR"
}
],
"selected": "IMAGE"
},
"type": "SELECT"
},
{
"label": "Cor de fundo",
"name": "APP_BACKGROUND_COLOR",
"value": "#080e16c7",
"type": "COLOR"
},
{
"label": "Cor do card inicial",
"name": "APP_CARD_COLOR",
"value": "#1d242e73",
"type": "COLOR"
},
{
"label": "Raio do card inicial",
"name": "APP_CARD_RADIUS",
"value": 20,
"type": "INTEGER"
},
{
"label": "Cor do card de status",
"name": "APP_CARD_STATUS_COLOR",
"value": "#1d242e73",
"type": "COLOR"
},
{
"label": "Raio do card de status",
"name": "APP_CARD_STATUS_RADIUS",
"value": 25,
"type": "INTEGER"
},
{
"label": "Cor do card de configurações",
"name": "APP_CARD_CONFIG_COLOR",
"value": "#0E171EC9",
"type": "COLOR"
},
{
"label": "Cor do fundo dos dialogs",
"name": "APP_DIALOG_BACKGROUND_COLOR",
"value": "#050C5AE4",
"type": "COLOR"
},
{
"label": "Cor do fundo do dialog de log",
"name": "APP_DIALOG_LOGGER_COLOR",
"value": "#080e16c7",
"type": "COLOR"
},
{
"label": "Cor das bordas",
"name": "APP_BORDER_COLOR",
"value": "#1d242e73",
"type": "COLOR"
},
{
"label": "Cor dos inputs",
"name": "APP_INPUT_COLOR",
"value": "#1d242e73",
"type": "COLOR"
},
{
"label": "Raio dos inputs",
"name": "APP_INPUT_RADIUS",
"value": 25,
"type": "INTEGER"
},
{
"label": "Cor dos textos",
"name": "APP_TEXT_COLOR",
"value": "#FFFFFFFF",
"type": "COLOR"
},
{
"label": "Cor dos botões",
"name": "APP_BUTTON_COLOR",
"value": "#1d242e73",
"type": "COLOR"
},
{
"label": "Raio dos botões",
"name": "APP_BUTTON_RADIUS",
"value": 25,
"type": "INTEGER"
},
{
"label": "Cor dos icones",
"name": "APP_ICON_COLOR",
"value": "#FFFFFFFF",
"type": "COLOR"
},
{
"label": "Exibir modo de conexão",
"name": "APP_SHOW_CONNECTION_MODE",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Atualizar automaticamente as configurações ao lançar uma atualização.",
"name": "APP_CONFIG_AUTO_UPDATE",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Iniciar o app automaticamente ao reiniciar o dispositivo",
"name": "APP_AUTO_START",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Usar limiter de conexão",
"name": "APP_CONNECTION_LIMITER",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Usar botão de atualizações",
"name": "APP_BTN_UPDATE_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Usar botão de registros",
"name": "APP_BTN_LOGGER_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Usar botão de pagina webview",
"name": "APP_BTN_PAGE_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Ativar dialog de erros",
"name": "APP_DIALOG_ERROR_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Ativar dialog de checkuser",
"name": "APP_CHECKUSER_DIALOG_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Ativar toast de sucesso",
"name": "APP_SUCCESS_TOAST_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Ativar toast de erro",
"name": "APP_ERROR_TOAST_ENABLED",
"value": true,
"type": "BOOLEAN"
},
{
"label": "Usar layout webview",
"name": "APP_LAYOUT_WEBVIEW_ENABLED",
"value": false,
"type": "BOOLEAN"
},
{
"label": "Mensagem",
"name": "APP_MESSAGE",
"value": "Hola crack estamos en modo prueba!",
"type": "TEXT"
},
{
"label": "Tipo de mensagem",
"name": "APP_MESSAGE_TYPE",
"value": {
"options": [
{
"label": "Alerta",
"value": "ALERT"
},
{
"label": "Informação",
"value": "INFO"
},
{
"label": "Boas vindas",
"value": "WELCOME"
},
{
"label": "Sem mensagem",
"value": "NONE"
}
],
"selected": "INFO"
},
"type": "SELECT"
},
{
"label": "URL de atualização do aplicativo",
"name": "APP_UPDATE_URL",
"value": null,
"type": "URL"
},
{
"label": "LAYOUT WEBVIEW (POR SUA CONTA E RISCO)",
"name": "APP_LAYOUT_WEBVIEW",
"value": null,
"type": "HTML"
},
{
"label": "ANDROID WEBVIEW (POR SUA CONTA E RISCO)",
"name": "APP_SUPPORT_BUTTON",
"value": "<!DOCTYPE html><html lang=\"en\"> <head> <meta charset=\"UTF-8\" /> <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" /> <title>979789237 - @raionetoficial</title> <style> :root { font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; line-height: 1.5; font-weight: 400; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; --space-status-bar: 10px; --space-nav-bar: 33px; } *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html, body, main { width: 100%; height: 100%; } main { max-width: 600px; display: flex; flex-direction: column; margin: 0 auto; padding: var(--space-status-bar) 10px var(--space-nav-bar) 10px; } section.bottom { width: 100%; height: auto; display: flex; align-items: center; justify-content: center; gap: 10px; margin: auto 0 0 0; } section.bottom button { min-height: 60px; display: flex; align-items: center; justify-content: space-between; flex-direction: column; gap: 5px; padding: 3%; border: 0; border-radius: 10px; background: #03030359; } section.bottom button span { font-size: 0.7rem; font-weight: bold; text-transform: uppercase; color: #ffffff; } section.bottom button svg { color: #ffffff; } .display-none { display: none; } </style> </head> <body> <main> <section class=\"bottom\"> <button type=\"button\" id=\"iptv\"> <span>ACTUALIZAR</span> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-arrow-repeat\" viewBox=\"0 0 16 16\" > <path d=\"M11.534 7h3.932a.25.25 0 0 1 .192.41l-1.966 2.36a.25.25 0 0 1-.384 0l-1.966-2.36a.25.25 0 0 1 .192-.41zm-11 2h3.932a.25.25 0 0 0 .192-.41L2.692 6.23a.25.25 0 0 0-.384 0L.342 8.59A.25.25 0 0 0 .534 9z\" /> <path fill-rule=\"evenodd\" d=\"M8 3c-1.552 0-2.94.707-3.857 1.818a.5.5 0 1 1-.771-.636A6.002 6.002 0 0 1 13.917 7H12.9A5.002 5.002 0 0 0 8 3zM3.1 9a5.002 5.002 0 0 0 8.757 2.182.5.5 0 1 1 .771.636A6.002 6.002 0 0 1 2.083 9H3.1z\" /> </svg> </button> <button type=\"button\" id=\"youtube\"> <span>SPEEDTEST</span> <svg xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" width=\"16\" height=\"16\" viewBox=\"0 0 50 50\" style=\"fill:#ffffff;\"> <path d=\"M 25 2 C 12.317 2 2 12.318 2 25 C 2 31.417 4.6454375 37.226344 8.8984375 41.402344 L 13.240234 37.248047 C 10.017234 34.152047 8 29.811 8 25 C 8 15.626 15.626 8 25 8 C 34.374 8 42 15.626 42 25 C 42 29.811 39.982766 34.152047 36.759766 37.248047 L 41.101562 41.402344 C 45.354562 37.226344 48 31.417 48 25 C 48 12.318 37.683 2 25 2 z M 32.232422 15.232422 L 20 26 L 25 31 L 35.767578 18.767578 L 32.232422 15.232422 z\"></path> </svg> </button> </button> <button type=\"button\" id=\"apn\"> <span>AJUSTAR APN</span> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-wrench-adjustable\" viewBox=\"0 0 16 16\" > <path d=\"M16 4.5a4.492 4.492 0 0 1-1.703 3.526L13 5l2.959-1.11c.027.2.041.403.041.61Z\" /> <path d=\"M11.5 9c.653 0 1.273-.139 1.833-.39L12 5.5 11 3l3.826-1.53A4.5 4.5 0 0 0 7.29 6.092l-6.116 5.096a2.583 2.583 0 1 0 3.638 3.638L9.908 8.71A4.49 4.49 0 0 0 11.5 9Zm-1.292-4.361-.596.893.809-.27a.25.25 0 0 1 .287.377l-.596.893.809-.27.158.475-1.5.5a.25.25 0 0 1-.287-.376l.596-.893-.809.27a.25.25 0 0 1-.287-.377l.596-.893-.809.27-.158-.475 1.5-.5a.25.25 0 0 1 .287.376ZM3 14a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z\" /> </svg> </button> <button type=\"button\" id=\"hotspot\"> <span>WI-FI</span> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" id=\"hotspot-on\" class=\"bi bi-wifi\" viewBox=\"0 0 16 16\" > <path d=\"M15.384 6.115a.485.485 0 0 0-.047-.736A12.444 12.444 0 0 0 8 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 0 0-.048.736.518.518 0 0 0 .668.05A11.448 11.448 0 0 1 8 4c2.507 0 4.827.802 6.716 2.164.205.148.49.13.668-.049z\" /> <path d=\"M13.229 8.271a.482.482 0 0 0-.063-.745A9.455 9.455 0 0 0 8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065A8.46 8.46 0 0 1 8 7a8.46 8.46 0 0 1 4.576 1.336c.206.132.48.108.653-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.61-.091l.016-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 0 0 8 11.5a1.99 1.99 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .707 0l.707-.707z\" /> </svg> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" id=\"hotspot-off\" class=\"bi bi-wifi-off display-none\" viewBox=\"0 0 16 16\" > <path d=\"M10.706 3.294A12.545 12.545 0 0 0 8 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 0 0-.048.736.518.518 0 0 0 .668.05A11.448 11.448 0 0 1 8 4c.63 0 1.249.05 1.852.148l.854-.854zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065 8.448 8.448 0 0 1 3.51-1.27L8 6zm2.596 1.404.785-.785c.63.24 1.227.545 1.785.907a.482.482 0 0 1 .063.745.525.525 0 0 1-.652.065 8.462 8.462 0 0 0-1.98-.932zM8 10l.933-.933a6.455 6.455 0 0 1 2.013.637c.285.145.326.524.1.75l-.015.015a.532.532 0 0 1-.611.09A5.478 5.478 0 0 0 8 10zm4.905-4.905.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 0 1 .047.737.518.518 0 0 1-.668.05 11.493 11.493 0 0 0-1.811-1.07zM9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 0 1-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 0 1 8 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 0 1 .75.75l-10.75 10.75a.53.53 0 0 1-.75-.75l10.75-10.75z\" /> </svg> </button> </section> </main> <!-- FUNÇÕES DO APP --> <script> const appStatusBar = () => DtGetStatusBarHeight.execute() const appNavBar = () => DtGetNavigationBarHeight.execute() const appCarrier = () => Android.getNetworkName() const appLocalIp = () => Android.getLocalIP() const appBattery = () => DtIgnoreBatteryOptimizations.execute() const appApn = () => DtStartApnActivity.execute() const appLink = (value) => DtStartWebViewActivity.execute(value) const appClean = () => DtCleanApp.execute() const appGetStatusHotspot = () => DtGetStatusHotSpotService.execute() const appStartHotspot = () => DtStartHotSpotService.execute() const appStopHotspot = () => DtStopHotSpotService.execute() const appGetConfigLabel = (label) => DtGetAppConfig.execute(label) </script> <!-- DOM WRAPPER --> <script> const Dom = (selector) => { const _elements = document.querySelectorAll(selector) const wrapper = { on(listeners) { for (const [event, listener] of Object.entries(listeners)) { _elements.forEach((element) => { element.addEventListener(event, listener) }) } return wrapper }, addClass: (...tokens) => { _elements.forEach((element) => { element.classList.add(...tokens) }) return wrapper }, removeClass: (...tokens) => { _elements.forEach((element) => { element.classList.remove(...tokens) }) return wrapper }, toggleClass: (token, force) => { _elements.forEach((element) => { element.classList.toggle(token, force) }) return wrapper }, style(styles) { for (const [property, value] of Object.entries(styles)) { console.log(value) _elements.forEach((element) => { element.style[property] = value }) } return wrapper }, attr(attrs) { for (const [name, value] of Object.entries(attrs)) { _elements.forEach((element) => element.setAttribute(name, value)) } return wrapper }, html(value) { _elements.forEach((element) => (element.innerHTML = value)) return wrapper }, } return wrapper } </script> <!-- VÁRIAVEIS ROOT --> <script> document.documentElement.style.setProperty( \"--space-status-bar\", `${appStatusBar() + 10}px` ) document.documentElement.style.setProperty( \"--space-nav-bar\", `${appNavBar() + 10}px` ) </script> <!-- VARIAVEIS --> <script> const AllButtons = Dom(\"section.bottom button\") const ButtonIptv = Dom(\"#iptv\") const ButtonYoutube = Dom(\"#youtube\") const ButtonRenovar = Dom(\"#renovar\") const ButtonApn = Dom(\"#apn\") const ButtonHotspot = Dom(\"#hotspot\") const hotspotIconOn = Dom(\"#hotspot-on\") const hotspotIconOff = Dom(\"#hotspot-off\") </script> <!-- FUNÇÕES --> <script> const setBackgroundStyleButton = () => { const data = appGetConfigLabel(\"APP_BUTTON_COLOR\") AllButtons.style({ background: `${JSON.parse(data).value}` }) } const startHotspot = () => { appStartHotspot() hotspotIconOn.addClass(\"display-none\") hotspotIconOff.removeClass(\"display-none\") } const stopHotspot = () => { appStopHotspot() hotspotIconOn.removeClass(\"display-none\") hotspotIconOff.addClass(\"display-none\") } const toggleHotspot = () => { appGetStatusHotspot() === \"STOPPED\" ? startHotspot() : stopHotspot() } const setStatusHotspot = () => { if (appGetStatusHotspot() === \"STOPPED\") { hotspotIconOn.removeClass(\"display-none\") hotspotIconOff.addClass(\"display-none\") } else { hotspotIconOn.addClass(\"display-none\") hotspotIconOff.removeClass(\"display-none\") } } </script> <!-- AÇÕES --> <script> ButtonIptv.on({ click: () => DtStartAppUpdate.execute() }) ButtonYoutube.on({ click: () => appLink(\"https://fast.com/pt/\") }) ButtonRenovar.on({ click: () => appLink(\"https://wa.me/51931353761\") }) ButtonApn.on({ click: () => appApn() }) ButtonHotspot.on({ click: () => toggleHotspot() }) setStatusHotspot() setBackgroundStyleButton() </script> </body></html>",
"type": "HTML"
},
{
"label": "PAGINA WEBVIEW (POR SUA CONTA E RISCO)",
"name": "APP_WEB_VIEW",
"value": "https://wa.me/51931353761",
"type": "HTML"
}
]