veusat
Operator Login
{{ viewTitle }}
API Online API Offline
Total Clients

{{ stats.total_clients }}

Total Devices

{{ stats.total_devices }}

Active Subs

{{ stats.active_subscriptions }}

Expired Subs

{{ stats.expired_subscriptions }}

Zgemma H8.2H+: {{ deviceTypeCounts['Zgemma H8.2H+ (VEUSAT Z+ Full HD)'] }} MIRA-X: {{ deviceTypeCounts['MIRA-X'] }} Unassigned: {{ deviceTypeCounts['Unassigned'] }}
Account {{clientSortAsc ? '▲' : '▼'}} Name {{clientSortAsc ? '▲' : '▼'}} Phone {{clientSortAsc ? '▲' : '▼'}} Expiry Device Type Devices (S/N) Actions
VA {{ client.account_number }} {{ client.name }} {{ client.phone_number }} {{ formatDate(clientPrimaryExpiry(client)) }}
All active subscriptions
{{ sub.sn }} {{ formatDate(sub.expiration_date) }}
{{ t }} {{ device.sn_number }}
No clients found.
Per page: {{ sortedAndFilteredClients.length }} client{{ sortedAndFilteredClients.length === 1 ? '' : 's' }}
Page {{ clientsCurrentPage }} of {{ clientsTotalPages }}
Manage system categories and entity assignments
Client Membership Inspector
{{ inspectedClient.name }} ({{ inspectedClient.account_number }})
CLIENT LEVEL GROUPS No client groups assigned.
DEVICE LEVEL GROUPS
{{ dev.sn_number }}: No groups assigned.
No devices registered.
Subscription Entitlements
Off by default - while this is off, every device keeps full access regardless of Plan, so nothing changes for existing customers until billing is ready to be wired up.
PlanChannelsStream (VOD)
{{ plan.plan_name }}
No "Plan" client group defined yet.
Client Form Groups
  • {{ grp.name }}
    {{ grp.options.length }} options
    Filter Visibility:
  • No client groups defined.
Device Form Groups
  • {{ grp.name }}
    {{ grp.options.length }} options
    Filter Visibility:
  • No device groups defined.
Members {{ activeGroup ? `(${activeGroup.name})` : '' }}
Filtered {{ activeGroupMembers.length }}
  • {{ mem.name }}
    Acc: {{ mem.account }}
    {{ mem.value }}
  • Select a group to view members.
  • No members match criteria.
Name {{ftpSortAsc ? '▲' : '▼'}} Type {{ftpSortAsc ? '▲' : '▼'}} Size {{ftpSortAsc ? '▲' : '▼'}} Modified {{ftpSortAsc ? '▲' : '▼'}} Actions
⬅ .. (Up one level)
📁 {{ item.name }} 📄 {{ item.name }} {{ item.is_dir ? 'Directory' : 'File' }} {{ item.is_dir ? '-' : item.size }} {{ formatDate(item.modified * 1000) }}
No files found
Upload Files to Current Directory
1. Target Selection (SMS)
Every client with a phone number on file will be targeted ({{ clients.filter(c => c.phone_number).length }} clients).
{{ grp.name }} ({{ grp.target === 'client' ? 'Client Level' : 'Device Level' }})
No custom groups defined.
No clients match your search.
Total Unique Phone Numbers Targeted: {{ computedSmsTargets.length }}
2. Message Payload
{{ bulkSms.message.length }} / 160 Characters
Read-only mode (No Write Permission)
1. Target Selection (OSD)
Every registered device will be targeted ({{ allDevicesList.length }} devices).
{{ grp.name }} ({{ grp.target === 'client' ? 'Client Level' : 'Device Level' }})
No custom groups defined.
No devices match your search.
Total Unique Devices Targeted: {{ computedOsdTargets.length }}
2. On-Screen Display Payload
Read-only mode (No Write Permission)
OSD Delivery Tracking
Target Message Info Config Delivered Sent Read Status
{{ log.sn_number }}
{{ log.client_name }}
{{ log.title }}
{{ log.message }}
Permanent {{ log.max_repeats }}x Repeats {{ log.current_repeats }} {{ formatDate(log.created_at) }} {{ log.last_delivered_at ? formatDate(log.last_delivered_at) : 'N/A' }} Sent Received Received All
No delivery logs match your criteria.
Active Permanent Messages
Target Message Info Sent Action
{{ log.sn_number }}
{{ log.client_name }}
{{ log.title }}
{{ log.message }}
{{ formatDate(log.created_at) }}
No active permanent messages.
Active / Open Connections
Port(s)S/NClientStatusRequested ByAccess
{{ s.base_port }} / {{ s.base_port + 1 }} {{ s.sn_number }} {{ s.client_name || '-' }} {{ s.is_active ? 'Active' : 'Pending...' }} {{ s.created_by }}
{{ formatDate(s.created_at) }}
Waiting for receiver...
No open connections.
Untracked open ports on the server: {{ remoteStatus.orphan_ports.join(', ') }} - listening, but not opened through this panel.
Create New Connection
  • {{ c.name }} ({{ c.account_number }})
This client has no devices.

Reserved pool: 9000-9009 - OpenWebif on the selected port, SSH on port + 1. OpenWebif is served over HTTPS with a self-signed certificate - your browser will show a security warning, this is expected.

Read-only mode (No Write Permission)
Transmitter Scan Devices
{{ dvbtSelectedDevices.length }} / {{ transmittersInUse.length }} transmitters have a device selected
TransmitterDeviceScan Date and TimeLast status
{{ t }} {{ dvbtRepresentativeDevice(t) ? dvbtRepresentativeDevice(t).sn_number : '-' }}
{{ dvbtRepresentativeDevice(t).dvbt_next_scan_at ? formatDate(dvbtRepresentativeDevice(t).dvbt_next_scan_at) : 'Manual only' }}
Pick a device first
{{ dvbtLatestStatus(dvbtRepresentativeDevice(t).sn_number) }} -
No devices have a Transmitter set yet (Customer Management > Details > Add/Edit Device > Transmitter).
Scan Job History
S/NTransmitterStatusTypeTriggered byStartedFinishedResult / Error
{{ j.sn_number }} {{ j.transmitter }} {{ j.status }} {{ j.manual ? 'Manual' : 'Scheduled' }} {{ j.triggered_by }} {{ formatDate(j.created_at) }} {{ j.finished_at ? formatDate(j.finished_at) : '-' }} {{ j.error_message || j.archive_filename || '-' }}
No scan jobs match.
Global Veusat News
Read-only mode (No Write Permission)
OSD Delivery Tracking
Target Message Info Config Delivered Last Seen Status Action
{{ log.sn_number }}
{{ log.client_name }}
{{ log.title }}
{{ log.message }}
Permanent {{ log.max_repeats }}x Repeats {{ log.current_repeats }} {{ formatDate(log.last_delivered_at) }} Active Completed/Revoked
No delivery logs found.

Module Under Construction

The functionality for {{ viewTitle }} is pending integration.