" Эх, какой надо было фантазией обладать, чтобы в это играть:) ", в том то и дело что это были не просто программы, а увлекательнейшая история путешествия двух взрослых дядек с Луны на Землю. Коршунова и Перепелкина на "Кон-Тики. История из недалекого, и уже осязаемого будущего (благодаря не дУрной физической симуляции, причем написанной для более ранней и более простой, но и более массовой версии ПМК: БЗ-34 ) Увлекательнейшее чтиво, дух захватывало так, что хотелось перечитывать его. Народ гонялся за этими калькуляторами, для полного погружения в это действо. Написал и фантастическое произведение и код симуляторов, замечательный Михаил Пухов. Тот случай когда писатель и поэт пишет код, как часть своего произведения.
Ну как бы давно известно, что у разумных представителей Homo (за исключением периода буйства гормонов в молодом возрасте) секс начинается в голове, а уже заканчивается там, где заканчивается… :-)
А вот относительно совета «разговаривать с партнером» — то это скорее пожелание быть богатым и здоровым, чем практическая рекомендация. Практически у всех женщин после рождения ребенка (или даже еще раньше — в процессе беременности) — происходит гормональный сдвиг в мозгах в сторону «яжматери». У кого-то до клинической стадии, когда она считает что вокруг нее и ребенка весь мир вращается, у кого-то поменьше… И как минимум (в норме) — она поглощена ребенком, крутится вокруг ребенка, а муж в этот момент для нее особой ценности не представляет (не путать мужа и его ресурсы — ресурсы как раз очень нужны!). И о чем тут можно разговаривать? Разумеется, есть женщины исключения, и бла-бла-бла, но статистической нормой они не являются.
Поэтому возникает парадокс — чем лучшей матерью женщина является для своих детей, тем больше шансов, что в такой семье муж окажется третьим (четвертым-, пятым...) лишним. Чем меньше женщина будет концентрироваться на детях, тем лучше для мужа — и одновременно, хуже, потому что кроме как через женщину он продлить свой род не может.
Отсюда следует, что к первому браку (где будут рождаться первые дети) — следует относиться так же, как опытные летчики к посадке в плохую погоду: "… мы сейчас зайдем на полосу и уйдем на второй круг — но если все будет в порядке, то сядем". В применении к семье это, вероятно, звучит примерно так: "… мы сейчас вырастим детей до трех лет и разведемся, но если захотим, то будем жить дальше". Второй брак, когда у обоих уже выполнена биологическая программа — и партнер вызывает интерес именно как человек, а не как поставщик ресурсов для продолжения рода — имеет шанс быть более счастливым.
К сожалению, вместо реальной картины мира (что первый брак скорее всего придется выбросить) — в общественное сознание транслируются мифы типа "… и жили они счастливо и умерли в один день" и тому подобное. Ну а потом психологи пишут статьи типа этой…
Тоже раньше во времена android 2.3 использовал Fiddler как прокси. Потом долго не экспериментировал. А недавно как раз когда хотел для снифинга использовать Fiddler не получилось как раз из-за SSL Pinning. В итоге нашел хорошую статью про httptoolkit.tech и frida'у. Там же в статье есть ссылка на скрипт для frida unpinning. В том приложении трафик которого интересовал как раз использовался okHttp3 (подсмотрел в JADX). Все хорошо получилось подсмотреть, правда немного помучился с рутованием эмулятора с установленными сервисами.
Есть способ еще проще через streams (и правильнее, так как шифрование сохранится) с тем же Nginx, и даже ничего в коде скрипта менять не придется.
На стороне приложения пишем в /etc/hosts:
ip.of.my.proxy api.telegram.org
Для Nginx на проксе пишем:
stream {
# Конфигурация апстрима
upstream tgapi {
server api.telegram.org:443;
}
# Вот этот блок ради того, чтобы можно было один сервер использовать как прокси для нескольких имен
map $ssl_preread_server_name $upstream {
hostnames;
default tgapi;
api.telegram.org tgapi;
}
server {
listen 443;
ssl_preread on;
proxy_pass $upstream;
}
}
Кстати, в большинстве дистрибутивов nginx собран без stream, но оно есть в nginx-full в официальной репе самого nginx.
Если кому нужно, для своих ботов написал на Node.js небольшой модуль, который рекурсивно рассылает всем юзерам сообщение в рамках лимитов. Удобно для апдейтов по функционалу.
Жми меня!
/**
* Used to send messages to all users
*
* @module sendout
* @license MIT
*/
/** Dependencies */
const db = require('./db');
/**
* Used to send messages to all chats
* @param {Telegram:Bot} bot Bot that should send messages
* @param {String} text Text to be sent
*/
function sendAll(bot, text) {
db.getChats()
.then((chats) => {
sendMessage(text, chats, bot, {});
})
.catch(/** todo: handle error */);
}
/**
* Recursive function to send text to an array of chats; please don't use this
* function twice at any given point of time. Sends at most 30 messages/sec
*
* @param {String} text - Text to be sent
* @param {[Mongoose:Chat]} chats - Chats to get this message
* @param {Telegram:Bot} bot - Bot that should respond
*/
function sendMessage(text, chats, bot, results) {
if (chats.length <= 0) {
const keys = Object.keys(results);
const successKeyIndex = keys.indexOf('success');
if (successKeyIndex > -1) {
keys.splice(successKeyIndex, 1);
}
let message = `All messages were sent, here are the results:\n\nSuccess: ${results.success || 0}`;
keys.forEach((key) => {
message = `${message}\n${key}: ${results[key]}`;
});
bot.sendMessage('ваш id', message);
return;
}
/** Get current users and users for the next loop */
const nextUsers = Object.create(chats);
const currentUsers = nextUsers.splice(0, 30);
const resultsCopy = Object.create(results);
const promises = [];
currentUsers.forEach((user) => {
promises.push(new Promise((resolve) => {
bot.sendMessage(user.id, text, {
disable_web_page_preview: 'true',
})
.then(() => resolve('success'))
.catch((err) => {
resolve(String(err.message));
});
}));
});
Promise.all(promises)
.then((values) => {
values.forEach((value) => {
if (resultsCopy[value]) {
resultsCopy[value] += 1;
} else {
resultsCopy[value] = 1;
}
});
setTimeout(() => {
sendMessage(text, nextUsers, bot, resultsCopy);
}, 1500);
})
.catch(err => bot.sendMessage('ваш id', err.message));
}
module.exports = {
sendAll,
};
Например, достаточно легко сделать суммаризацию списка ip-адресов через решения на perl или python. Простой скрипт на perl, делающий это с помощью Net::CIDR::Lite, превращает 85 тысяч префиксов в 60 (не тысяч), но, естественно, перекрывает гораздо бОльший диапазон адресов, чем заблокировано.
Вот этот момент я немножечко не понял.
Я набросал скрипт на перле:
То есть что бы получить заявленные вами 60 маршрутов (или около того), нужно суммировать маршруты с масками /6. Тут скорей всего ошибка где-то в расчетах (или у вас, или у меня).
1) Ваш вариант удаляет «все одиночные адреса» из выгрузки, оставляет только «забанненое по подсетям» (grep '/')
2) этот пайп можно ужать до одного вызова awk: awk -F ';' '{split($1, arr, " | "); for (i in arr) {if (arr[i] ~ /\//) addr[j] = arr[i] ; j++ }} END {PROCINFO["sorted_in"] = "@val_num_asc"; asort(addr) ; for (i in addr){print "/ip firewall address-list add comment=\"Fuck RKN\" list=rkn address="addr[i]}}'
3) Если есть условно 3 микротика и одна VPS, то в вашем варианте адреса нужно пушить в каждый микротик, а в варианте из статьи только один раз в bird на VPS, на конечные микротики маршруты доедут сами через BGP.
4) Ваш вариант только добавляет адреса и не удаляет старые. Метод в статье позволит перестать гнать трафик через тунель в случае если адрес пропал из выгрузки (нее, я понимаю что с практической точки зрения на данный момент это так себе агрумент, но тем не менее).
Я купил за эти же деньги на алиэкспресс ONYX BOOX C67ML: дисплей Carta 1024x758, wifi, тач, подсветка, андроид, обложка в комплекте.
Или подороже на 1,5 тыс. с Carta2+ 1440x1080, оперативы побольше, просыпается при открытии обложки.
Считаю, что производители читалок, что покеты, что ониксы на местном рынке зажрались.
А в ESP8266 не работают стандартные методы определения IP устройств по mac адресу?
Обычно просто отправляют ICMP ECHO по адресу 255.255.255.255 и слушают ответы.
http://electronics.stackexchange.com/questions/170248/how-to-get-ip-address-from-mac-address-using-esp8266-wifi-module
При этом уберёте кучу зависимостей от конкретного роутера и прошивки.
Открываем «Таможенный кодекс Таможенного союза» от 08.05.2015 и статью 352 пункт 2. Там прямо прописано, что на товары для личного пользования, которые перемещаются через таможенную границу, не будут применяться меры нетарифного и технического регулирования. К нетарифным мерам как раз и относится нотификация устройств с шифрованием. В таком случае проблематики в данной статье нет?
Картинка плохая, но там читается первая строчка Li-Polymer
http://i.ebayimg.com/00/s/MTYwMFgxMTEy/z/ELIAAOSwZVhWR9hs/$_1.JPG
То есть, Sony меня всегда обманывала и этот аккумулятор не полимерный? Вообще, по сроку службы, он лет 15 мне служил, а когда заменил на новый большей в несколько раз ёмкости, то на этом я с этим телефоном и расстался, потому что новый тянул так же как убитый за 15 лет старый (старый держал больше недели, в конце срока службы меньше дня. от нового я расчитывал месяц..). Сейчас у меня K10000, на полмесяца хватает.
Просто, по качествам того аккумулятора во мне закрепилась мысль, что Li-Polymer это круто и жалко что они не пошли.
1. DHT22 стоит немногим дороже, а точность у него выше (у DHT11 разброс ±2 градуса!).
И если уж пошли погодные датчики, то сразу же стоит взять BMP085 — датчик атмосферного давления.
2. SR04 — это воплощенный кошмар. Огромное количество ложных показаний из-за эха или плохой чувствительности. Чтобы более-менее правильно определить расстояние нужно сделать штук 7-9 измерений и взять медиану, предварительно подобрав таймаут под размеры помещения. А если в одной комнате используются два таких сенсора…
Ближайшей более-менее качественной и относительно дешевой альтернативой является ИК-сенсор от Sharp (серия GP2, например — GP2Y0A21YK0), стоимостью примерно 5$.
3. Самые ходовые резисторы это 1 и 10кОм. Их нужно существенно больше.
4. Сдвиговый регистр мне не понадобился ни разу — очень специфичная вещь, подходящая в основном для мигания большим количеством светодиодов. Но для такого мигания лучше взять отрезок ленты WS8211/12 с персонально адресуемыми пикселями и развлекаться с ними.
5. Транзисторы — это хорошо, но почему в наборе нет ни одного полевого транзистора с логическим уровнем управления? Они дешевы и куда лучше подходят для ШИМ, чем обычные транзисторы.
6. К большому бредборду я бы порекомендовал взять еще штуки три мелких — они удобнее, когда надо соединить 2-3 элемента.
7. А к сервоприводу еще и контроллер нужен, ага.
Вообще, при собирании собственного «стартового» набора лучше начинать со стороны задач. Типа, что именно хотелось бы посмотреть.
Потому что тут как-то все бестолково — сервоприводу нужен контроллер и пластиковый обвес, погодной станции — датчик давления и (в перспективе хотя бы) углекислого газа, для управления LED-лентами или мощными светодиодами нужны полевые транзисторы и т.д. Текущий набор как бы практически исчерпывает свои возможности после пункта «помигать светодиодами».
С линиями данных не все так просто. Подключение различается у Apple и других производителей. D+/D-
2.0V/2.0V – low power (500mA)
2.0V/2.7V – Apple iPhone (1000mA/5-watt)
2.7V/2.0V – Apple iPad (2100mA/10-watt)
2.7V/2.7V – 12-watt (2400mA, possibly used by Blackberry)
D+/D- shorted together – USB-IF BC 1.2 standard
1.2V/1.2V – Samsung devices
Рекомендую посмотреть панельки Allpowers, они себя на рынке хорошо зарекомендовали. Самым выгодным предложением считаю панельку на 15Вт и панельку на 18Вт (но она длиннее).
По повербанкам могу посоветовать TOMO V8-4 и четыре банки Panasonic, либо Xiaomi MI 10000, он дешевле, но у TOMO ёмкость получится больше, он информативней, каналы независимые, можно использовать как зарядку для банок.
Ох, я как-то около года назад, писал бота для скайпа, for fun.
Расковырял всё что смог в web версии скайпа. С авторизацией только по логину и паролю разобрался.
Принцип работы бота — выполнять команды. Не помню что я уже там реализовал, но точно помню, ping работал :)
Работал так: me: /ping
bot: pong
И, кажется, ещё умел работать с задачами в jira.
Могу выложить исходники когда дома буду, если кому-нибудь интересно :)
Бот «расширяемый» :)
Там, кстати, нюанс один был при работе с чатами. Оказывается в скайпе можно создать чат с флагом p2p и его нельзя будет увидеть в веб версии. Не знаю можно ли сейчас так делать.
" Эх, какой надо было фантазией обладать, чтобы в это играть:) ", в том то и дело что это были не просто программы, а увлекательнейшая история путешествия двух взрослых дядек с Луны на Землю. Коршунова и Перепелкина на "Кон-Тики. История из недалекого, и уже осязаемого будущего (благодаря не дУрной физической симуляции, причем написанной для более ранней и более простой, но и более массовой версии ПМК: БЗ-34 ) Увлекательнейшее чтиво, дух захватывало так, что хотелось перечитывать его. Народ гонялся за этими калькуляторами, для полного погружения в это действо. Написал и фантастическое произведение и код симуляторов, замечательный Михаил Пухов. Тот случай когда писатель и поэт пишет код, как часть своего произведения.
А вот относительно совета «разговаривать с партнером» — то это скорее пожелание быть богатым и здоровым, чем практическая рекомендация. Практически у всех женщин после рождения ребенка (или даже еще раньше — в процессе беременности) — происходит гормональный сдвиг в мозгах в сторону «яжматери». У кого-то до клинической стадии, когда она считает что вокруг нее и ребенка весь мир вращается, у кого-то поменьше… И как минимум (в норме) — она поглощена ребенком, крутится вокруг ребенка, а муж в этот момент для нее особой ценности не представляет (не путать мужа и его ресурсы — ресурсы как раз очень нужны!). И о чем тут можно разговаривать? Разумеется, есть женщины исключения, и бла-бла-бла, но статистической нормой они не являются.
Поэтому возникает парадокс — чем лучшей матерью женщина является для своих детей, тем больше шансов, что в такой семье муж окажется третьим (четвертым-, пятым...) лишним. Чем меньше женщина будет концентрироваться на детях, тем лучше для мужа — и одновременно, хуже, потому что кроме как через женщину он продлить свой род не может.
Отсюда следует, что к первому браку (где будут рождаться первые дети) — следует относиться так же, как опытные летчики к посадке в плохую погоду: "… мы сейчас зайдем на полосу и уйдем на второй круг — но если все будет в порядке, то сядем". В применении к семье это, вероятно, звучит примерно так: "… мы сейчас вырастим детей до трех лет и разведемся, но если захотим, то будем жить дальше". Второй брак, когда у обоих уже выполнена биологическая программа — и партнер вызывает интерес именно как человек, а не как поставщик ресурсов для продолжения рода — имеет шанс быть более счастливым.
К сожалению, вместо реальной картины мира (что первый брак скорее всего придется выбросить) — в общественное сознание транслируются мифы типа "… и жили они счастливо и умерли в один день" и тому подобное. Ну а потом психологи пишут статьи типа этой…
Тоже раньше во времена android 2.3 использовал Fiddler как прокси. Потом долго не экспериментировал. А недавно как раз когда хотел для снифинга использовать Fiddler не получилось как раз из-за SSL Pinning. В итоге нашел хорошую статью про httptoolkit.tech и frida'у. Там же в статье есть ссылка на скрипт для frida unpinning. В том приложении трафик которого интересовал как раз использовался okHttp3 (подсмотрел в JADX). Все хорошо получилось подсмотреть, правда немного помучился с рутованием эмулятора с установленными сервисами.
можно рсс ленту канала проверять, она даже "гостям" доступна: достаточно зайти на сам канал чтобы из url взять channel_id канала, рсс будет по адресу https://www.youtube.com/feeds/videos.xml?channel_id=UCchBatdUMZoMfJ3rIzgV84g
На стороне приложения пишем в /etc/hosts:
ip.of.my.proxy api.telegram.org
Для Nginx на проксе пишем:
stream {
# Конфигурация апстрима
upstream tgapi {
server api.telegram.org:443;
}
# Вот этот блок ради того, чтобы можно было один сервер использовать как прокси для нескольких имен
map $ssl_preread_server_name $upstream {
hostnames;
default tgapi;
api.telegram.org tgapi;
}
server {
listen 443;
ssl_preread on;
proxy_pass $upstream;
}
}
Кстати, в большинстве дистрибутивов nginx собран без stream, но оно есть в nginx-full в официальной репе самого nginx.
Вот этот момент я немножечко не понял.
Я набросал скрипт на перле:
Поиграл значением переменной mask в теле и получил такие значения:
32 | 85929
31 | 70875
30 | 57153
29 | 46442
28 | 38231
27 | 31421
26 | 25805
25 | 21129
24 | 17616
23 | 14353
22 | 11645
21 | 9495
20 | 7740
19 | 6251
18 | 5056
17 | 4053
16 | 3204
15 | 2543
14 | 1947
13 | 1465
12 | 1069
11 | 750
10 | 505
9 | 329
8 | 189
7 | 103
6 | 56
5 | 28
4 | 14
3 | 7
2 | 4
1 | 2
0 | 1
То есть что бы получить заявленные вами 60 маршрутов (или около того), нужно суммировать маршруты с масками /6. Тут скорей всего ошибка где-то в расчетах (или у вас, или у меня).
2) этот пайп можно ужать до одного вызова awk:
awk -F ';' '{split($1, arr, " | "); for (i in arr) {if (arr[i] ~ /\//) addr[j] = arr[i] ; j++ }} END {PROCINFO["sorted_in"] = "@val_num_asc"; asort(addr) ; for (i in addr){print "/ip firewall address-list add comment=\"Fuck RKN\" list=rkn address="addr[i]}}'
3) Если есть условно 3 микротика и одна VPS, то в вашем варианте адреса нужно пушить в каждый микротик, а в варианте из статьи только один раз в bird на VPS, на конечные микротики маршруты доедут сами через BGP.
4) Ваш вариант только добавляет адреса и не удаляет старые. Метод в статье позволит перестать гнать трафик через тунель в случае если адрес пропал из выгрузки (нее, я понимаю что с практической точки зрения на данный момент это так себе агрумент, но тем не менее).
выбирает только крупные сети, так вот их вполне себе немного, у меня 78 набегает:
/ip firewall address-list add list=rkn address=13.125.0.0/16
/ip firewall address-list add list=rkn address=13.230.0.0/15
/ip firewall address-list add list=rkn address=13.56.0.0/14
/ip firewall address-list add list=rkn address=18.130.0.0/16
/ip firewall address-list add list=rkn address=18.144.0.0/16
/ip firewall address-list add list=rkn address=18.184.0.0/15
/ip firewall address-list add list=rkn address=18.194.0.0/15
/ip firewall address-list add list=rkn address=18.196.0.0/15
/ip firewall address-list add list=rkn address=18.204.0.0/14
/ip firewall address-list add list=rkn address=18.218.0.0/16
/ip firewall address-list add list=rkn address=18.236.0.0/15
/ip firewall address-list add list=rkn address=23.251.128.0/19
/ip firewall address-list add list=rkn address=34.192.0.0/10
/ip firewall address-list add list=rkn address=34.240.0.0/13
/ip firewall address-list add list=rkn address=34.248.0.0/13
/ip firewall address-list add list=rkn address=35.156.0.0/14
/ip firewall address-list add list=rkn address=35.160.0.0/13
/ip firewall address-list add list=rkn address=35.176.0.0/15
/ip firewall address-list add list=rkn address=35.178.0.0/15
/ip firewall address-list add list=rkn address=35.180.0.0/16
/ip firewall address-list add list=rkn address=35.184.0.0/13
/ip firewall address-list add list=rkn address=35.192.0.0/12
/ip firewall address-list add list=rkn address=35.208.0.0/12
/ip firewall address-list add list=rkn address=35.224.0.0/12
/ip firewall address-list add list=rkn address=45.76.82.0/23
/ip firewall address-list add list=rkn address=46.101.128.0/17
/ip firewall address-list add list=rkn address=47.91.64.0/19
/ip firewall address-list add list=rkn address=51.136.0.0/15
/ip firewall address-list add list=rkn address=51.15.0.0/16
/ip firewall address-list add list=rkn address=52.192.0.0/11
/ip firewall address-list add list=rkn address=52.32.0.0/16
/ip firewall address-list add list=rkn address=52.56.0.0/16
/ip firewall address-list add list=rkn address=52.57.0.0/16
/ip firewall address-list add list=rkn address=52.58.0.0/15
/ip firewall address-list add list=rkn address=52.64.0.0/12
/ip firewall address-list add list=rkn address=54.144.0.0/12
/ip firewall address-list add list=rkn address=54.160.0.0/12
/ip firewall address-list add list=rkn address=54.212.0.0/15
/ip firewall address-list add list=rkn address=54.228.0.0/15
/ip firewall address-list add list=rkn address=54.64.0.0/13
/ip firewall address-list add list=rkn address=64.137.0.0/17
/ip firewall address-list add list=rkn address=68.171.224.0/19
/ip firewall address-list add list=rkn address=74.82.64.0/19
/ip firewall address-list add list=rkn address=91.108.12.0/22
/ip firewall address-list add list=rkn address=91.108.16.0/22
/ip firewall address-list add list=rkn address=91.108.4.0/22
/ip firewall address-list add list=rkn address=91.108.56.0/22
/ip firewall address-list add list=rkn address=91.108.8.0/22
/ip firewall address-list add list=rkn address=91.121.0.0/16
/ip firewall address-list add list=rkn address=94.177.224.0/21
/ip firewall address-list add list=rkn address=98.158.176.0/20
/ip firewall address-list add list=rkn address=103.246.200.0/22
/ip firewall address-list add list=rkn address=109.239.140.0/24
/ip firewall address-list add list=rkn address=128.199.0.0/16
/ip firewall address-list add list=rkn address=139.59.0.0/16
/ip firewall address-list add list=rkn address=149.154.160.0/22
/ip firewall address-list add list=rkn address=149.154.164.0/22
/ip firewall address-list add list=rkn address=149.154.168.0/22
/ip firewall address-list add list=rkn address=149.154.172.0/22
/ip firewall address-list add list=rkn address=159.122.128.0/18
/ip firewall address-list add list=rkn address=159.203.0.0/16
/ip firewall address-list add list=rkn address=159.65.0.0/16
/ip firewall address-list add list=rkn address=159.89.0.0/16
/ip firewall address-list add list=rkn address=165.227.0.0/16
/ip firewall address-list add list=rkn address=167.99.0.0/16
/ip firewall address-list add list=rkn address=174.104.0.0/15
/ip firewall address-list add list=rkn address=174.138.0.0/17
/ip firewall address-list add list=rkn address=176.67.169.0/24
/ip firewall address-list add list=rkn address=178.239.88.0/21
/ip firewall address-list add list=rkn address=178.63.0.0/16
/ip firewall address-list add list=rkn address=185.166.212.0/23
/ip firewall address-list add list=rkn address=185.229.227.0/24
/ip firewall address-list add list=rkn address=188.166.0.0/17
/ip firewall address-list add list=rkn address=195.154.0.0/17
/ip firewall address-list add list=rkn address=203.104.128.0/20
/ip firewall address-list add list=rkn address=203.104.144.0/21
/ip firewall address-list add list=rkn address=203.104.152.0/22
/ip firewall address-list add list=rkn address=206.189.0.0/16
Довести до формата, подходящего OpenVPN, совсем не сложно будет.
Или подороже на 1,5 тыс. с Carta2+ 1440x1080, оперативы побольше, просыпается при открытии обложки.
Считаю, что производители читалок, что покеты, что ониксы на местном рынке зажрались.
Обычно просто отправляют ICMP ECHO по адресу 255.255.255.255 и слушают ответы.
http://electronics.stackexchange.com/questions/170248/how-to-get-ip-address-from-mac-address-using-esp8266-wifi-module
При этом уберёте кучу зависимостей от конкретного роутера и прошивки.
http://i.ebayimg.com/00/s/MTYwMFgxMTEy/z/ELIAAOSwZVhWR9hs/$_1.JPG
То есть, Sony меня всегда обманывала и этот аккумулятор не полимерный? Вообще, по сроку службы, он лет 15 мне служил, а когда заменил на новый большей в несколько раз ёмкости, то на этом я с этим телефоном и расстался, потому что новый тянул так же как убитый за 15 лет старый (старый держал больше недели, в конце срока службы меньше дня. от нового я расчитывал месяц..). Сейчас у меня K10000, на полмесяца хватает.
Просто, по качествам того аккумулятора во мне закрепилась мысль, что Li-Polymer это круто и жалко что они не пошли.
И если уж пошли погодные датчики, то сразу же стоит взять BMP085 — датчик атмосферного давления.
2. SR04 — это воплощенный кошмар. Огромное количество ложных показаний из-за эха или плохой чувствительности. Чтобы более-менее правильно определить расстояние нужно сделать штук 7-9 измерений и взять медиану, предварительно подобрав таймаут под размеры помещения. А если в одной комнате используются два таких сенсора…
Ближайшей более-менее качественной и относительно дешевой альтернативой является ИК-сенсор от Sharp (серия GP2, например — GP2Y0A21YK0), стоимостью примерно 5$.
3. Самые ходовые резисторы это 1 и 10кОм. Их нужно существенно больше.
4. Сдвиговый регистр мне не понадобился ни разу — очень специфичная вещь, подходящая в основном для мигания большим количеством светодиодов. Но для такого мигания лучше взять отрезок ленты WS8211/12 с персонально адресуемыми пикселями и развлекаться с ними.
5. Транзисторы — это хорошо, но почему в наборе нет ни одного полевого транзистора с логическим уровнем управления? Они дешевы и куда лучше подходят для ШИМ, чем обычные транзисторы.
6. К большому бредборду я бы порекомендовал взять еще штуки три мелких — они удобнее, когда надо соединить 2-3 элемента.
7. А к сервоприводу еще и контроллер нужен, ага.
Вообще, при собирании собственного «стартового» набора лучше начинать со стороны задач. Типа, что именно хотелось бы посмотреть.
Потому что тут как-то все бестолково — сервоприводу нужен контроллер и пластиковый обвес, погодной станции — датчик давления и (в перспективе хотя бы) углекислого газа, для управления LED-лентами или мощными светодиодами нужны полевые транзисторы и т.д. Текущий набор как бы практически исчерпывает свои возможности после пункта «помигать светодиодами».
D+/D-
2.0V/2.0V – low power (500mA)
2.0V/2.7V – Apple iPhone (1000mA/5-watt)
2.7V/2.0V – Apple iPad (2100mA/10-watt)
2.7V/2.7V – 12-watt (2400mA, possibly used by Blackberry)
D+/D- shorted together – USB-IF BC 1.2 standard
1.2V/1.2V – Samsung devices
По повербанкам могу посоветовать TOMO V8-4 и четыре банки Panasonic, либо Xiaomi MI 10000, он дешевле, но у TOMO ёмкость получится больше, он информативней, каналы независимые, можно использовать как зарядку для банок.
Расковырял всё что смог в web версии скайпа. С авторизацией только по логину и паролю разобрался.
Принцип работы бота — выполнять команды. Не помню что я уже там реализовал, но точно помню, ping работал :)
Работал так:
me: /ping
bot: pong
И, кажется, ещё умел работать с задачами в jira.
Могу выложить исходники когда дома буду, если кому-нибудь интересно :)
Бот «расширяемый» :)
Там, кстати, нюанс один был при работе с чатами. Оказывается в скайпе можно создать чат с флагом p2p и его нельзя будет увидеть в веб версии. Не знаю можно ли сейчас так делать.