![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 13.10.2004 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Dawien dawno już nic nie pisałem z powodu braku czasu na PHP, więc czas najwyższy coś sklepać jeśli jest okazja i problem do rozwiązania. Na początek powiem że od kilku dni siedzę i grzebie na forum i w google aby coś wyłapać z tego, ale nic. Znalazłem kilka opcji np. mailx który jest dla Unixa, więc odpada, i niestety nic nie sprawdza się w moim przypadku. Aczkolwiek nie twierdzę że wchłonąłem wszystko co tam leży - czasami pod latarnią najciemniej ![]() Do rzeczy ... Mam własny serwer na Winde: XAMPP 1.7.3 => PHP5.3 + MySQL5.1 + Mercury4.7 Winda musi być bo jest kilka aplikacji (np. centrala tel.) które pod linuxem chodzić nie mogą. XAMPP działa szybko, stabilnie. (Muszę tylko go zaktualizować do 1.7.4) Na serwerku chodzi mały CRM do wewnętrznego obrotu danymi + kilka małych dodatków. Wyjaśnienie ... Aktualnie piszę moduł do CRMa który ma za zadanie sprawdzanie czasu reakcji (odpowiedzi na maila). Np. Klient wysyła maila, odbieramy go o godz. 10:32:56 [hh:mm:ss] Odpowiadamy na maila o: 10:35:34 [hh:mm:ss] Czyli uzyskujemy czas odpowiedzi: 2 minuty 38 sekund W oparciu o te dane mają być tworzone wykresy i statystyki do raportów dla klienta. Kod odpowiedzialny za sprawdzanie skrzynki wygląda tak:
Prosto, zwięźle i na temat. (jeśli coś można poprawić, sugestie mile widziane ![]() PROBLEM: Jak powątkować pocztę, czyli powiązać otrzymaną z wysłaną? Już robiłem ... Funkcja imap_headerinfo daje spore możliwości ale akurat nie ma tej która by mi pomogła, a przynajmniej takiej nie znalazłem. Opcje z tej funkcji typu in_reply_to, message_id, references już testowałem ale nie zawsze posiadają wpis i nie można się przez nie odwołać do powiązanego maila. Flagi mi nie pomagają bo nie posiadają żadnych dat (chyba że coś mi umyka). Sprawdzałem i porównywałem różne dane z obu skrzynek (odbiorcza i wysłane) i nie znalazłem żadnego wspólnego mianownika, którym mógłbym połączyć wiadomości. Próbowałem oprzeć system o wykorzystanie aliasu dla maila który jest sprawdzany, ale to "walka z wiatrakami". Myślałem o sprawdzaniu konkretnych odbiorców i czasów dostarczania w skrzynkach ale to niewypał. Klientów jest ogólnie 2, ale nie możemy uzależniać systemu od 1 czy kilku adresów mailowych i np. 2 domen, trzeba założyć że klient będąc na urlopie napisze maila z innego adresu i już ZONK. Nie chciałbym ... na pewno robić własnego klienta poczty bo zależy mi tylko na części korespondencji a nie całej. No chyba że to będzie tylko i TOTALNIE jedyne rozwiązanie (można zapisywać pocztę wychodzącą do bazy z czasem i analizować wszystko szczegółowo) ale wolałbym znaleźć inne rozwiązanie jeśli to możliwe ... Zastanawiałem się nad wykorzystaniem Mercury'ego z pakietu XAMPP, tak aby za pomocą jego odbierać i wysyłać pocztę, ale nie wiem czy to by do mojego CRMa można by to wykorzystać. Nie chcę tracić czasu na próby które mogą nie przynieść dobrego rezultatu. No i takim sposobem wylądowałem tu postując ![]() Wielkie dzięki z góry za wszelką pomoc. PS. Mile widziane również inne rady jeśli chodzi o IMAP'a, wiedzy nigdy za wiele ![]() Widzę że na ciężkie (względnie) tematy to tłumy się rzucają ![]() W każdym razie problem po wielogodzinnej walce 2 dni później został rozwiązany. Jak się okazało wszystko jest w manualu, a zmęczenie materiału (tj. mnie) stwarza czasami problemy w doglądaniu szczegółów. W IMAP'ie w manualu występuje taka funkcja jak imap_thread która przy odpowiednim zastosowaniu spełnia wszystkie moje wymagania ... Może się to komuś przyda. Temat do zamknięcia. Ten post edytował Nosfi 28.07.2011, 13:57:58 -------------------- <?php $Sign=Show->ToMe('Nie ma to jak zimny prysznic'); ?>
<span style="font-weight: bold;">Tools:</span> XAMPP | PHP 5 | MySQL 5 | Notepad++ |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Opcje z tej funkcji typu in_reply_to, message_id, references już testowałem ale nie zawsze posiadają wpis Hmmm, ja właśnie na tym parametrach polegam i jakoś to działa.Cytat W IMAP'ie w manualu występuje taka funkcja jak imap_thread która przy odpowiednim zastosowaniu spełnia wszystkie moje wymagania ... Nie mam akurat czasu żeby przysiąść do tej tematyki a będzie mi potrzebna... mógłbyś napisać coś więcej na ten temat?Czy jak łączysz się na konto pop, przy pomocy tych imapów, to też daje dobre wyniki ta funkcja? Z pop to w ogóle porażka bo nie ma wiadomości wysłanych. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 13.10.2004 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
Opcje z tej funkcji typu in_reply_to, message_id, references już testowałem ale nie zawsze posiadają wpis Hmmm, ja właśnie na tym parametrach polegam i jakoś to działa. No właśnie na tym testowałem na początku, i niestety wiele wątków z zewnętrznych serwerów (np. z Gmail'a) nie nadaje żadnych ID czy referencji do nagłówków, przez co zaczynamy mieć problem z powiązaniem odpowiednich wiadomości. Do wewnętrznej analizy poczty można ich użyć bo mamy kontrolę nad nagłówkami, ale jeśli przychodzi o "globalizm" to nie zawierzył bym tym informacjom. Nie mam akurat czasu żeby przysiąść do tej tematyki a będzie mi potrzebna... mógłbyś napisać coś więcej na ten temat? Czy jak łączysz się na konto pop, przy pomocy tych imapów, to też daje dobre wyniki ta funkcja? Z pop to w ogóle porażka bo nie ma wiadomości wysłanych. Na POP w ogóle nie polecam, większość funkcji nie działa. Nie testowałem imap_thread ale myślę że też będzie stwarzać problem, o ile w ogóle działać. a teraz rozwiązanie problemu dla innych ...
sprawdzamy: no a dalej jedziemy z prezentacją danych .... ja mam cos takiego (wersja uproszczona wiec moze zawierac jakis blad literowy):
dziala idealnie dla mnie, mam nadzieje ze i dla innych ja potrzebowalem to do badania czasu odpowiedzi wiec tylko aktywne watki i max 2 maile dla watku o rozbudowane wersje prosze pytac na priv Pozdrowionka dla zainteresowanych ![]() -------------------- <?php $Sign=Show->ToMe('Nie ma to jak zimny prysznic'); ?>
<span style="font-weight: bold;">Tools:</span> XAMPP | PHP 5 | MySQL 5 | Notepad++ |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat No właśnie na tym testowałem na początku, i niestety wiele wątków z zewnętrznych serwerów (np. z Gmail'a) nie nadaje żadnych ID czy referencji do nagłówków, przez co zaczynamy mieć problem z powiązaniem odpowiednich wiadomości. Kiepsko...Póki co ja nie trafiłem na takie maile, ale skoro ty trafiłeś to znaczy że są ![]() No nic, jak powrócę do tematu to jeszcze się tym pobawię. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 20:31 |