Дата: 2011-02-16 23:06:21
Комментариев: 0
Прикрутим отображение вашего баланса в conky через AT команды. В данном примере будет участвовать nokia N93. Для начала сопрягаем наш телефон с компом, чтобы каждый раз не подтверждать соединение. И устанавливаем python и нужные нам библиотеки:
sudo apt-get install python-serial python-bluetooth python-lightblue

Теперь нам нужно узнать на каком канале висит сервис Dial-Up Networking:
Скоро буду менять себе плинтус. Потихоньку прицениваюсь.

sdptool search DUN
Searching for DUN on 00:0F:34:32:B3:B7 ...
Service Name: Dial-Up Networking
Service RecHandle: 0x10039
Service Class ID List:
  "Dialup Networking" (0x1103)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 2

Второй канал.
Теперь сам скрипт:
cat ATsend.py
#!/usr/bin/env python
import bluetooth
import serial
 
#def SendViaBluetooth():
sockfd = bluetooth.BluetoothSocket(bluetooth.RFCOMM)
sockfd.connect(('00:0F:34:32:B3:B7', 2)) # BT Адрес и номер канала
sockfd.send('AT+CUSD=1,"*105#"\r') #   
print sockfd.recv(1024) 
print sockfd.recv(1024)   
sockfd.send(chr(26)) # CTRL+Z
sockfd.close()

Редактирем BT адрес, номер канала и запрос на проверку баланса в примере указан USSD номер для Теле2. Запускаем:
ATsend.py
AT+CUSD=1,"*105#"
 
+CUSD: 0,"OCTATOK 60.51 p.",1
 
OK

Для вывода в конки вычленим необходимую информацию:
ATsend.py | grep OCTATOK | awk '{ print $3 }'

Недавно купил себе фотоаппарат кенон PowerShot SX210 IS - отличные технические характеристика за свою цену.
Осталось добавить такую строчку в .conkyrc:
gedit .conkyrc
${color #FFFFFF}Tele2: ${color #FF832D}${execi 3600 /home/username/bin/ATsend.py | grep OCTATOK | awk '{ print $3 }'} ${color #FFFFFF}руб.

Теперь каждый час информация о балансе будет обновляться.
теги: conky, pytnon, nokia, N93

0 комментариев

Оставить комментарий: