Dynamic Asterisk na PostgreSQL (cz.1)

Ostatnio a dokładniej w piątek postawiono mi zadanie stworzenie zupełnie dynamicznego rozwiązania dla platformy Asterisk (osobiście polecam ostatnią stabilną wersję o numerku 1.4.23.1). Stworzenie konfiguracji dla składownia CDR’ów w psql nie jest problemem, jednak kiedy chcemy mieć klientów sip, iax “tworzyć” zupełnie dynamicznie bez potrzeby restartowania serwera lub modułów jest to deko problem. Łącząc Asteriska z bazą danym mamy aktualnie parę możliwych sterowników baz danych: ODBCM mysql pgsql Chcąc mieć bazę jak najbardziej jak to nazywam “strict” oraz mieć ją zupełnie za darmo stwierdziłem, że idealny będzie pgsql. Wstępna konfiguracja danych potrzebnych do połączenia z bazą danych znajdują się w /etc/asterisk/res_pgsql.conf: ...

marca 7, 2009 · paramah

Rozwiązywanie problemów.

W normalnym trybie pracy, rozwiązywanie problemów w kategorii “zarabiania”, czyli w jako takiej formie wykonywania zadań zlecanych, jest po prostu niczym innym jak zrobieniem czegoś po prostu. Otrzymując zadanie, wykonujemy je bez myślenia, jak, po co, dlaczego(…) zwyczajnie tworzymy rozwiązanie. W nienormalnym trybie pracy traktujemy zadanie jako wyzwanie intelektualne i jako takie staramy się dojść do rozwiązania najbardziej optymalnego jakie tylko może istnieć. Proste porównywanie danych można wykonać na wiele sposobów, możemy zastosować metody leksykalne w celu parowania danych, możemy stosować proste i oczywiste relacje na danych, możemy w miarę oczywisty sposób stworzyć proste rekurencje w algorytmach klasyfikujących tak aby zwyczajnie zawężały swoje przestrzenie, mogą również z pomocą przyjść nam metody adaptacyjne. Wtedy praca okazuje się nawet ciekawa i w pewnym momencie potrafi w dość oczywisty sposób skierować na http://archive.ics.uci.edu/ml/, swoją drogą bardzo ciekawą lekturę, dlatego pracę czasami można zwyczajnie polubić. ...

marca 3, 2009 · paramah

Balsamizacja.

Przed momentem, w natłoku sobotnich zadań oglądając jakiś tam muzyczny kanał ujrzeliśmy z Mirelą teledysk zespołu Kombii, na co moja żona stwierdziła: To jest dopiero cud współczesnej balsamizacji, bo mówi się że Rosjanie tacy wielcy bo mają Lenina. Wielkie mi co, on tylko leży, a u nas zespół Kombii nie dość że się nie rozkłada w trakcie teledysku, to się jeszcze rusza.

marca 1, 2009 · paramah

Simple Power over Ethernet

Źródło: http://englishrussia.com/?p=642

stycznia 30, 2009 · paramah

9 – Robot killer

stycznia 27, 2009 · paramah

Techniczni solipsyści

Siedzisz sobie w pracy, która tak naprawdę ani cię już nie bawi, ani nie uczy. Otwierasz przeglądarkę, czytnik RSS, program pocztowy i zasysasz. Wlatuje w Ciebie masa informacji, czytasz zajmuje to około 10% dniówki. W tak zwanym międzyczasie ktoś zadzwoni, czegoś zechce lub po prostu powie Ci, że jest ładny lub nieładny dzień. Ty siedzisz dlalej i zastanawiasz się co tak naprawdę tu robisz. Po pierwsze zdajesz sobie sprawę, że jeszcze rok czy półtorej temu to co robisz było dla Ciebie dość ciekawe i sprawiało, że po pracy czułeś się całkiem fajnie. ...

stycznia 27, 2009 · paramah

Jak wylistować sobie miasta u pewnego dużego dostawcy usług internetowych ?

Oczywiście prezentowany sktypt jest banalny, jednak można go sobie ładnie rozbudować, niestety strony znanych mi providerów takich jak UPC i innych podobnoych są bardzo słabo zabezpieczone pod wieloma względami i oto mała prezentacja co można zrobić ze stronami “user frendly”, których jest coraz więcej. $$ #!/usr/local/bin/ruby require 'rubygems' require 'curl-multi' require 'json' curl = Curl::Multi.new towns = Array.new letters = ('a'..'z') on_success_town = lambda do |body| puts JSON.parse(body) end on_failure = lambda do |ex| puts 'Failure.' puts ex end letters.each do |letter| curl.get('http://strefaklienta.upc.pl/cckservices/rfs/city?q='+letter+'&limit=999', on_success_town, on_failure) curl.select([],[]) while curl.size > 0; end$$ W wyniku otrzymamy listę miast w zasięku sieci UPC, oczywiście można pójść kawałek dalej i otrzymać listę ulic, a nawet numery bloków dołożyć do tego googlemaps i w parę minut mamy bardzo dokładną mapkę zasięgu sieci UPC, dane na pozór mało istotne, ale jak się tak głębiej zastanowić to mogą się okazać przydatne. ...

stycznia 2, 2009 · paramah

Trafne

stycznia 2, 2009 · paramah

Stare czasy :)

stycznia 2, 2009 · paramah

Zewnętrzne repozytorium git

Od pewnego czasu zacząłem używać git’a do kontrolowania wersji, git wyparł mercurial’a. Git okazał się dla mnie bardziej elastycznym systemem zarządzania wersjami, nie wyprze on co prawda na razie subversion’a którego używam w bardzo wielu projektach, ale jak na razie dobrze sobie radzi z loklanymi projektami. W szczególności świetnie współgra z ruby on rails, w których robię coraz więcej “szybkich” projektów. Dzisiaj okazało się, że potrzebuję mieć zdalnego dostępu do repo (znowu lenistwo) stwierdziłem, że użyjemy git’a. Jak to zrobić ? ...

grudnia 27, 2008 · paramah