Показаны сообщения с ярлыком dongle. Показать все сообщения
Показаны сообщения с ярлыком dongle. Показать все сообщения

25 окт. 2013 г.

Полезные команды Asterisk (буду дополнять)


1. Переполнение памяти SMS

Если нужно принять SMS-ку, а в консоли (asterisk -rvv) пишет следующее:

ERROR[15627]: at_response.c:1420 at_response_smmemfull: [dongle0] SMS storage is full

то, логично - нам необходимо почистить память для смс-ок.
Есть два вида памяти: 
  • память SIM
  • память модема
Для очистки памяти SIM применяем в консоли астериска последовательно команды:

dongle cmd <dongle_name> AT+CPMS=\"SM\",\"SM\",\"SM\" 
dongle cmd <dongle_name> AT+CMGD=1,4

Для очистки памяти модема применяем в консоли астериска последовательно команды:

dongle cmd dongle_name AT+CPMS=\"ME\",\"ME\",\"ME\" 
dongle cmd dongle_name AT+CMGD=1,4

Консолька нам выдасть что-то типа:

[dongle_name] 'AT+CMGD=1,4' Command queued for execute
[dongle_name] Got Response for user's command:'OK'
[Oct 25 07:41:57] NOTICE[15627]: at_response.c:1714 at_response: [dongle_name] Got Response for user's command:'OK'

Всё прошло гладко. Теперь можно принимать SMS-ки.

4 дек. 2012 г.

Проверка балланса GSM-модема, подключенного к Asterisk и формирование лога звонков за прошедшие сутки с отправкой по e-mail на Python 3

Недавно был описанный в заголовке таск.

Т. к. я очень люблю питончик, то скрипты пишу на нём. В скрипте выполняется команда астериска (USSD-запрос), далее вытягивается содержимое ответа на ussd, вытягивается лог звонков за сутки, формируется письмо в виде html и отсылается на заданные адреса по электронной почте.

1. Импорты необходимых библиотек:


#!/usr/bin/env python3
import os, smtplib, time, subprocess, shlex, sys, csv
from email.utils import formatdate
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

2. Формируем шапку письма - кому, куда, что и зачем :)


# me == my email address
# you == recipient's email address
# cc == copy's address
me = "asterisk@example.com"
сс = "recipient1@example.com"
you = "recipient2@example.com"
# Create message container - the correct MIME type is multipart/alternative.
msg = MIMEMultipart('alternative')
msg['Subject'] = "GSM modem balance ("+time.strftime("%m/%d/%Y",time.localtime())+")"
msg['From'] = me
msg['To'] = you+", "+cc
msg['Date'] = formatdate(localtime=True)

Отправка USSD-запроса сосстояния балланса и обработка результата. Для посылки запроса использую вызов bash команды через subprocess.call - может быть и слишком криво, но быстро и работает.

Затем идет пауза в 10 сек - необходима, чтобы пришел ответ от оператора.

17 авг. 2012 г.

Настройка модемов Huawei для работы с АТС Asterisk PBX

После некоторых мучений и поисков, что чего и куда, решил написать статью для потомков о настройке модемов Huawei для работы с АТС Asterisk.

Для начала установим необходимые пакеты. Всё нижесказанное для системы Debian. Для других дистрибутивов нужно будет подправить команды и возможно пути.

aptitude install asterisk-dev libusb libusb-dev subversion build-essential

Теперь идём на реальную вин-машину. Втыкаем туда нашего зверька, винда должна пошуршать дровами, затем надо установить из памяти устройства программульку U'manager. Она установит дрова именно на сам модем. Для верности, заходим в свойства в прожке и проверяем, виден ли наш модем.


Теперь скачиваем прожку для крякания модемчиков Хуявей тут Huawei_Modem_Unlocker.zip