ARQ-Asterisk

Inserisci la API Key per accedere alla dashboard

ARQ-Asterisk Monitor

Live Offline
Status
Monitor Python
ARI WebSocket
Connessione Asterisk
Chiamate Attive
In questo momento
Blacklist Sessione
Numeri bloccati oggi
Chiamate in Corso
InternoDestinazioneStatoApp
Nessuna chiamata attiva
Endpoints Online
EndpointStato
Nessun endpoint
Password Generata

Salva questa password! Non sarà più visibile.

Interni SIP
InternoNomePermessiStatoAzioni
Nessun interno configurato
Trunk SIP
NomeProviderHostDIDStatoAzioni
Nessun trunk configurato
Code di Chiamata
Nessuna coda configurata
Numeri di Servizio

Numeri interni per test e debug. Chiama da un interno per testare.

NumeroNomeDescrizioneTipo
Nessun servizio configurato
Pattern Chiamate Uscenti

Pattern per chiamate esterne via trunk. CallerID: DID del trunk.

PatternDescrizioneEsempio
Nessun pattern configurato
Aggiungi a Blacklist
Numeri in Blacklist
NumeroMotivoCreatoScadeAzioni
Blacklist vuota - nessun numero bloccato
Call Detail Records
Data/OraDaADurataStato
Nessun CDR registrato - le chiamate appariranno qui
PJSIP Endpoints
EndpointTechnologyStatoCanali Attivi
Nessun endpoint configurato
Live Events Stream
In attesa di eventi...
Gli eventi appariranno qui in tempo reale quando ci sono chiamate
ARI REST API - Esempi cURL

Accesso diretto alle API Asterisk (porta 4180)

Credenziali:
ARI_USER="ariuser"
ARI_PASS="AriSecurePass2024!"
ARI_URL="http://asterisk-pbx:4180/ari"
GET Endpoints:
curl -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/endpoints"
GET Channels:
curl -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/channels"
POST Originate Call:
curl -X POST -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/channels?\
endpoint=PJSIP/100&extension=200&\
context=from-internal&priority=1"
DELETE Hangup:
curl -X DELETE -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/channels/{channel_id}"
ARI WebSocket & Altri Endpoint
WebSocket Events:
# Connessione WebSocket real-time
wscat -c "ws://ariuser:AriSecurePass2024!@\
localhost:4180/ari/events?\
app=monitor&subscribeAll=true"
GET Asterisk Info:
curl -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/asterisk/info"
GET Bridges:
curl -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/bridges"
GET Applications:
curl -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/applications"
POST Playback Audio:
curl -X POST -u ariuser:AriSecurePass2024! \
  "http://localhost:4180/ari/channels/\
{channel_id}/play?media=sound:hello-world"
Python Monitor API - Esempi cURL

API del monitor Python (porta 4183 via nginx)

Header Auth:
API_KEY="arq-asterisk-secret-2024"
# Tutte le richieste richiedono:
-H "X-API-Key: $API_KEY"
GET /api/status:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/status"
GET /api/calls:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/calls"
GET /api/blacklist:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/blacklist"
POST /api/blacklist:
curl -X POST \
  -H "X-API-Key: arq-asterisk-secret-2024" \
  -H "Content-Type: application/json" \
  -d '{"number":"3331234567","hours":24}' \
  "http://localhost:4183/api/blacklist"
Python API - Altri Endpoint
DELETE /api/blacklist/{num}:
curl -X DELETE \
  -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/blacklist/3331234567"
GET /api/cdr:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/cdr?limit=50&offset=0"
GET /api/ari/endpoints:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/ari/endpoints"
GET /api/ari/channels:
curl -H "X-API-Key: arq-asterisk-secret-2024" \
  "http://localhost:4183/api/ari/channels"
WebSocket Live Events:
# JavaScript
const ws = new WebSocket(
  'ws://localhost:4183/ws/events?\
api_key=arq-asterisk-secret-2024'
);
ws.onmessage = (e) => console.log(e.data);
GET /api/openapi.json (no auth):
curl "http://localhost:4183/api/openapi.json"