Huawei как получить смс по at

Я долго искал в Интернете руководство по отправке sms из командной строки с помощью Huawei E3131 и HiLink в системе Linux на базе debian. Все они не работали. Похоже, что было обновление программного обеспечения.

HiLink показывает мне следующие версии:

  • Имя устройства: E3131
  • Версия аппаратного обеспечения: CU1E3131IM
  • Версия программного обеспечения: 22.521.23.00.00
  • Веб-интерфейс-версия: 17.100.08.00.03

После вопроса: Как отправить / получить sms из командной строки в системе Linux на базе debian с E3131?

Peters 24 Июн 2016 в 18:11

3 ответа

Лучший ответ

Необходимо 3 шага:

  1. Получить идентификатор сеанса
  2. Получить токен
  3. Отправлять / получать смс

Шаг 1. Получите идентификатор сеанса

Для получения идентификатора сеанса я использую следующую команду в собственном сценарии оболочки:

#!/bin/bash curl -b session.txt -c session.txt http://192.168.8.1/html/index.html > /dev/null 2>’ -f 10) echo $TOKEN > token.txt

Шаг 3, часть A. Отправьте SMS

How to change sms service center number in Huawei|sms service center number change problem in Huawei

Наконец, третий сценарий оболочки для отправки sms, который также вызывает два других сценария:

#!/bin/bash NUMBER=$1 MESSAGE=$2 ./session.sh ./token.sh LENGTH=$ TIME=$(date +»%Y-%m-%d %T») TOKEN=$(
command phonenumber «text»

Шаг 3, часть 2. Получение SMS

А для получения последней непрочитанной смс (или, если она недоступна, последней прочитанной смс) я использую следующий скрипт:

#!/bin/bash ./session.sh ./token.sh TOKEN=$(

Возможно, это не очень хорошее кодирование, но оно работает.

Peters 1 Июл 2016 в 15:42

Я сделал скрипт Python для своего HUAWEI E3276:

import requests, sys import xml.etree.ElementTree as ET msg = «From python» phone = «PHONE_NUMBER» #To fill ip = «192.168.1.1» #Dongle ip #Get token r = requests.get(«http://%s/api/webserver/token» % ip) root = ET.fromstring(r.content) token = root[0].text print «token», token #Send sms headers = < «__RequestVerificationToken»: token, «Content-Type»: «text/xml» >data = «-1%s%s%d1$TIME» % ( phone, msg, len(msg) ) r = requests.post( «http://%s/api/sms/send-sms» % ip, data=data, headers=headers ) print «send-sms», r.headers, r.content
themadmax 26 Июл 2017 в 09:50

Хотя Питер очень хорошо это объяснил, но мне нравится иметь один сценарий, и я также использую его на маршрутизаторах OpenWrt вместо Debian.

Итак, вот моя версия для отправки СМС:

#!/bin/sh RESPONSE=`curl -s -X GET http://192.168.8.1/api/webserver/SesTokInfo` COOKIE=`echo «$RESPONSE»| grep SessionID=| cut -b 10-147` TOKEN=`echo «$RESPONSE»| grep TokInfo| cut -b 10-41` NUMBER=$1 SMS=$2 DATA=»-1$NUMBER $SMS111-1″ curl -v http://192.168.8.1/api/sms/send-sms -H «Cookie: $COOKIE» -H «__RequestVerificationToken: $TOKEN» -H «Content-Type: application/x-www-form-urlencoded; charset=UTF-8» —data $DATA

А вот скрипт для чтения последних трех sms-сообщений:

Не отправляется смс с HUAWEI


#!/bin/sh RESPONSE=`curl -s -X GET http://192.168.8.1/api/webserver/SesTokInfo` COOKIE=`echo «$RESPONSE»| grep SessionID=| cut -b 10-147` TOKEN=`echo «$RESPONSE»| grep TokInfo| cut -b 10-41` DATA=»131001» curl -b $COOKIE -c $COOKIE -H «X-Requested-With: XMLHttpRequest» —data «$DATA» http://192.168.8.1/api/sms/sms-list —header «__RequestVerificationToken: $TOKEN» —header «Content-Type:text/xml»

Источник: question-it.com

Huawei как получить смс по at

Здравствуйте.
Имеем: Manufacturer: huawei Model: E173 Revision: 11.126.85.00.209
Отправляю СМС на модем. В своей программе считываю смс и удаляю её AT+CMGD=0. Отчет о доставке выславшему смс не приходит. Подскажите плиз, что нужно сделать в модеме чтобы высылались отчеты о доставке?

Регистрация: 29.09.2009
Сообщений: 9,742

. в модеме ничего, в меню телефона можно было-бы. Отчет о доставке — это обычное ответное входящее SMS, которое можно прочитать по AT+CMGL=0, запросить AT+CNMA. Для активации отчета у разных опсосов разный подход, вот почитайте http://dv.megafon.ru/services/commun. s_options.html (тут точками балуются, либо служебной командой на спецномер).

Как отформатировать Хуавей у7

К чему это, у многих операторов этот отчет автоматом задействован. В общем случае AT+CNMA работает, если CSMS равно 1.

Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer 07.10.2013 в 15:01 .
Пользователь
Регистрация: 13.05.2009
Сообщений: 26

Если СИМ карту переставить из модема в телефон и отправить на эту симку СМС то отчет приходит.
А вот если СИМ стоит в модеме — отчет о доставке не приход. Вот не могу понять почему.

Регистрация: 29.09.2009
Сообщений: 9,742

. так пошлите запрос AT+CNMA принудительно. Запрос отчета в телефоне может быть опцией, вы читаете что вам пишут?

Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer https://www.programmersforum.ru/showthread.php?t=245187″ target=»_blank»]www.programmersforum.ru[/mask_link]

Отправка и прием SMS сообщений с помощью пакета smstools3 и GSM модема

1. Для переключения устройства в режим модема, воспользуемся инструментом usb_modeswitch. Готовый RPM-пакет есть в репозитории rpmforge, скачиваем, устанавливаем:

wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
yum install usb_modeswitch

Добавляем в /etc/usb_modeswitch.conf

DefaultVendor = 0x12d1
DefaultProduct = 0x1001
MessageEndpoint = 0x01
MessageContent = «55534243000000000000000000000011060000000000000000000000000000»

Переключаем устройство в режим модема командой

usb_modeswitch -c /etc/usb_modeswitch.conf

Если usb_modeswitch отработает без ошибок, в системе должно появиться некоторое количество устройств /dev/ttyUSB*. Если этого не произошло, значит драйвер usbserial нужно загружать вручную

modprobe usbserial vendor=0x12d1 product=0x1001

Чтобы не делать этого вручную после каждой перезагрузки, нужно добавить в конфиг udev строку

SYSFS==»12d1″, SYSFS==»1001″, RUN+=»/sbin/modprobe usbserial vendor=0x12d1 product=0x1001″

2. Устанавливаем пакет minicom, настраиваем устройство для постоянной работы в режиме модема

yum install minicom
minicom -s

В «Serial port setup» выставляем значения «Serial Device» — /dev/ttyUSB0, «Bps/Par/Bits» — 38400 8N1. Выбиваем пункт «Save setup as dfl» для сохранения настроек и подключаемся к модему. Посылаем модему команду

Это заставит устройство всегда включаться в режиме модема, не возвращаясь в режим хранилища данных. Использование usb_modeswitch более не понадобится.

Настройка smstools3

1. Скачиваем smstools3 с сайта разработчика, устанавливаем

wget http://smstools3.kekekasvi.com/packages/smstools3-3.1.15.tar.gz
cd smstools3
make install

2. Настройка smstools3

Настройки smstools3 хранятся в файле /etc/smsd.conf. Пример настроек:

devices = GSM1
logfile = /var/log/smsd.log
loglevel = 2

pidfile = /var/run/smsd/smsd.pid
infofile = /var/run/smsd/smsd.working

checkhandler = /opt/sms_to_ucs2.sh
eventhandler = /opt/sms_from_ucs2.sh

[GSM1]
device = /dev/ttyUSB0
baudrate = 115200
init = AT+CPMS=»ME»,»ME»,»ME»
incoming = high

  • GSM1 — произвольное имя
  • при loglevel равном 2, в лог пишется только информация о запуске/завершении программы. Для начала, лучше поставить сделать значение равным 7 и проверить лог на предмет ошибок.
  • checkhandler — в этом параметре указан путь к скрипту, который будет запускаться каждый раз при отправке сообщения. Путь к файлу сообщения передается в первом параметре, текст скрипта будет приведен ниже.
  • eventhandler — в этом параметре указан путь к скрипту, который будет запускаться каждый раз при получении сообщения. Путь к файлу сообщения передается во втором параметре, текст скрипта будет приведен ниже.
  • init — команды, которые будут отправлены модему перед получением и отправкой сообщений. Команда AT+CPMS казывает, какую память следует использовать для работы с SMS. В данном случае, для всех операций с SMS будет использоваться память модема.
  • incoming — значение high означает, что получение сообщений будет происходить с большим приоритетом, чем отправка. Если это поведение нежелательно, данный параметр указывать не нужно.

3. Скрипты для обработки отправляемых и получаемых SMS сообщений

SMS сообщения, содержащие символы кириллицы, приходят в кодировке UCS2 и отправляться должны в кодировке UCS2.
Отправка SMS:

Как перенести данные с Хуавей на инфиникс

FROM_FILE=»$1″
[ ! -r «$FROM_FILE» ] exit 1

if grep -q ‘[а-яА-Я]’ $FROM_FILE; then
TMPFILE=$(mktemp /tmp/smsd_XXXXXX)
sed -e ‘/^$/ q’ < «$FROM_FILE» >$TMPFILE
echo ‘Alphabet: Unicode’ >> $TMPFILE
sed -e ‘1,/^$/ d’ < «$FROM_FILE» | iconv -f UTF-8 -t UNICODEBIG >> $TMPFILE
mv $TMPFILE «$FROM_FILE»
fi

Отправлять SMS можно с помощью команды sendsms (входит в пакет smstools3)

Получение SMS, пересылка на почту [email protected]

[email protected]
[email protected]
FROM_FILE=»$2″
[ ! -r «$FROM_FILE» ] exit 1
[[ ! $FROM_FILE == /var/spool/sms/incoming* ]] exit 0

cat From: $MAIL_FROM
To: $MAIL_TO
Subject: Входящее SMS сообщение с номера $NUM
Content-Type: text/plain; charset=»UTF-8″
Content-Transfer-Encoding: 8bit

Источник: voxlink.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
Китай Покупай