Narzędzia użytkownika

Narzędzia witryny


lms-notify.php

4.3.1. lms-notify.php

lms-notify.php umożliwia komunikację z klientami na wiele sposobów wyzwalaną różnymi zdarzeniami. Skrypt jest wielofunkcyjny - włączenie określonego zadania następuje poprzez określenie parametrem uruchomieniowym skryptu typów zadań. Do wysyłania poczty i sms-ów używane są standardowe mechanizmy dostępne w LMS.

4.3.1.1. Treść i temat wiadomości

W treści i temacie wiadomości można używać następujących zmiennych:

  • %bankaccount - zostanie zastąpione numerem rachunku do przelewu
  • %b - saldo z zanegowanym znakiem, np. 107
  • %B - saldo z prawdziwym znakiem, np. -107
  • %totalb - podobnie jak %b z uwzględnieniem wszystkich należności
  • %totalB - podobnie jak %B z uwzględnieniem wszystkich należności
  • %date-y - zostanie zastąpione aktualnym rokiem, np. 2003
  • %date-m - zostanie zastąpione aktualnym miesiącem, licząc od 1 poprzedzone 0, np. 02
  • %date_month_name - zostanie zastąpione nazwą bieżącego miesiąca, np. marzec
  • %deadline-y - zostanie zastąpione numerem roku w którym przypada termin płatności, np. 2003 (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %deadline-m - zostanie zastąpione numerem miesiąca w którym przypada termin płatności, licząc od 1 poprzedzone 0, np. 02 (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %deadline-d - zostanie zastąpione numerem dnia w którym przypada termin płatności, licząc od 1 poprzedzone 0, np. 02 (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %saldo - zostanie zastąpione aktualnym saldem klienta, np. 535
  • %totalsaldo - podobnie jak %saldo z uwzględnieniem wszystkich należności
  • %abonament - zostanie zastąpione kwotą abonamentu jaka jest do danego klienta przypisana, np. 107
  • %pin - numer PIN klienta
  • %cid - ID klienta
  • %number - numer dokumentu (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %invoice - numer dokumentu (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %value - wartość brutto na fakturze (tylko w powiadomieniu o fakturze)
  • %lastday - ostatni dzień bieżącego miesiąca, licząc od 1 poprzedzone 0, np. 31
  • %cdate-y - zostanie zastąpione rokiem w którym wystawiono dokument (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %cdate-m - zostanie zastąpione miesiącem w którym wystawiono dokument (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)
  • %cdate_d - zostanie zastąpione dniem w którym wystawiono dokument (tylko w powiadomieniu o fakturze lub nocie obciążeniowej)

Przykład 4-2. Lms-notify.php: Przykład szablonu

UWAGA! Ta wiadomość została wygenerowana automatycznie.

Uprzejmie informujemy iż na Pani/Pana koncie figuruje zaległość w opłatach za
internet w wysokości %B zł.

Jeżeli porozumieli się już Państwo z administratorami w kwestii opłaty za
bieżący miesiąc czyli %date-m %date-y roku, prosimy o
zignorowanie tej wiadomości.

W wypadku gdy uważają Państwo iż zaległość ta jest nieporozumieniem prosimy o
jak najszybszy kontakt.

Wszelkie informacje na temat Państwa rozliczeń mogą Państwo znaleźć pod
adresem http://www.naszasiec.pl/mojekonto/

Jeżeli chcieliby Państwo uregulować zaległości prosimy o kontakt:

Dział Rozliczeń ASK NaszaSiec

Gwidon Mniejważny
telefon: 0-606666666
e-mail: gwidonm@naszasiec.pl

--
Amatorska Sieć Komputerowa NaszaSiec
http://www.naszasiec.pl/
4.3.1.2. Parametry uruchomieniowe skryptu

Poniżej parametry uruchomieniowe charakterystyczne dla skryptu lms-notify.php:

  • -d, –debug wiadomości nie są wysyłane do odbiorców; pozwala na proste debugowanie skryptu.
  • -f, –fakedate=YYYY/MM/DD skrypt zakłada, że wskazana data jest datą bieżącą
  • -c, –channel=kanały_komunikacyjne_powiadomień lista oddzielonych przecinkami kanałów komunikacyjnych z listy poniżej (domyślnie: mail):
    • mail - powiadomienia mailem,
    • sms - powiadomienia sms-em,
    • www - powiadomienia przez przeglądarkę www (skrypt jest w stanie generować listy reguł zawierające adresy IP),
    • block - specjalny kanał powodujący zablokowanie komputerów, wyłączenie przy zobowiązaniach flagi „faktura” oraz zmianę statusu klienta na windykacja,
    • unblock - specjalny kanał powodujący odblokowanie komputerów, włączenie przy zobowiązaniach flagi „faktura” oraz zmianę statusu klienta na podłączony.
  • -t, –type=typy_powiadomień_oddzielone_przecinkami lista dostępnych typów powiadomień (domyślnie: wszystkie typy):
    • documents - powiadomienia o upływających terminach umów/aneksów abonenckich (liczone w oparciu o datę „do” obowiązywania dokumentu),
    • contracts - powiadomienia o upływających terminach umów/aneksów abonenckich (liczone w oparciu o maksymalną datę obowiązywania „do” dla wszystkich zobowiązań klienta),
    • debtors - powiadomienia o zadłużeniu abonentów,
    • reminder - powiadomienia abonentów o nieopłaconych fakturach,
    • invoices - powiadomienia o wystawionych fakturach,
    • notes - powiadomienia o wystawionych notach odsetkowych,
    • warnings - powiadomienia abonentów, których komputery mają włączone ostrzeżenia,
    • events - powiadomienia abonentów i użytkowników o aktywnych zdarzeniach w terminarzu (temat i treść są kopiowane bezpośrednio ze zdarzenia),
    • messages - powiadomienia o wiadomościach nadanych do klientów (ma zastosowanie wyłącznie dla kanału www)
  • -s, –section=nazwa_sekcji_konfiguracyjnej nazwa sekcji konfiguracyjnej LMS z której ładowane są ustawienia skryptu (najpierw pod uwagę brane są ustawienia przechowywane w bazie danych/interfejsie użytkownika LMS, zaś w drugiej kolejności z pliku lms.ini) - domyślnie: notify
4.3.1.3. Konfiguracja

Konfigurację konta SMTP oraz backendu SMS określamy standardowymi sekcjami konfiguracyjnymi LMS, tj. odpowiednio mail i sms. Wszystkie ustawienia składają się z dwóch członów oddzielonych znakiem podkreślenia („_”):

  • nazwy typu powiadomienia,
  • ustawienia.

Przykład: ustawienie wiadomości używanej przy powiadomieniach o wystawieniu faktur będzie miało postać invoices_message.

Poniżej opisano obsługiwane ustawienia w postaci drugiego członu nazwy ustawienia).

Nazwa Opis Wartość domyślna Przykład
limitLimit salda klienta wyzwalający powiadomienia0debtors_limit=-50
messageTreść wiadomości z powiadomieniem… notificationinvoices_message=Powiadomienie
subjectTemat wiadomości z powiadomieniem… notificationreminder_subject=to jest temat listu
daysLiczba dni wyzwalająca powiadomienia, np. dla contracts liczba dni od dnia dzisiejszego za które upływa ważność zobowiązania klienta o najpóźniejsze dacie obowiązywania do0contracts_days=31
fileNazwa pliku do której zapisywane są reguły z adresami IP (ma zastosowanie dla kanału powiadomień www)/etc/rc.d/messages.shmessages_file=/etc/rc.d/rc.messages.sh
headerWiersz nagłówka pliku w którym są zapisywane reguły z adresami IP (ma zastosowanie dla kanału powiadomień www)#!/bin/bash\n\nipset flush $type\nmessages_header=#!/bin/bash\n\nPATH=„/bin:/sbin:/usr/bin:/usr/sbin”\n\nipset create messages_tmp hash:net\n„
ruleReguła z adresem IP - symbol specjalny %i za który podstawiany jest adres IP komputera klienckiego (ma zastosowanie dla kanału powiadomień www)ipset add … %i\nmessages_rule=ipset add messages_tmp %i\n
footer(ma zastosowanie dla kanału powiadomień www)pustymessages_footer=ipset swap messages_tmp messages\nipset destroy messages_tmp\n

Poniżej przedstawiono ustawienia niezależne od typu powiadomienia.

Nazwa Opis Wartość domyślna Przykład
mailfrom (wymagana dla kanału mail)Adres e-mail z którego zostanie wysłany e-mail. Proszę pamiętać, że na niektórych MTA (np. exim) konto to musi istnieć w systemie.pustamailfrom=info@firma.pl
mailfname (opcjonalny)Nazwa nadawcy maila.pustamailfname=Administratorzy
smtp_host (opcjonalny)Serwer SMTP, przez który ma zostać wysłana wiadomość.pustysmtp_host=smtp.firma.pl
smtp_port (opcjonalny)Port serwera SMTPpustysmtp_port = 25
smtp_auth (opcjonalny)Sposób autoryzacji. Dozwolone wartości: LOGIN, PLAIN, CRAM-MD5, NTLM.pustasmtp_auth=PLAIN
smtp_user (opcjonalny)Login do autoryzacji SMTP.pustysmtp_user=admin
smtp_pass (opcjonalny)Hasło do konta zdefiniowanego w opcji smtp_user.pustesmtp_pass=password
debug_email (opcjonalny)Adres e-mail do debugowania. Gdy ustawiony, cała poczta zostaje wysłana na dany email zamiast do klientów. Przydatne do debugowania i sprawdzania czy wszystko działa OK.nie ustawionydebug_email=user@firma.pl
service (opcjonalny)Nazwa backendu sms, który ma być używany do wysyłki sms-ówpustyservice=smstools
debug_phone (opcjonalny)Numer telefonu na który mają być wysyłane wszystkie sms-y (zamiast do klientów)pustydebug_phone=666666666

Uwaga! Brak ustawień smtp_… powoduje użycie ustawień z sekcji konfiguracyjnej mail.
Brak ustawienia service powoduje wysyłkę sms-ów w oparciu o domyślny backend sms-owy określony w sekcji konfiguracyjnej sms.

lms-notify.php.txt · ostatnio zmienione: 2017/12/04 22:32 przez chilek