Anrufliste exportieren
Moderator: Lancom-Systems Moderatoren
Anrufliste exportieren
Weiß jemand wie man die Anrufliste (Telefonie) die man sich im LANmonitor (unter Anrufe) ansehen kann irgendwie exportieren oder speichern? In der Übersichtsliste gibts zwar die Funktion speichern oder laden - aber die sind ausgegraut.
Re: Anrufliste exportieren
In welchem Format und wie oft? Spontan fällt mir da Scripten und per SNMP ein.
Re: Anrufliste exportieren
Oh je. Das wäre echt umständlich.
Aber irgendwie seltsam wenn es die Option gibt aber ausgegraut ist.
Gibts da keine Option das zu aktivieren?
Aber irgendwie seltsam wenn es die Option gibt aber ausgegraut ist.
Gibts da keine Option das zu aktivieren?
Re: Anrufliste exportieren
Spannend, wie man auf eine einzelne Frage so überhaupt nicht eingeht.
Re: Anrufliste exportieren
Na ja das Format spielt ja keine Rolle man kann ja alles irgendwie bei Bedarf umwandeln - hauptsache erst mal exportieren. Wie oft ist ja auch zweitrangig aber ich sage mal sporadisch bei Bedarf.
Re: Anrufliste exportieren
Wirklich sporadisch. Per SSH (oder Telnet) einwählen und
Copy&Paste. bzw. die Terminalausgabe in eine Datei umleiten.
Code: Alles auswählen
ls /Status/Voice-Call-Manager/Calls
Re: Anrufliste exportieren
Ok danke - werd das mal bei Gelegenheit ausprobieren.
Re: Anrufliste exportieren
DIe Liste lässt sich speichern und ist eine csv Datei.
Ausgegraut sind Speichern und Laden nur wenn die
bestehende Liste noch nicht komplett geladen ist.
MfG
Hans-Jürgen
Ausgegraut sind Speichern und Laden nur wenn die
bestehende Liste noch nicht komplett geladen ist.
MfG
Hans-Jürgen
Re: Anrufliste exportieren
Ja danke - das hat jetzt geklappt.
Das laden der kompletten Liste dauert echt nen moment länger.
Aber man muß erst mal auf die Idee kommen das man warten muß bis alles komplett geladen ist.
Edit:
Habs mal getestet - es funktioniert aber nich so "ganz".
Manche Spalten werden nicht exportiert und wenn dann in komischen Zahlenkollonnen.
Aber besser als nichts und nicht ganz so kompliziert.
Hier könnte LANCOM echt mal ein kleines bisschen das Händchen anlegen um das so zu exportieren wie es auch in der Liste angezeigt wird.
Einfach 1:1 ohne was zu verändern oder weg zu lassen.
Das laden der kompletten Liste dauert echt nen moment länger.
Aber man muß erst mal auf die Idee kommen das man warten muß bis alles komplett geladen ist.
Edit:
Habs mal getestet - es funktioniert aber nich so "ganz".
Manche Spalten werden nicht exportiert und wenn dann in komischen Zahlenkollonnen.
Aber besser als nichts und nicht ganz so kompliziert.
Hier könnte LANCOM echt mal ein kleines bisschen das Händchen anlegen um das so zu exportieren wie es auch in der Liste angezeigt wird.
Einfach 1:1 ohne was zu verändern oder weg zu lassen.
-
- Beiträge: 3224
- Registriert: 12 Jan 2010, 14:10
Re: Anrufliste exportieren
Falls du brauchst, Python Skript, dass die Anruftabelle in eine Excel packt:
Code: Alles auswählen
import paramiko
import re
import openpyxl
from openpyxl.styles import Alignment
from openpyxl.utils import get_column_letter
from datetime import datetime
def detect_column_widths(header_line):
# Verwende reguläre Ausdrücke, um die Startpositionen der Spalten zu finden
positions = [match.start() for match in re.finditer(r'\S+', header_line)]
if not positions:
raise ValueError(f"Header line does not contain any non-whitespace characters: '{header_line}'")
# Berechne die Spaltenbreiten basierend auf den Startpositionen
column_widths = [positions[i+1] - positions[i] for i in range(len(positions) - 1)]
# Füge die Breite der letzten Spalte hinzu
column_widths.append(len(header_line) - positions[-1])
return column_widths
def parse_data(data, column_widths):
rows = []
for line in data:
row = []
start = 0
for width in column_widths:
cell = line[start:start+width].strip()
row.append(cell)
start += width
rows.append(row)
return rows
def write_excel(data, output_file):
wb = openpyxl.Workbook()
ws = wb.active
for row in data:
ws.append(row)
# Setze die Spaltenbreite und Formatierung als Text
for column_cells in ws.columns:
max_length = 0
column_letter = get_column_letter(column_cells[0].column)
for cell in column_cells:
cell.alignment = Alignment(horizontal='left', vertical='center')
cell.number_format = '@' # Setze die Zellen als Textformat
if cell.value is not None:
if len(str(cell.value)) > max_length:
max_length = len(str(cell.value))
adjusted_width = (max_length + 2)
ws.column_dimensions[column_letter].width = adjusted_width
wb.save(output_file)
# SSH-Verbindungsdetails
hostname = '1.2.3.4'
port = 22
username = 'root'
password = 'test1234'
# Befehl, um das Anrufprotokoll abzufragen
command = 'l /Status/Voice-Call-Manager/calls'
# SSH-Verbindung herstellen und Befehl ausführen
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname, port, username, password)
stdin, stdout, stderr = client.exec_command(command)
output = stdout.read().decode()
# SSH-Verbindung schließen
client.close()
# Ausgabe in Zeilen aufteilen und die Zeile mit den Trennstrichen entfernen
output_lines = output.splitlines()
output_lines = [line for line in output_lines if not line.startswith('=============') and line.strip()]
# Überprüfen, ob es genug Zeilen gibt
if len(output_lines) < 2:
raise ValueError("Output does not contain enough lines to parse headers and data.")
# Kopfzeile und Daten trennen
header_line = output_lines[0]
data_lines = output_lines[1:]
# Detektiere die Spaltenbreiten basierend auf der ersten Zeile (Header)
column_widths = detect_column_widths(header_line)
# Parse die Daten
parsed_data = parse_data([header_line] + data_lines, column_widths)
# Aktuelles Datum und Uhrzeit für den Dateinamen
timestamp = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
excel_file = f'Anrufprotokoll_{timestamp}.xlsx'
# Schreibe die Daten in eine Excel-Datei
write_excel(parsed_data, excel_file)
print(f"Anrufprotokoll wurde erfolgreich in {excel_file} gespeichert und formatiert.")
Das liegt an deinem Excel. Musst beim Import der Daten die Formatierung deaktivieren. Gucks dir im Editor an...AnSt hat geschrieben: 07 Jun 2024, 18:10 Habs mal getestet - es funktioniert aber nich so "ganz".
Manche Spalten werden nicht exportiert und wenn dann in komischen Zahlenkollonnen.
Aber besser als nichts und nicht ganz so kompliziert.
Hier könnte LANCOM echt mal ein kleines bisschen das Händchen anlegen um das so zu exportieren wie es auch in der Liste angezeigt wird.
Einfach 1:1 ohne was zu verändern oder weg zu lassen.