check this sample, maybe help >>
import paramiko
import re
CUBE_HOST = '192.0.2.1'
USERNAME = 'your_username'
PASSWORD = 'your_password'
def get_command_output(ssh, command):
stdin, stdout, stderr = ssh.exec_command(command)
return stdout.read().decode()
def parse_call_summary(output):
match = re.search(r'Total call-legs: (\d+)', output)
return int(match.group(1)) if match else 0
def parse_sip_status(output):
# Basic busyout check
return "Busy-out" in output or "OutOfService" in output
def main():
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
ssh.connect(CUBE_HOST, username=USERNAME, password=PASSWORD)
print("[+] Connected to CUBE")
# Get active calls
call_summary = get_command_output(ssh, 'show voice call summary')
active_calls = parse_call_summary(call_summary)
print(f"Active Calls: {active_calls}")
# Get SIP status
sip_status_output = get_command_output(ssh, 'show sip-ua status')
is_busyout = parse_sip_status(sip_status_output)
print(f"SIP Trunk Status: {'Busyout' if is_busyout else 'Active'}")
except Exception as e:
print(f"[-] Error: {e}")
finally:
ssh.close()
if __name__ == '__main__':
main()
(Rate by "Helpful" or "Accept") (محمدرضا هادی_ایران) (Email: morez.hadi@gmail.com)