Добрый день, коллеги..Изучаю Python и возникли непонятки..Дело вот в чём...
Имеется в linux команда на астере:asterisk -rx 'sip show peers', которая выдаёт следующую простыню:отрывок
TEnnANT8806_IPPBX/core_88 D N A 5080 OK (13 ms)
TEnnANT8807_IPPBX/core_88 D N A 5080 OK (15 ms)
TEnnANT8808_IPPBX/core_88 D A 5080 OK (9 ms)
TEnnANT8809_IPPBX/core_88 D A 5080 OK (10 ms)
TEnnANT8810_IPPBX/core_88 D N A 5060 OK (6 ms)
TEnnANT8811_IPPBX/core_88 D N A 5060 OK (6 ms)
TEnnANT8812_IPPBX/core_88 D N A 5060 OK (6 ms)
TEnnANT8813_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8814_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8815_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8816_IPPBX/core_88 D A 0 Unmonitored
TEnnANT8817_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8818_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8819_IPPBX/core_88 D A 35060 Unmonitored
TEnnANT8820_IPPBX/core_88 D A 0 Unmonitored
TEnnANT8821_IPPBX/core_88 D N A 10020 OK (49 ms)
TEnnANT8822_IPPBX/core_88 D N A 10020 OK (51 ms)
TEnnANT9901_IPPBX/core_99 D N A 5060 OK (16 ms)
TEnnANT9902_IPPBX/core_99 D N A 5060 OK (16 ms)
TEnnANT9903_IPPBX/core_99 D N A 5060 OK (15 ms)
TEnnANT9904_IPPBX/core_99 D N A 5060 OK (15 ms)
TEnnANT9905_IPPBX/core_99 D N A 5060 OK (16 ms)
TEnnANT9906_IPPBX/core_99 D N A 5060 OK (15 ms)
TEnnANT9907_IPPBX/core_99 D N A 5060 OK (16 ms)
TEnnANT9908_IPPBX/core_99 D N A 5060 OK (15 ms)
задача такова , что надо чекать значение в последнем столбце и смотреть значение выше 60 ms.. команду asterisk -rx 'sip show peers' повторять 3 раза, и если определённое значение на протяжении 3 попыток будет больше 60 ms, то выдавать его в почту...
Набросал некоторые части скрипта:
#!/usr/bin/env python
import subprocess
import re
import smtplib
from email.MIMEText import MIMEText
def asterisk_check():
command = "asterisk -rx 'sip show peers' | awk '{print $1,$7,$8,$9}'"
full_output = subprocess.call('{param1}'.format(param1=command), shell=True)
awk = ""
asterisk_check()
#me = '___@__'
#you = '____@____'
#text = 'Asterisk Problem\n'
#subj = 'Asterisk Problem'
#
#server = "______"
#port = 25
#msg = MIMEText(text, "", "utf-8")
#msg['Subject'] = subj
#msg['From'] = me
#msg['To'] = you
#s = smtplib.SMTP(server, port)
#s.ehlo()
#s.starttls()
#s.ehlo()
#s.sendmail(me, you, msg.as_string())
#s.quit()
но вот , awk в скрипте питон это не правильно, хотелось бы использовать модуль re , но вот проблема с регулярным выражением, поэтому прошу вашей помощи... Заранее спасибо....