Viber fix

В Mint (Ubuntu) перестав працювати Viber. Перевстановлення не допомагало.
 При запуску отримував помилку:
This application failed to start because it could not find or load the Qt platform plugin "xcb"

Вирішилось досить просто:
sudo apt-get install libxcb-*

Sniff RTSP URL в китайській камері

Прийшла китайська ІР-камера, а задокументований rtsp URL не запрацював, хоча в браузері відео виконується.

Просніфити шлях просто:

ngrep -q -d wlan0 -W byline port 554




vkontakte пост на власну стіну з аплоадом фотографії на python

session = vk.Session(access_token='blahblahblah')
api = vk.API(session)
upload_server = api.photos.getWallUploadServer()
r = requests.post(upload_server['upload_url'], files={'photo': open("/home/gsv/photo.jpg","rb")})
params = {'server': r.json()['server'], 'photo': r.json()['photo'], 'hash': r.json()['hash']}
wallphoto = api.photos.saveWallPhoto(**params)
photoID = wallphoto[0]['id']
params = {'attachments': str(photoID), 'message': 'Тест'}
api.wall.post(**params)

Налаштування додаткового віртуального Wi-Fi в MikroTik

Постала задачка, на MikroTik RB951Ui-2HnD підняти дві Wi-Fi точки доступу. Перша (point1) - доступ по паролю. Друга (point1) - доступ безпарольний по mac-адресах. point1 працює у мережі 192.168.88.0/24, point2 у 192.168.89.0/24. Шлюз і DNS 192.168.x.1.

Вибірка Django: Групування об'єктів по днях з їх підрахунком

from django.db import connection
from django.db.models import Count
truncate_date = connection.ops.date_trunc_sql('day', 'created')
qs = NewsContent.objects.extra({'day':truncate_date})
news_report = qs.values('day').annotate(Count('pk')).order_by('day')
і на виході маємо:

[{'pk__count': 110, 'day': u'2015-11-21'}, {'pk__count': 83, 'day': u'2015-11-22'}]