Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ea44b0d15d | |||
| ed0047778d | |||
| f289bf210c | |||
| 407dc2f819 | |||
| 2417c6f576 | |||
| fff1fc2ab2 | |||
| a2f3eb9c96 |
@@ -9,11 +9,11 @@ android {
|
|||||||
compileSdk 33
|
compileSdk 33
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "me.capcom.smsgateway"
|
applicationId "pt.whatsms.gateway"
|
||||||
minSdk 21
|
minSdk 21
|
||||||
targetSdk 33
|
targetSdk 33
|
||||||
versionCode 1
|
versionCode 11
|
||||||
versionName "1.0.0"
|
versionName "3.1.0-hardcode"
|
||||||
|
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
|
|
||||||
|
|||||||
@@ -4,12 +4,13 @@
|
|||||||
|
|
||||||
<uses-feature
|
<uses-feature
|
||||||
android:name="android.hardware.telephony"
|
android:name="android.hardware.telephony"
|
||||||
android:required="true" />
|
android:required="false" />
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||||
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
|
||||||
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION" />
|
|
||||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||||
<uses-permission android:name="android.permission.READ_SMS" />
|
<uses-permission android:name="android.permission.READ_SMS" />
|
||||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||||||
|
|||||||
@@ -33,10 +33,14 @@ class GatewaySettings(
|
|||||||
val password: String?
|
val password: String?
|
||||||
get() = registrationInfo?.password
|
get() = registrationInfo?.password
|
||||||
|
|
||||||
|
// WhatSMS fork: hardcoded server. Campo de URL removido do UI.
|
||||||
val serverUrl: String
|
val serverUrl: String
|
||||||
get() = storage.get<String?>(CLOUD_URL) ?: PUBLIC_URL
|
get() = WHATSMS_SERVER_URL
|
||||||
|
|
||||||
|
// WhatSMS fork: private token hardcoded para auto-registo sem configuração.
|
||||||
|
// Token rotado periodicamente via rebuild do APK.
|
||||||
val privateToken: String?
|
val privateToken: String?
|
||||||
get() = storage.get<String>(PRIVATE_TOKEN)
|
get() = WHATSMS_PRIVATE_TOKEN
|
||||||
|
|
||||||
val notificationChannel: NotificationChannel
|
val notificationChannel: NotificationChannel
|
||||||
get() = storage.get<NotificationChannel>(NOTIFICATION_CHANNEL) ?: NotificationChannel.AUTO
|
get() = storage.get<NotificationChannel>(NOTIFICATION_CHANNEL) ?: NotificationChannel.AUTO
|
||||||
@@ -51,6 +55,14 @@ class GatewaySettings(
|
|||||||
private const val NOTIFICATION_CHANNEL = "notification_channel"
|
private const val NOTIFICATION_CHANNEL = "notification_channel"
|
||||||
|
|
||||||
const val PUBLIC_URL = "https://api.sms-gate.app/mobile/v1"
|
const val PUBLIC_URL = "https://api.sms-gate.app/mobile/v1"
|
||||||
|
|
||||||
|
// WhatSMS fork: server capcom6 privado da Descomplicar.
|
||||||
|
const val WHATSMS_SERVER_URL = "https://smsgw.whatsms.pt/api/mobile/v1"
|
||||||
|
|
||||||
|
// WhatSMS fork: private_token do GATEWAY_TOKEN config do server.
|
||||||
|
// Permite auto-registo silencioso de novos devices.
|
||||||
|
const val WHATSMS_PRIVATE_TOKEN =
|
||||||
|
"a6c877b0369bd68d77c1760a88ec1996c6b672353f4b6344"
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun export(): Map<String, *> {
|
override fun export(): Map<String, *> {
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
|
||||||
</adaptive-icon>
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
|
||||||
</adaptive-icon>
|
|
||||||
|
After Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 7.4 KiB |
|
After Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 4.5 KiB |
|
After Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 6.4 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 7.2 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 17 KiB |
@@ -0,0 +1,145 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<!-- Tradução PT-PT para WhatSMS Gateway (fork de capcom6/android-sms-gateway) -->
|
||||||
|
<string name="api_url_private_token_credentials_etc">URL da API, token privado, credenciais, etc.</string>
|
||||||
|
<string name="api_url">URL da API</string>
|
||||||
|
<string name="app_version_build">Versão da aplicação (build)</string>
|
||||||
|
<string name="battery_optimization_already_disabled">Optimização de bateria já desactivada</string>
|
||||||
|
<string name="battery_optimization_is_not_supported_on_this_device">Optimização de bateria não é suportada neste dispositivo</string>
|
||||||
|
<string name="battery_optimization">Optimização de bateria</string>
|
||||||
|
<string name="btn_cancel">Cancelar</string>
|
||||||
|
<string name="btn_continue">Continuar</string>
|
||||||
|
<string name="by_code">Por código</string>
|
||||||
|
<string name="can_affect_battery_life">pode afectar a duração da bateria</string>
|
||||||
|
<string name="click_continue_to_create_an_account_no_personal_information_is_required_nby_continuing_you_agree_to_our_privacy_policy_at_https_docs_sms_gate_app_privacy_policy">Toca em Continuar para criar uma conta. Nenhuma informação pessoal é necessária.\nAo continuar, concordas com a Política de Privacidade em https://docs.sms-gate.app/privacy/policy/</string>
|
||||||
|
<string name="cloud_server_dotdotdot">Servidor na nuvem…</string>
|
||||||
|
<string name="cloud_server">Servidor na nuvem</string>
|
||||||
|
<string name="cloud">Nuvem</string>
|
||||||
|
<string name="copied_to_clipboard">Copiado</string>
|
||||||
|
<string name="credentials">Credenciais</string>
|
||||||
|
<string name="delays_limits_etc">Atrasos, limites, etc.</string>
|
||||||
|
<string name="delays_seconds">Atrasos (segundos)</string>
|
||||||
|
<string name="delete_after_days">Apagar após (dias)</string>
|
||||||
|
<string name="device_id">ID do dispositivo</string>
|
||||||
|
<string name="device">Dispositivo</string>
|
||||||
|
<string name="disabled">Desactivado</string>
|
||||||
|
<string name="enabled">Activo</string>
|
||||||
|
<string name="encryption">Encriptação</string>
|
||||||
|
<string name="failed_to_change_password">Falha ao alterar a password: %1$s</string>
|
||||||
|
<string name="failed_to_get_login_code">Falha ao obter código de início de sessão: %1$s</string>
|
||||||
|
<string name="failed_to_register_device">Falha ao registar dispositivo: %1$s</string>
|
||||||
|
<string name="id_copied">ID do webhook copiado</string>
|
||||||
|
<string name="if_sim_number_is_not_specified_use">Se o número do SIM não for indicado, usar</string>
|
||||||
|
<string name="ignored_for_public_server">Ignorado em servidor público</string>
|
||||||
|
<string name="information">Informação</string>
|
||||||
|
<string name="internet_connection_available">Ligação à Internet: disponível</string>
|
||||||
|
<string name="internet_connection_unavailable">Ligação à Internet: indisponível</string>
|
||||||
|
<string name="interval_seconds">Intervalo (segundos)</string>
|
||||||
|
<string name="invalid_url">URL inválido</string>
|
||||||
|
<string name="is_not_a_valid_port_must_be_between_1024_and_65535">%1$s não é uma porta válida. Tem de estar entre 1024 e 65535.</string>
|
||||||
|
<string name="label_password">Password</string>
|
||||||
|
<string name="label_username">Utilizador</string>
|
||||||
|
<string name="limits">Limites</string>
|
||||||
|
<string name="list_of_last_50_log_entries">Lista das últimas 50 entradas de registo</string>
|
||||||
|
<string name="listening_to_the_server_events">A escutar eventos do servidor…</string>
|
||||||
|
<string name="local_address">Endereço local</string>
|
||||||
|
<string name="local_server_dotdotdot">Servidor local…</string>
|
||||||
|
<string name="local_sms_gateway_notifications">Notificações do WhatSMS Gateway local</string>
|
||||||
|
<string name="local">Local</string>
|
||||||
|
<string name="login_code_expires">Código de início de sessão, expira %1$s</string>
|
||||||
|
<string name="login_code">Código de início de sessão</string>
|
||||||
|
<string name="logs">Registos</string>
|
||||||
|
<string name="maximum">Máximo</string>
|
||||||
|
<string name="messages_count">Contagem de mensagens</string>
|
||||||
|
<string name="messages_header">Mensagens</string>
|
||||||
|
<string name="messages">Mensagens…</string>
|
||||||
|
<string name="minimum">Mínimo</string>
|
||||||
|
<string name="more_settings">Mais definições…</string>
|
||||||
|
<string name="n_a">n/d</string>
|
||||||
|
<string name="new_sms_received_webhooks_registered">Webhooks de SMS recebido registados</string>
|
||||||
|
<string name="no_webhooks_found">Nenhum webhook configurado</string>
|
||||||
|
<string name="not_registered">não registado</string>
|
||||||
|
<string name="not_set">Não definido</string>
|
||||||
|
<string name="notification_title">WhatSMS Gateway</string>
|
||||||
|
<string name="notification_channel">Canal de notificação</string>
|
||||||
|
<string name="notifications">Notificações</string>
|
||||||
|
<string name="online_status_at_the_cost_of_battery_life">Estado online à custa da duração da bateria</string>
|
||||||
|
<string name="passphrase">Frase secreta</string>
|
||||||
|
<string name="password_changed_successfully">Password alterada com sucesso</string>
|
||||||
|
<string name="password_must_be_at_least_14_characters">A password tem de ter pelo menos 14 caracteres</string>
|
||||||
|
<string name="password_must_be_at_least_8_characters">A password tem de ter pelo menos 8 caracteres</string>
|
||||||
|
<string name="password">Password</string>
|
||||||
|
<string name="period">Período</string>
|
||||||
|
<string name="ping_service_is_active">Serviço de ping activo</string>
|
||||||
|
<string name="ping">Ping</string>
|
||||||
|
<string name="please_enter_one_time_code_displayed_on_already_registered_device">Introduz o código único mostrado no dispositivo já registado</string>
|
||||||
|
<string name="port_credentials_etc">Porta, credenciais, etc.</string>
|
||||||
|
<string name="port">Porta</string>
|
||||||
|
<string name="private_token">Token privado</string>
|
||||||
|
<string name="public_address">Endereço público</string>
|
||||||
|
<string name="require_internet_connection">Requer ligação à Internet</string>
|
||||||
|
<string name="restart_required_to_apply_changes">É necessário reiniciar para aplicar as alterações</string>
|
||||||
|
<string name="retries_signing_etc">Tentativas, assinatura, etc.</string>
|
||||||
|
<string name="retry_count">Número de tentativas</string>
|
||||||
|
<string name="send_messages_notification">A enviar mensagens…</string>
|
||||||
|
<string name="sending_webhook">A enviar webhook…</string>
|
||||||
|
<string name="processing_webhook_queue">A processar fila de webhooks…</string>
|
||||||
|
<string name="server_address">Endereço do servidor</string>
|
||||||
|
<string name="server">Servidor</string>
|
||||||
|
<string name="set_maximum_value_to_activate">Define o valor máximo para activar</string>
|
||||||
|
<string name="settings_changed_via_api_restart_the_app_to_apply_changes">Definições alteradas via API. Reinicia a aplicação para aplicar.</string>
|
||||||
|
<string name="settings_local_address_not_found">Indisponível</string>
|
||||||
|
<string name="settings_local_server">Servidor local</string>
|
||||||
|
<string name="settings_offline">Offline</string>
|
||||||
|
<string name="settings_online">Online</string>
|
||||||
|
<string name="settings_public_address_not_found">Indisponível</string>
|
||||||
|
<string name="settings_start_on_boot">Iniciar no arranque</string>
|
||||||
|
<string name="sign_in">Iniciar sessão</string>
|
||||||
|
<string name="sign_up">Criar conta</string>
|
||||||
|
<string name="signing_key">Chave de assinatura</string>
|
||||||
|
<string name="sms_gateway_is_running_on_port">WhatSMS Gateway a correr na porta %1$d</string>
|
||||||
|
<string name="sms_gateway">WhatSMS Gateway</string>
|
||||||
|
<string name="success_long_press_to_copy">Sucesso, pressiona longamente para copiar</string>
|
||||||
|
<string name="system">Sistema</string>
|
||||||
|
<string name="tab_text_home">Início</string>
|
||||||
|
<string name="tab_text_messages">MENSAGENS</string>
|
||||||
|
<string name="tab_text_settings">DEFINIÇÕES</string>
|
||||||
|
<string name="the_webhook_request_will_wait_for_an_internet_connection">O pedido do webhook aguardará por ligação à Internet</string>
|
||||||
|
<string name="to_add_a_device_to_an_existing_account_please_fill_in_the_credentials_below">Para adicionar um dispositivo a uma conta existente, introduz as credenciais abaixo.</string>
|
||||||
|
<string name="to_apply_the_changes_restart_the_app_using_the_button_below">Para aplicar as alterações, reinicia a aplicação com o botão abaixo.</string>
|
||||||
|
<string name="use_empty_to_disable">Deixa vazio para desactivar</string>
|
||||||
|
<string name="use_this_code_to_sign_in_on_another_device">Usa este código para iniciar sessão noutro dispositivo</string>
|
||||||
|
<string name="username_must_be_at_least_3_characters">O nome de utilizador tem de ter pelo menos 3 caracteres</string>
|
||||||
|
<string name="username">Utilizador</string>
|
||||||
|
<string name="view">Ver</string>
|
||||||
|
<string name="webhook_list_summary">Ver webhooks registados</string>
|
||||||
|
<string name="webhook_list_title">Webhooks registados</string>
|
||||||
|
<string name="webhooks_dotdotdot">Webhooks…</string>
|
||||||
|
<string name="webhooks">Webhooks</string>
|
||||||
|
<plurals name="review_incoming_sms_webhooks">
|
||||||
|
<item quantity="one">Tens %1$d webhook de SMS recebido registado. Revê-o para evitar riscos de segurança.</item>
|
||||||
|
<item quantity="other">Tens %1$d webhooks de SMS recebido registados. Revê-os para evitar riscos de segurança.</item>
|
||||||
|
</plurals>
|
||||||
|
<string name="processing">A processar</string>
|
||||||
|
<string name="processing_order_title">Ordem de processamento</string>
|
||||||
|
<string name="queue_status">📊 Estado da fila</string>
|
||||||
|
<string name="total_messages">Total: %1$d</string>
|
||||||
|
<string name="pending_messages">Pendentes: %1$d</string>
|
||||||
|
<string name="sent_messages">Enviadas: %1$d</string>
|
||||||
|
<string name="delivered_messages">Entregues: %1$d</string>
|
||||||
|
<string name="failed_messages">Falhadas: %1$d</string>
|
||||||
|
<string name="incoming_messages">RECEBIDAS</string>
|
||||||
|
<string name="incoming_messages_status">📥 Estado das recebidas</string>
|
||||||
|
<string name="incoming_sms_messages">SMS: %1$d</string>
|
||||||
|
<string name="incoming_data_messages">SMS de dados: %1$d</string>
|
||||||
|
<string name="incoming_mms_messages">MMS: %1$d</string>
|
||||||
|
<string name="jwt_default_ttl_seconds">TTL padrão JWT (segundos)</string>
|
||||||
|
<string name="jwt_ttl_must_be_between_1_second_and_365_days">TTL do JWT tem de estar entre 1 segundo e 365 dias</string>
|
||||||
|
<string name="jwt_regenerate_secret">Regenerar segredo JWT</string>
|
||||||
|
<string name="jwt_regenerate_secret_summary">Invalida imediatamente todas as assinaturas JWT existentes.</string>
|
||||||
|
<string name="jwt_secret_regenerated">Segredo JWT regenerado</string>
|
||||||
|
<string name="confirm_regenerate_jwt_secret">Tens a certeza que queres regenerar o segredo JWT? Isto invalidará imediatamente todas as assinaturas JWT existentes.</string>
|
||||||
|
<string name="confirm">Confirmar</string>
|
||||||
|
<string name="cancel">Cancelar</string>
|
||||||
|
<string name="outgoing_messages">ENVIADAS</string>
|
||||||
|
</resources>
|
||||||
@@ -8,4 +8,6 @@
|
|||||||
<color name="black">#FF000000</color>
|
<color name="black">#FF000000</color>
|
||||||
<color name="white">#FFFFFFFF</color>
|
<color name="white">#FFFFFFFF</color>
|
||||||
<color name="progressBarOverlay">#33FFFFFF</color>
|
<color name="progressBarOverlay">#33FFFFFF</color>
|
||||||
|
<!-- WhatSMS brand colors -->
|
||||||
|
<color name="primary">#25D366</color>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<color name="ic_launcher_background">#AEADAB</color>
|
<color name="ic_launcher_background">#25D366</color>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
<string name="address_is">%1$s</string>
|
<string name="address_is">%1$s</string>
|
||||||
<string name="api_url_private_token_credentials_etc">API URL, private token, credentials, etc.</string>
|
<string name="api_url_private_token_credentials_etc">API URL, private token, credentials, etc.</string>
|
||||||
<string name="api_url">API URL</string>
|
<string name="api_url">API URL</string>
|
||||||
<string name="app_name" translatable="false">SMSGate</string>
|
<string name="app_name" translatable="false">WhatSMS Gateway</string>
|
||||||
<string name="app_version_build">App version (build)</string>
|
<string name="app_version_build">App version (build)</string>
|
||||||
<string name="battery_optimization_already_disabled">Battery optimization already disabled</string>
|
<string name="battery_optimization_already_disabled">Battery optimization already disabled</string>
|
||||||
<string name="battery_optimization_is_not_supported_on_this_device">Battery optimization is not
|
<string name="battery_optimization_is_not_supported_on_this_device">Battery optimization is not
|
||||||
|
|||||||