Protože je už po aprílu, můžou strahováci opět zveřejnit program další Virtuální Bastlírny, aniž by připravená témata působila dojmem, že jde o žert. Vězte tedy, že již v úterý 7. dubna od 20:00 proběhne VB, kde se setkají bastlíři, technici, učitelé i nadšenci do techniky a kde i vy se můžete zapojit do družného hovoru, jako by všichni seděli u pomyslného piva. Co mají bastlíři tento měsíc na srdci? Pravděpodobně by nás musel zasáhnout meteorit
… více »Byla vydána verze 26.1 aneb čtvrtletní aktualizace open source počítačového planetária Stellarium (Wikipedie, GitHub). Vyzkoušet lze webovou verzi Stellaria na Stellarium Web.
VOID (Video Object and Interaction Deletion) je nový open-source VLM model pro editaci videa, který dokáže z videí odstraňovat objekty včetně všech jejich fyzikálních interakcí v rámci scény (pády, kolize, stíny...) pomocí quadmaskingu (čtyřhodnotová maska, která člení pixely scény do čtyř kategorií: objekt určený k odstranění, překrývající se oblasti, objektem ovlivněné oblasti a pozadí scény) a dvoufázového inpaintingu. Za projektem stojí výzkumníci ze společnosti Netflix.
Design (GitHub) je 2D CAD pro GNOME. Instalovat lze i z Flathubu. Běží také ve webovém prohlížeči.
Příspěvek na blogu herního enginu Godot představuje aplikaci Xogot přinášející Godot na iPad a iPhone. Instalovat lze z App Storu. Za Xogotem stojí Miguel de Icaza (GitHub) a společnost Xibbon.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Ahoj, hledám nějaký sms klient který by se dokázal přihlásit pomoci hesla + jména na t-zone a zaslat sms opět na T-Mobile číslo. Program sms nemá v sobě přidanou možnost se přihlásit, a gui program Esmska je mi na nic, jelikož do něj nemohu poslat zprávu zkrz konzoli. Mátě nějaký tip na program, nebo na to jak si udělat skript využívajicí třeba wget tak, aby se přihlásil a vyplnil všechny hodnoty a poslat sms?
pěkný večer, Indiánský lotr
Řešení dotazu:
Tak to zkouším, ale nedokážu se dostat ani přes login, sms-tzone.sh, problém je že příliš nerozumím atributům v php jak jsou zapsány a s wget-em také nemám příliš mnoho zkušeností. Navíc si nejsem jistý jestli používám správné linky t-mobile.
Nepokročil jsem, stále nevím jaké parametry zadat do --post-data při přihlašování a nejen to 
Script:
#!/bin/bash COOKIEFILE=.session JMENO="xxxxxxxxx" HESLO="000000000" CISLO="+420605000000" ZPRAVA="Test message" WEBLOGIN="https://login.client.tmo.cz/.gang/ASK_LOGIN_CZ" SENTSMS="https://sms.client.tmo.cz/closed.jsp" LOGOUT="https://login.client.tmo.cz/um/cs/logout.jsp" wget --save-cookies $COOKIEFILE --keep-session-cookies $WEBLOGIN -q -O /dev/null --no-check-certificate wget --load-cookies $COOKIEFILE --keep-session-cookies $WEBLOGIN --post-data="username=$JMENO&password=$HESLO&nextURL=checkStatus.jsp&errURL=clickError.jsp&submit=P�ihl�sit" -q -O /dev/null --no-check-certificate sleep 4 wget --load-cookies $COOKIEFILE --keep-session-cookies $SENTSMS -O - -q --no-check-certificate --post-data="recipients=$CISLO&mtype=mtype_0&text=$ZPRAVA&submit=Odeslat" sleep 8 wget --load-cookies $COOKIEFILE $LOGOUT -q -O /dev/null --no-check-certificate
Jelikož jsem dnes stál nad stejným problémem a řešení Petra K. v Perlu, které se tu nachází je podle mne dost elegantní. Nicméně neběhá v Debianu Lennym bez nejnovější verze jedné perlovské knihovny (kterou si však nemůžu dovolit updatovat). Z tohoto důvodu jsem byl nucen si dát dohromady jiné řešení, které bude běhat pokud možno všude.
Šel jsem cestou mého oblíbeného bashe a několika standardních utilitek (sed, wget apod.). Snažil jsem se ošetřit všechny možné chyby, co mne napadly a na které jsem narazil. Nicméně nejsem žádný guru, takže budu jedině rád za jakoukoli konstruktivní kritiku.
Zde je mé řešení, třeba se bude někomu hodit:
#!/bin/bash
# **********************************
# * T-zones-sms *
# * Written by Zdenek Zamecnik *
# * December/2010 *
# **********************************
username=xxx
password=yyy
agent="Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101206 Linux Firefox/3.6.13"
cookies="/tmp/t-zones-sms.cookies"
timer="/tmp/t-zones-sms.timer"
login_url="https://www.t-mobile.cz/.gang/login/tzones"
logout_url="https://www.t-mobile.cz/.gang/logout/tzones"
sms1_url="https://sms.client.tmo.cz/"
sms2_url="https://sms.client.tmo.cz/closed.jsp"
lock="/tmp/t-zones-sms.lock"
function log()
{
time=$(date +"%x %X")
if [ -z $quiet ]; then
echo "$1"
fi
echo "$1" | logger -t "t-zones-sms"
}
if [ $1 == "--help" ]; then
echo 'Usage: t-zones-sms -n <phone number> -m "<message>" [OPTIONS]'
echo ' -n Comma delimited phone numbers of recipients'
echo ' -m Content of message'
echo ' -q Quiet, without progress information'
echo ' -d Send on display only'
echo ' -c Send delivery confirmation'
echo ' -h Save history in t-zones'
exit 1
fi
type=0
confirm=0
history=""
while getopts "m:n:qdch" option; do
case "$option" in
n) recipients=$OPTARG;;
m) message="$OPTARG";;
q) quiet=y;;
d) type=1;;
c) confirm=1;;
h) history="&history=on";;
*) echo "Bad option: $option"
exit 1
;;
esac
done
if [ -z "$recipients" ]; then
echo "Missing argument -n"
exit 1
fi
if [ -z "$message" ]; then
echo "Missing argument -m"
exit 1
fi
wait=n
while [ $(pgrep $(echo $0 | sed 's/.*\///') | wc -l) -gt 1 ] && [ -f $lock ]; do
if [ "$wait" == "n" ]; then
log "Waiting because there is some concurrent sending"
wait=y
fi
sleep 1
done
touch $lock
message=$(echo $message | sed -e's/./&\n/g' -e's/ /%20/g' | grep -v '^$' | while read CHAR; do test "${CHAR}" = "%20" && echo "${CHAR}" || echo "${CHAR}" | grep -E '[-[:alnum:]!*.'"'"'()]|\[|\]' || echo -n "${CHAR}" | od -t x1 | tr ' ' '\n' | grep '^[[:alnum:]]\{2\}$' | tr '[a-z]' '[A-Z]' | sed -e's/^/%/g'; done | sed -e's/%20/+/g' | tr -d '\n')
log "Connecting to t-zones"
wget $login_url \
--save-cookies=$cookies \
-U "$agent" \
--keep-session-cookies -O /dev/null -q
logged=$(wget $login_url \
--load-cookies=$cookies \
--save-cookies=$cookies \
-U "$agent" \
--post-data="username=$username&password=$password" \
--keep-session-cookies -O - -q | grep "$username" | wc -l)
if [ $logged -gt 0 ]; then
log "Successfully logged in"
fi
wget $sms1_url \
--load-cookies=$cookies \
--save-cookies=$cookies \
-U "$agent" \
--keep-session-cookies \
-O /dev/null -q
if [ -f $timer ]; then
wait=n
while [ $(($(date +%s)-$(cat $timer))) -lt 30 ]; do
if [ "$wait" == "n" ]; then
log "Waiting due to operator limits"
wait=y
fi
sleep 2
done
fi
log "Sending message to $recipients"
counter=$(wget $sms2_url --load-cookies=$cookies --save-cookies=$cookies -U "$agent" --keep-session-cookies -O - -q | sed '/name="counter"/!d' | sed 's/.*value="//;s/".*//')
sent=$(wget $sms2_url \
--load-cookies=$cookies \
--save-cookies=$cookies \
-U "$agent" \
--post-data="counter=$counter&submit=Send&mtype=$type&confirmation=$confirm$history&text=$message&recipients=$recipients" \
--keep-session-cookies \
-O - -q | sed '/SMS zpráv[ay] byl[ay] odeslán[ay]/!d' | wc -l)
wget $logout_url \
--load-cookies=$cookies \
-U "$agent" \
-O /dev/null -q
rm $cookies
rm $lock
date +%s > $timer
if [ $sent -eq 1 ]; then
log "Message was sent"
else
log "Sending failed!"
exit 1
fi
GNU bash, version 3.1.17(2)-release (i486-slackware-linux-gnu) GNU sed version 4.1.5 GNU Wget 1.11.4 GNU grep 2.5.3Jde v Debianu nainstalovat novou verzi knihovny jen pro uživatele pod kterým skript poběží?
GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) GNU sed version 4.1.5 GNU Wget 1.11.4 GNU grep 2.5.3Na čem ti to umírá? Tak to jsem netušil, že v perlu existuje možnost načíst knihovny z jiného umístění...určitě by to tak šlo řešit. Btw přišel si na to, proč se ti při tom posílání zamknul účet na t-zones? Mě se to totiž stalo taky. Pak jsem tam nastavil prodlevy mezi odesíláním 30 s a už se mi to nestalo. Nicméně omezení 1SMS/30s by se mělo týkat pouze veřejné SMS brány.
--2010-12-29 14:11:30-- https://sms.client.tmo.cz/
Překládám sms.client.tmo.cz… 62.141.16.84
Navazuje se spojení s sms.client.tmo.cz|62.141.16.84|:443… spojeno.
VAROVÁNÍ: certifikát pro sms.client.tmo.cz vydaný „/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=Terms of use at https://www Nalezen certifikát podepsaný sám sebou.
HTTP požadavek odeslán, program čeká na odpověď… 302 Moved Temporarily
Přesměrováno na: http://sms.t-zones.cz/open.jsp [následuji]
--2010-12-29 14:11:30-- http://sms.t-zones.cz/open.jsp
Překládám sms.t-zones.cz… 62.141.16.106
Navazuje se spojení s sms.t-zones.cz|62.141.16.106|:80… spojeno.
HTTP požadavek odeslán, program čeká na odpověď… 200 OK
Délka: neudáno [text/html]
Ukládám do: „open.jsp“.
[ <=> ] 25 801 110K/s za 0,2s
2010-12-29 14:11:31 (110 KB/s) – „open.jsp“ uložen [25801]
Sending message to 732123456
--2010-12-29 14:11:31-- https://sms.client.tmo.cz/closed.jsp
Překládám sms.client.tmo.cz… 62.141.16.84
Navazuje se spojení s sms.client.tmo.cz|62.141.16.84|:443… spojeno.
VAROVÁNÍ: certifikát pro sms.client.tmo.cz vydaný „/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=Terms of use at https://www
Nalezen certifikát podepsaný sám sebou.
HTTP požadavek odeslán, program čeká na odpověď… 302 Found
Přesměrováno na: https://www.t-mobile.cz/.gang/mdh/https://sms.client.tmo.cz/closed.jsp [následuji]
--2010-12-29 14:11:31-- https://www.t-mobile.cz/.gang/mdh/https://sms.client.tmo.cz/closed.jsp
Překládám www.t-mobile.cz… 62.141.16.104
Navazuje se spojení s www.t-mobile.cz|62.141.16.104|:443… spojeno.
VAROVÁNÍ: certifikát pro www.t-mobile.cz vydaný „/O=VeriSign Trust Network/OU=VeriSign, Inc./OU=VeriSign International Server CA -
Autoritu vydavatele nelze lokálně ověřit.
HTTP požadavek odeslán, program čeká na odpověď… 302 Found
Přesměrováno na: /.gang/cookiechecker?/.gang/mdh/https://sms.client.tmo.cz/closed.jsp [následuji]
--2010-12-29 14:11:31-- https://www.t-mobile.cz/.gang/cookiechecker?/.gang/mdh/https://sms.client.tmo.cz/closed.jsp
Využívám existující spojení s www.t-mobile.cz:443.
HTTP požadavek odeslán, program čeká na odpověď… 200 OK
Délka: 5882 (5,7K) [text/html]
Ukládám do: „STDOUT“.
[========================================================================================>] 5 882 --.-K/s za 0,006s
2010-12-29 14:11:31 (1019 KB/s) – „-“ uloženo [5882/5882]
V uloženém souboru cookiechecker je pak napsáno: Nejsou povolené Cookies v prohlížeči. Kód chyby: G 707 V open.jsp je pak html kód z veřejné brány, bez přihlášení.
Napadá mě, jestli nemohla vzniknout chyba při kopírování skriptu na abíčko a pak zpátky do textového editoru. Můžeš vložit skript jako přílohu?
Ještě se chci zeptat. Jak řešís wget a certifikáty? --no-check-certificate jsem ve skriptu nenašel.
Děkuji moc za skript, ačkoliv jsem vyplnil jméno, heslo, m. číslo, nastavil soubor jako spustitelný, zavolám jej, tak se vůbec nic nestane. Odhaduju že mi nejspíš chybí nějaký plugin do perlu. Používám OS: Ubuntu 10.04.1, perl 5.10.1, přidal jsem pluginy: libcompress-raw-zlib-perl libtest-www-mechanize-perl. Vypis aptitude search perl: zde . Mohu se zeptat jak se skript u tebe chová? Jak rychle přišla sms, či jakou používáš distribuci? Zkoušel jsem to teď i pod slackware, debian lenny i gentoo, nejde, něco dělám špatně.
SMS z T-mobile posílat lze normálně, výpadek, etc podobného nemají.
perlbug vypisuje:
Unmatched ( in regex; marked by <-- HERE in m/^$bot->cookie_jar( <-- HERE / at /usr/bin/perlbug line 165, <> line 8.
# cpan cpan[1]> install WWW::Mechanize Compress::ZlibSkript se přihlásí, stáhne formulář a z něj zjistí proměnou "counter". Pak se snaží odeslat sms, ale to ještě nefunguje :^) Někde tam mám chybu a zatím nevím kde.
funguje náramně.
Vylepšení jsou fajn, hlavně kontrolní podmínky, dále se určitě hodí místo čísla používat jméno či přezdívku.
$jmeno = $opt{n};
my $cislo = `cat cisla.txt | grep -i $jmeno | awk '{ print $2 }'`;
my $zprava = {
'counter' => $counter ,
'recipients' => $cislo,
txt soubor musi mit tvar:
mira 605000000
honza 731000000
Mimochodem děkuji že jsi to udělal v perlu, alespoň jsem se trošku přiučil, jelikož perl, python i bash mě dost zajímají. Ale zatím dokážu udělat jen velmi jednoduché skripty. gn 
Nefunguje protože stránky jsou od roku 2011 už jiné. Opravit to nedokážu a ten kto to umí se na to vyprdne (chce to udělat script kterej využije brány esmsky) vodafonpark atd. brána se aktualizuje s programem a script využije aktualizovanou bránu.
echo "TEST SMS" | centericq-utf8 -s sms -n 'tel.číslo'Output byl:
SMS pro 'tel. číslo' byl přidán do frontyTel. číslo jsem zkoušel s prefixem +420 i bez. Dělám to špatně?
rekl bych, ze prikaz mate ok. je potreba pridat telefonni kontakt do kontaktlistu. odeslani probehne po pripojeni do icq site, proto jsem centericq nechal furt bezet na odpojeny screene.
ted jsem po letech otestoval a smska mi dorazila v poradku na mobilni numero s mezinarodnim prefixem.
Tiskni
Sdílej: