ďťż
 
Postgres + system pocztowy. ďťż
 
Postgres + system pocztowy.
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Postgres + system pocztowy.



T. - 15-06-2006 00:33
Postgres + system pocztowy.
  witam,

Czy udało komus sie kiedys powiązać bazę danych PostgreSQL z jakimkolwiek
systemem pocztowym na zasadzie: pojawia sie określony rekord w bazie danych,
wtedy jest wysyłany okreslony tekst pod wskazany adres mailowy. Będe bardzo
wdzięczny za pomoc.

Pozdrawiam,
T.

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl





hubert depesz lubaczewski - 15-06-2006 00:33

  T. wrote:
> Czy udało komus sie kiedys powiązać bazę danych PostgreSQL z jakimkolwiek
> systemem pocztowym na zasadzie: pojawia sie określony rekord w bazie
> danych, wtedy jest wysyłany okreslony tekst pod wskazany adres mailowy.
> Będe bardzo wdzięczny za pomoc.

może powiedz jaki masz problem.
osobiście nic takiego nie robiłem i osobiście uważam, że to kiepski pomysł,
ale technologicznie nie widzę problemu by to zrobić.
potrzebny ci będzie:
1. umiejętność pisania triggerów
2. jakiś język do procedur - ale koniecznie untrusted - np. c, pl/pythonu,
pl/tclu, pl/perlu
3. trochę czasu.

depesz

--
http://www.depesz.com/ - nowy, lepszy depesz




Piotr 'piter' Hlawski - 15-06-2006 00:33

  hubert depesz lubaczewski wrote:

> T. wrote:
>> Czy udało komus sie kiedys powiązać bazę danych PostgreSQL z jakimkolwiek
>> systemem pocztowym na zasadzie: pojawia sie określony rekord w bazie
>> danych, wtedy jest wysyłany okreslony tekst pod wskazany adres mailowy.
>> Będe bardzo wdzięczny za pomoc.
>
> może powiedz jaki masz problem.
> osobiście nic takiego nie robiłem i osobiście uważam, że to kiepski
> pomysł, ale technologicznie nie widzę problemu by to zrobić.
[...]

Dlaczego kiepski? Ja tak mam zrobiony trigger w pl/perlu który wysyła mail w
przypadku zmiany statusu pewnych rekordów lub pojawieniu się nowych. Działa
to sprawnie, nie ma żadnych problemów.
Fakt faktem, mogły by powstać nieścisłości w przypadku większych transakcji
i ewentualnego ROLLBACK (wysłanego maila nie ROLLBACK'ujesz ;), jednak w
moim naprawdę prostym INSERT/UPDATE ta procedura spełnia swoje zadanie
bardzo dobrze.

--
..:: Piter // phlawski$gmail,com // gg: 4534287 ::.
Chuck Norris ostatnio zapisał się na lekcje karate dla początkujących, żeby
móc "przypadkowo" spuścić manto małym dzieciom




T. - 15-06-2006 00:33

  > hubert depesz lubaczewski wrote:
>
> > T. wrote:
> >> Czy udało komus sie kiedys powiązać bazę danych PostgreSQL z jakimkolwiek
> >> systemem pocztowym na zasadzie: pojawia sie określony rekord w bazie
> >> danych, wtedy jest wysyłany okreslony tekst pod wskazany adres mailowy.
> >> Będe bardzo wdzięczny za pomoc.
> >
> > może powiedz jaki masz problem.
> > osobiście nic takiego nie robiłem i osobiście uważam, że to kiepski
> > pomysł, ale technologicznie nie widzę problemu by to zrobić.
> [...]
>
> Dlaczego kiepski? Ja tak mam zrobiony trigger w pl/perlu który wysyła mail w
> przypadku zmiany statusu pewnych rekordów lub pojawieniu się nowych. Działa
> to sprawnie, nie ma żadnych problemów.
> Fakt faktem, mogły by powstać nieścisłości w przypadku większych transakcji
> i ewentualnego ROLLBACK (wysłanego maila nie ROLLBACK'ujesz ;), jednak w
> moim naprawdę prostym INSERT/UPDATE ta procedura spełnia swoje zadanie
> bardzo dobrze.
>
> --
> .:: Piter // phlawski$gmail,com // gg: 4534287 ::.
> Chuck Norris ostatnio zapisał się na lekcje karate dla początkujących, żeby
> móc "przypadkowo" spuścić manto małym dzieciom

ale wsyła tylko na jeden mail ? chodzi mi o to ze jezeli nastapi okreslone
zdarzenie w bazie, czyli trafi tam odpowiedni rekord to klient zostanie o tym
poinformowany. Oczywiscie chcialbym aby byly dwie zmienne, adres pocztowy w
zaleznosci od klienta i w standardowym tekscie zmiana nazwy towaru. Czyli
system pocztowy jako tako nie jest potrzebny, wystarczy napisac okreslony
trigger ?

T.
>

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl





Piotr 'piter' Hlawski - 15-06-2006 00:34

  T. wrote:

> ale wsyła tylko na jeden mail ?

Nie, w zależności od pewnych warunków na jeden insert/update generuje jeden
lub dwa maile do określonych osób

> chodzi mi o to ze jezeli nastapi okreslone
> zdarzenie w bazie, czyli trafi tam odpowiedni rekord to klient zostanie o
> tym poinformowany.

oczywiście o to też mi chodziło ;)

> Oczywiscie chcialbym aby byly dwie zmienne, adres
> pocztowy w zaleznosci od klienta i w standardowym tekscie zmiana nazwy
> towaru. Czyli system pocztowy jako tako nie jest potrzebny, wystarczy
> napisac okreslony trigger ?

Potrzebny jest trigger i potrzebny jest jakiś sposób wygenerowania maila i
wysłania go. Ja użyłem Perl'a i modułu Mail-Sender w którym można
skonfigurować jakiego SMTP będzie używał. Tutaj zasadniczo jest dowolność,
równie dobrze można słać mail'e mutt'em (+ nbsmtp jeśli się nie ma na
maszynie z bazą SMTP) i mieć np. ustawiony konfig dla użytkownika z jakim
chodzi postgres (.muttrc):

set sendmail="/usr/local/bin/nbsmtp -h host_smtp -f user@from"

--
..:: Piter // phlawski$gmail,com // gg: 4534287 ::.
Kiedy Chuck Norris uprawia sex z facetem, to nie dlatego, że jest gejem. To
dlatego, że skończyły mu się kobiety.




Antoni Jakubiak - 15-06-2006 00:34

  >>> osobiście nic takiego nie robiłem i osobiście uważam, że tokiepski
>>> pomysł, ale technologicznie nie widzę problemu by to zrobić.
>> [...]
>>
>> Dlaczego kiepski? Ja tak mam zrobiony trigger w pl/perlu który wysyła mail w
>
> ale wsyła tylko na jeden mail ? chodzi mi o to ze jezeli nastapi okreslone
> zdarzenie w bazie, czyli trafi tam odpowiedni rekord to klient zostanieo tym
> poinformowany. Oczywiscie chcialbym aby byly dwie zmienne, adres pocztowy w
> zaleznosci od klienta i w standardowym tekscie zmiana nazwy towaru. Czyli
> system pocztowy jako tako nie jest potrzebny, wystarczy napisac okreslony
> trigger ?

Tak.

Pomysłe jest kiepski bo:
1. Istnieje wzorzec projektowy MVC. Umieszczanie logiki biznesowej w
bazie danych jest zawsze zlym pomyslem.
2. Wysyłanie e-maila może być czasochłonne, więc powinno być
asynchroniczne.
3. Wysyłanie e-maila może być zawodne, więc powinno
niepowodzenie powinno być zalogowane.

Antek




slawekj - 17-06-2006 00:32

  > ale wsyła tylko na jeden mail ? chodzi mi o to ze jezeli nastapi okreslone
> zdarzenie w bazie, czyli trafi tam odpowiedni rekord to klient zostanie o
> tym
> poinformowany. Oczywiscie chcialbym aby byly dwie zmienne, adres pocztowy
> w
> zaleznosci od klienta i w standardowym tekscie zmiana nazwy towaru. Czyli
> system pocztowy jako tako nie jest potrzebny, wystarczy napisac okreslony
> trigger ?
> T.

a nie zabierasz sie za to od złej strony?
Z opisu wygląda to jak składanie zamówień.
Jeśli tak, to czy nie lepiej aby kwestię poinformowania Klienta obsłużył
skrypt lub program który łączy się z bazą
aby wykonać polecenie do bazy?
Wydaję mi się że tak powinno się to robić a nie aby baza tym się zajmowała.

Pozdr.
Sławek




Grzegorz - 18-06-2006 00:44

  slawekj napisał(a):
> a nie zabierasz sie za to od złej strony?
> Z opisu wygląda to jak składanie zamówień.
> Jeśli tak, to czy nie lepiej aby kwestię poinformowania Klienta obsłużył
> skrypt lub program który łączy się z bazą
> aby wykonać polecenie do bazy?
> Wydaję mi się że tak powinno się to robić a nie aby baza tym się zajmowała.

Wlasnie.

Wydaje sie, ze o wiele lepiej byloby, aby operacja na rekordzie nie
wysylala listu, tylko wstawiala odpowiedni rekord (adres, tresc, data i
co tam jeszcze trzeba) do innej tabeli/bazy.

A inna aplikacja (sluzaca do wysylania listow i swiadoma wszystkich
niebezpieczenstw z tym zwiazanych (bledny adres, niemoznosc polaczenia
sie z serwerem SMTP, zostanie wpisanym na liste spamerow, itp.)) bedzie
wysylac sobie te listy ,,w tle'', nie blokujac pracy bazy.

--
Grzegorz
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    postgresql - int/int postgresql Select count(*) czy raczej Select count(ID) [PostgreSQL] jak =?ISO-8859-2?Q?pobra=E6_warto=B6=E6_zwracan?==?ISO-8859-2?Q?=B1_przez_funkcj=EA=3F?= [postgresql] INSERT OR UPDATE - jak =?ISO-8859-2?Q?b=EAdzie_na?==?ISO-8859-2?Q?jlepiej=3F?= [postgresql] kilka =?ISO-8859-2?Q?rekord=F3w_subquery_jako_?==?ISO-8859-2?Q?string?= [PostgreSQL] Jak =?ISO-8859-2?Q?po=B3=B1czy=E6_funkcje_z_w?==?ISO-8859-2?Q?idokiem?= Postgres - replikcja master-master Dopasowanie do "najlepszego" dopasowania :) [ PostgreSQL] Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?= =?ISO-8859-2?Q?[psql]_Polskie_t=B3umaczenie_?= =?ISO-8859-2?Q?licencji_BSD_dla_PostgreSQL=3F?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • ponland.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com