mdoff@jabbim.pl

23 marca 2010, 23:58:23

Syntezator mowy na linuksie, skrypt

Wpis na 0. poziomie w kategorii Internet.Linux.Skrypty.

Szukałem ostatnio (co prawda dość pobieżnie) jakiś informacji o polskich syntezatorach mowy na linuksa i w zasadzie oprócz Mileny nic ciekawego nie ma.
Szukając troszkę głębiej znalazłem temat na forum Slackware, Syntezator mowy - skrypt ivonka.sh.
Jako, że pierwotny link do skryptu przestał działać a on sam rozwinął się w pełnowymiarowy program, postanowiłem spróbować własnych sił i napisać swój skrypt.

Zasada jest prosta, najpierw wysyłamy zapytanie do Ivony a następnie mplayer odtwarza otrzymany link do pliku dźwiękowego. O dziwo ograniczenie do 250 znaków tekstu jest realizowane na stronie Ivony tylko przez JavaScript więc używając skryptu w zasadzie nie ma ograniczeń na długość czytanego tekstu (choć nie sprawdziłem jaki maksymalnie długi może być)

Instrukcja obsługi jest już w skrypcie, a to on: link

12 stycznia 2009, 13:39:19

Bramka email2sms

Wpis na 0. poziomie w kategorii Internet.Linux.Techblog.

Ostatnio zamówiłem kartę sim z sieci WPmobi ściągnęła mnie do niej ciekawość i 100MB darmowego transferu do wp.pl ;) Jednak sms'y poza sieć są dość drogie więc dlaczego by nie używać e-maili do komunikacji skoro są one w zasadzie za friko?

E-mail w telefonie nie jest niestety zbyt popularnym środkiem komunikacji jeśli chodzi o telefony komórkowe, na nich nadal królują sms'y. Więc jak wysłać e-mail żeby doszedł jako sms? Plus udostępnia darmową bramkę sms, wystarczy wysłać wiadomość na 48XXXYYYZZZ@text.plusgsm.pl, niewielu moich znajomych ma numer z tej sieci więc to nie rozwiązuje problemu w całości.
Nie wiem czy Era lub Orange oferują podobną usługę, gdyż mimo moich poszukiwań nie znalazłem informacji o czymś podobnym. Zacząłem więc szukać serwisów, które podobną funkcjonalność oferują, ku mojemu zdziwieniu znalazłem! Jednak ceny i brak kilku darmowych sms'ów skutecznie mnie odstraszyły.
Zainteresowałem się więc bramką smsfree.pl, oferuje ona 5 darmowych sms'ów dziennie doklejając do nich tylko "/smsfree.pl" na końcu. Dodatkowo można wykupić kredyty w stosunkowo niskiej cenie.

Mój pomysł wygląda następująco:

  1. wysyłamy e-mail na jakąś własną skrzynkę (o strukturze: tytuł: nr tel, treść: treść sms'a
  2. program odbiera e-mail
  3. program wysyła curlem zapytanie do bramki

Oczywiście to rozwiązanie ma swoje wady:

  1. potrzebny jest własny serwer (ew. konto shell)
  2. połączenie z internetem może czasem nawalić
  3. trochę długo trwa wysłanie sms'a
  4. reklama na końcu sms'a

Poniżej przedstawiam kod, który jakoś udało mi się wyklepać jestem pewien, że można to by napisać: lepiej, czytelniej, szybciej itp. (a na dodatek kod wchodzi trochę pod szablon ;p) ale mi w zupełności wystarcza bo jakoś działa. Jeśli komuś się pomysł spodoba (bo kod raczej nie ;) ) to bardzo dobrze, a jeśli nie to nic nie szkodzi bo robiłem to głównie dla siebie.

 
#!/usr/bin/python
import poplib,os
 
#login i haslo bramki
Blogin = ''
Bpass = ''
#email, haslo i adres serwera pop3
Mmail = ''
Mpass = ''
Mserver = ''
##########################################
def send_sms(number,text,id):
	curl = 'curl -s -d "numer_global='+Blogin + '&password_global='+Bpass
	curl = curl + '" http://www.smsfree.pl/index.php -c ciastek.txt > /dev/null'
	os.system(curl)
	curl = 'curl -s -b ciastek.txt -d "what=sms&kody=48&numer='+number +'&tariff='
	curl = curl + id+'&podpis=48'+Blogin+'&submit=Przeslij sms\'a&text=' + text
	curl = curl + '" http://www.smsfree.pl/index.php > /dev/null'
	os.system(curl)
 
def check():
	m = poplib.POP3(Mserver)
	m.user(Mmail)
	m.pass_(Mpass)
	num = len(m.list()[1])
	file= open('licznik','r') #licznik w trzymany w pliku na wypadek wyłączenia serwera etc..
	if (int(file.read())==int(num)):
#	print 'pusto w tej skrzynce..'
		file.close()
		return 0
	else:
#  print 'jest mail - wysylam sms'
		file.close()
		return 1
 
 
def send():
	m = poplib.POP3(Mserver)
	m.user(Mmail)
	m.pass_(Mpass)
	num = len(m.list()[1])
	numer = m.retr(num)[1][17][9:] # wycinanie numeru z tematu
	body = m.retr(num)[1][28]
	body = body[:len(body)-1] #wycinanie ostatniego znaku
	send_sms(numer,body,'1') # (z niewiadomych mi przyczyn dodaje się tam znak '=')
#  print 'sms poszedl..'
	file = open('licznik','w')
	file.write(str(num))
	file.close()
 
 
while(1): #pętla główna 
	try:
		if(check()):
			send()
	except:
		pass
	os.system('sleep 15')
 
 
 

Prawdopodobnie jeśli ten skrypt będzie używany inaczej niż w konfiguracji: poczta wp -> poczta gery.pl to nie będzie działał prawidłowo. Trzeba metodą prób i błędów sprawdzić co jest zwracane w jakiej komórce: m.retr(num)[1][].
W kodzie nie mogłem użyć biblioteki pycurl ponieważ nie jest ona zainstalowana na serwerze na którym mam konto. Oczywiście nic nie szkodzi na przeszkodzie żeby z niej skorzystać.

12 maja 2008, 16:57:31

zw-bot

Wpis na 0. poziomie w kategorii Internet.Linux.

Wpadł mi kiedyś pomysł na pewnego bota, wykorzystującego jabberowe zadoby i priorytety.

Zasada działania jest prosta: mamy bota z powiedzmy zasobem zw-bot i priorytetem 0, w momencie kiedy chcemy odejść od komputera piszemy do bota z/w i po spacji opcjonalny opis.
Bot w tym momencie zmienia priorytet na bardzo wysoki (powiedzmy 30) i kiedy ktoś do nas napisze wysyła automatyczną odpowiedź i zapisuje wiadomość od tej osoby.
Kiedy wracamy piszemy do bota: re a on wysyła nam listę wiadomości jakie otrzymaliśmy w czasie naszej nieobecności.
Napisałem takiego bota w pythonie, zdaję sobie sprawię, że kod jest dość niskiej jakości, ale chodziło mi głównie o pomysł :)

Kod - (w katalogu z programem trzeba utworzyć pusty plik log )

14 stycznia 2008, 11:54:54

Screenshot

Wpis na 0. poziomie w kategorii Internet.Komputery.Linux.

Prosty skrypt do robienia screenshota i wysyłania go na serwer img.wklej.org.

#!/bin/bash
scrot -d 3 /tmp/screeno.jpg
curl -s -F userfile=@/tmp/screeno.jpg -F upload=Upload http://img.wklej.org/upload.php | grep "Link do obrazka" |cut -c 82-
rm /tmp/screeno.jpg

Na końcu linka zostają jakieś śmieci ale już nie miałem pomysłu jak je usunąć.

25 kwietnia 2007, 21:12:55

Co za czasy (ludzie)

Wpis na 1. poziomie w kategorii Internet.Życie.

Człowiek sobie siedzi spokojnie przed komputerem i zajmuje się swoimi sprawami, czasem napisze coś do znajomych ogólnie sielanka.
A tu nagle wyskakuje ktoś z testem; "poklikash" jako, że jestem osobą cierpliwą i wyrozumiałą oraz zdolny jestem wybaczać takie kardynalne błędy zgadzałem się na zużycie chwili mojego czasu oraz bezproduktywną rozmowę. Jednak ostatnio to zaczęło mnie już poważnie denerwować, bo ile można pisać o tym samym (i dostawać b. podobne odpowiedzi). Na dodatek piszą do mnie osoby podające się za jakieś niby "dziewczyny", które mają męskie imiona w katalogu, Czyżby jacyś transwestyci? Takie rozmowy nie mają najmniejszego sensu, dlatego od dziś usuwam wszystkie swoje dane z katalogu GG i ustawiam status na friends only mam nadzieję, że to pomoże choć trochę. Najchętniej bym usunął cały ten transport, jednak używa go parę osób, na których mi zależy i one są niestety nienawracalne na lepsze rozwiązania (np. jabber).

27 lutego 2007, 11:02:04

Last.fm

Wpis na 1. poziomie w kategorii Internet.Muzyka.

Ostatnio zwróciłem uwagę na taki wynalazek jakim jest last.fm. Na początku dość sceptycznie podszedłem do tego pomysłu (sam nie wiem czemu), ale po chwili przekonałem się, że nie jest to wcale złe. Zarejestrowałem się niedawno (wczoraj), mój profil jest pod tym adresem.

♫ HIM - Close To The Flame

03 lutego 2007, 19:33:24

Pasożyt

Wpis na 1. poziomie w kategorii Internet.

Właśnie wyłączyłem flasha w Operze

04 grudnia 2006, 21:36:27

Znalazłem

Wpis na 1. poziomie w kategorii Internet.

Znalazłem darmowgo shella i jest całkiem niezły, dziwne... bo ponoć dobre darmowe shelle są jak Yeti ponoć istnieją ale nikt żadnego nie widział..

21 listopada 2006, 10:29:31

Gadu-radio bez gadu-gadu

Wpis na 1. poziomie w kategorii Internet.Linki.

Dzięki stronce www.gaduradio.yoyo.pl jest możliwe słuchanie gadu-radia bez klienta gadu-gadu na zwykłym odtarzaczu muzyki (np. winamp albo Rhythmbox).
Po podaniu numerka gg i hasła generowane jest hasło tymczasowe do serwera gadu-radia. Więc prosto można sobie posłuchać gadu-radia (czasem nawet fajne kawałki lecą :) )

Roxy Music - Oh Yeah w Gadu Radio Rock

18 października 2006, 18:25:53

Wreszcie net :D

Wpis na 1. poziomie w kategorii Internet.Ogólne.

Tak, to już dziś. Po ponad 1,5 miesiąca tp podłączyła neo 512 :D
Się normalnie tak cieszę, że nie mam siły na nich wkurzać... Teraz wpisy będą się pojawiać trochę częściej i chyba popracuję nad jakąś skórką dla tego jogga .. :)

Bad Religion - A walk

levis is proudly powered by Jogger | RSS | Design by none