Usługi zarabiania to rozszerzenie Apigee Edge, dlatego nie działa jako samodzielny proces. Działa w ramach dowolnej istniejącej konfiguracji Apigee Edge, z wyjątkiem konfiguracji All-In-One (AIO). Nie możesz zainstalować usług zarabiania w konfiguracji AIO.
Wymagania dotyczące zarabiania
- Jeśli instalujesz Monetyzację w topologii Edge, która korzysta z wielu węzłów serwera zarządzania, na przykład z 13 węzłami, przed zainstalowaniem Monetyzacji musisz zainstalować oba węzły serwera zarządzania Edge.
- Aby zainstalować funkcję Monetization on Edge, w której instalacja Edge ma wiele węzłów Postgres, węzły Postgres muszą być skonfigurowane w trybie mastera/gotowego. Nie możesz zainstalować Monetization na Edge, jeśli masz wiele węzłów głównych Postgres. Więcej informacji znajdziesz w artykule Konfigurowanie replikacji typu master-standby w przypadku PostgreSQL.
- Generowanie przychodu jest niedostępne w konfiguracji All-In-One (AIO).
Omówienie instalacji
Poniższe kroki pokazują, jak dodać usługi zarabiania do istniejącej instalacji Apigee Edge:
- Użyj narzędzia
apigee-setup
, aby zaktualizować węzeł serwera zarządzania Apigee i włączyć usługi zarabiania, na przykład zarządzanie katalogiem, konfigurację limitów i powiadomień, rozliczenia i raportowanie.Jeśli masz wiele węzłów serwera zarządzania, na przykład instalację z 13 węzłami, przed zainstalowaniem funkcji zarabiania musisz zainstalować oba węzły serwera zarządzania brzegiem.
- Za pomocą narzędzia
apigee-setup
zaktualizuj procesor wiadomości Apigee, aby włączyć komponenty środowiska wykonawczego usług zarabiania, takie jak zasada rejestrowania transakcji czy egzekwowanie limitów. Jeśli masz wiele usług przetwarzania wiadomości, zainstaluj funkcję zarabiania na wszystkich z nich. - Przeprowadź proces wdrażania funkcji zarabiania w przypadku organizacji Edge.
- Skonfiguruj portal usług dla programistów Apigee (lub po prostu portal) na potrzeby zarabiania. Więcej informacji znajdziesz w artykule Konfigurowanie funkcji zarabiania w Portalu deweloperów.
Tworzenie pliku konfiguracji dyskretnej na potrzeby generowania przychodu
Poniżej znajduje się przykładowy plik konfiguracji w trybie cichym dla instalacji funkcji Monetyzacja. W razie potrzeby edytuj ten plik zgodnie z konfiguracją. Użyj opcji -f, aby dołączyć plik setup.sh.
# Edge configuration properties # Specify IP address or DNS name of node. IP1=192.168.1.1 # Management Server, OpenLDAP, UI, ZooKeeper, Cassandra IP2=192.168.1.2 # ZooKeeper, Cassandra IP3=192.168.1.3 # ZooKeeper, Cassandra IP4=192.168.1.4 # Router, Message Processor IP5=192.168.1.5 # Router, Message Processor IP6=192.168.1.6 # Qpid IP7=192.168.1.7 # Qpid IP8=192.168.1.8 # Postgres IP9=192.168.1.9 # Postgres # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Edge sys admin credentials ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Specify the Management Server port. APIGEE_PORT_HTTP_MS=8080 # # Monetization configuration properties. # # Postgres credentials from Edge installation. PG_USER=apigee # Default from Edge installation PG_PWD=postgres # Default from Edge installation # Specify Postgres server. MO_PG_HOST="$IP8" # Only specify one Postgres node. # Create a Postgres user for Monetization. # Default username is "postgre". # If you specify a different user, that user must already exist. MO_PG_USER=postgre MO_PG_PASSWD=moUserPWord # Specify one ZooKeeper host. # Ensure this is a ZooKeeper leader node in a multi-datacenter environment. ZK_HOSTS="$IP2" # Specify Cassandra information. # Ensure CASS_HOSTS is set to the same value as when you installed Edge. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Default is "Apigee", unless it was changed during Edge install. CASS_CLUSTERNAME=Apigee # Cassandra uname/pword required only if you enabled Cassandra authentication. # If your password uses special characters, wrap it in single quotes. # CASS_USERNAME= # CASS_PASSWORD= # Specify the region. # Default is dc-1 unless you are in a multi-datacenter environment. REGION=dc-1 # If your Edge config file did not specify SMTP information, add it. # Monetization requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y SMTPMAILFROM="My Company <myco@company.com>"
Uwagi:
- Jeśli plik konfiguracyjny Edge nie zawiera informacji SMTP, dodaj je. Zarabianie wymaga serwera SMTP.
- W przypadku instalacji w pojedynczym centrum danych węzły ZooKeeper o nieparzystej liczbie powinny być skonfigurowane jako
voters
. Jeśli liczba węzłów ZooKeeper jest parzysta, niektóre z nich zostaną skonfigurowane jakoobservers
. Podczas instalowania Edge w parzystej liczbie centrów danych niektóre węzły ZooKeeper muszą być skonfigurowane jakoobservers
, aby liczba węzłów głosujących była nieparzysta. Podczas wyborów na lidera ZooKeeper jeden węzeł wyborczy zostanie wybrany jakoleader
. Upewnij się, że usługaZK_HOSTS
powyżej określa węzeł główny w instalacji z wieloma centrami danych. - Jeśli włączysz uwierzytelnianie Cassandra, możesz przekazywać nazwę użytkownika i hasło Cassandra za pomocą tych właściwości:
CASS_USERNAME CASS_PASSWORD
Integracja usług umożliwiających generowanie przychodu ze wszystkimi serwerami zarządzającymi
Aby zintegrować zarabianie na węzłach serwera zarządzania, wykonaj podaną niżej procedurę.
- Jeśli instalujesz Monetyzację w topologii Edge, która korzysta z wielu węzłów serwera zarządzania, na przykład z 13 węzłami, przed zainstalowaniem Monetyzacji upewnij się, że zainstalowano oba węzły serwera zarządzania.
- Na węźle serwera zarządzania uruchom skrypt konfiguracji:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
Opcja
-p mo
umożliwia zintegrowanie zarabiania.Plik konfiguracji musi być dostępny lub czytelny dla użytkownika „apigee”.
- Jeśli instalujesz funkcję zarabiania na wielu węzłach serwera zarządzania, powtórz krok 2 w drugim węźle serwera zarządzania.
Po udanej konfiguracji w bazie danych PostgreSQL zostanie utworzony schemat RDBMS dla usług zarabiania. To kończy integrację usług generowania przychodów i powiązanych z nimi komponentów z serwerem Postgres.
Integracja usług zarabiania z wszystkimi procesorami wiadomości
Aby zintegrować zarabianie we wszystkich węzłach usługi Message Processor, wykonaj podane niżej czynności.
- W wierszu polecenia w pierwszym węźle procesora wiadomości uruchom skrypt konfiguracji:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
Opcja
-p mo
umożliwia zintegrowanie zarabiania.Plik konfiguracji musi być dostępny lub czytelny dla użytkownika „apigee”.
- Powtórz tę procedurę na wszystkich węzłach usługi Message Processor.
Po pomyślnej konfiguracji usługa Message Processor zostanie zaktualizowana o usługi zarabiania. W ten sposób zakończysz integrację usług generowania przychodów i powiązanych z nimi komponentów z procesorami wiadomości.
Wprowadzenie do zarabiania
Aby utworzyć nową organizację i włączyć zarabianie:
- Utwórz organizację tak samo jak każdą nową organizację. Więcej informacji znajdziesz w artykule o rejestrowaniu organizacji.
- Użyj interfejsu API do zarządzania monetyzacją, zgodnie z opisem w sekcji Włączanie zarabiania w organizacji. Aby to zrobić, musisz mieć uprawnienia administratora systemu.
Gdy następnym razem zalogujesz się w interfejsie Edge, w menu najwyższego poziomu organizacji zobaczysz pozycję Monetyzacja:
Informacje o konfigurowaniu portalu do obsługi zarabiania znajdziesz w artykule Konfigurowanie zarabiania w portalu dla programistów.
Dodawanie węzła serwera zarządzania do instalacji Monetyzacji
Jeśli dodasz serwer zarządzania do istniejącej instalacji Edge, musisz dodać usługi zarabiania do nowego serwera zarządzania i skonfigurować wszystkie serwery zarządzania, aby mogły się komunikować.
Aby dodać serwer zarządzania:
- Zainstaluj nowy serwer zarządzania.
- Zainstaluj funkcję zarabiania na nowym serwerze zarządzania.
- Na oryginalnym serwerze zarządzania wywołaj to polecenie:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Ponownie uruchom pierwotny serwer zarządzania:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Na nowym serwerze zarządzania wywołaj te polecenia:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Ponownie uruchom nowy serwer zarządzania:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Dodatkowa konfiguracja
Przesyłanie dokumentów rozliczeniowych w postaci plików PDF
Monetyzacja wyświetla dokumenty rozliczeniowe użytkownikom w formacie HTML. Aby przesyłać dokumenty rozliczeniowe w formacie PDF, możesz zintegrować Monetyzację z systemem rozliczeniowym, który umożliwia generowanie plików PDF, lub licencjonować obsługiwaną bibliotekę plików PDF innej firmy.
Skonfiguruj ustawienia organizacji
Aby dodać lub zaktualizować atrybuty organizacji, możesz użyć żądania PUT
, jak pokazano w tym przykładzie:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT
Zarabianie działa zgodnie z ustawieniami organizacji. Na przykład:
{ ... "displayName": "Orgnization name", "name": "org4", "properties": { "property": [ ... { "name": "MINT_CURRENCY", "value": "USD" }, { "name": "MINT_COUNTRY", "value": "US" }, { "name": "MINT_TIMEZONE", "value": "GMT" } ] } }
Tabela poniżej zawiera atrybuty na poziomie organizacji, które są dostępne do konfigurowania organizacji menniczej.
Atrybuty | Opis |
---|---|
MINT_TAX_MODEL
|
Akceptowane wartości to „DISCLOSED”, „UNDISCLOSED”, „HYBRID” (wartość domyślna to null). |
MINT_CURRENCY
|
Kod ISO waluty (domyślnie ma wartość null) |
MINT_TAX_NEXUS
|
Zakład podatkowy (wartość domyślna to wartość null) |
MINT_DEFAULT_PROD_TAX_CATEGORY
|
Domyślna kategoria podatkowa produktu (domyślnie wartość null) |
MINT_IS_GROUP_ORG
|
IS group organization (domyślnie „false”) |
MINT_HAS_BROKER
|
Ma błąd (wartość domyślna to false) |
MINT_TIMEZONE
|
Strefa czasowa (domyślnie null) |
MINT_TAX_ENGINE_EXTERNAL_ID
|
Identyfikator mechanizmu podatkowego (domyślnie puste) |
MINT_COUNTRY
|
Kraj organizacji (domyślnie wartość null) |
MINT_REG_NO
|
Numer rejestracyjny organizacji. W Wielkiej Brytanii jest on inny niż numer identyfikacji podatkowej (domyślnie wartość null) |
MINT_BILLING_CYCLE_TYPE
|
"PRORATED", "CALENDAR_MONTH" (wartość domyślna to "CALENDAR_MONTH") |
MINT_SUPPORTED_BILLING_TYPE
|
„PREPAID”/„POSTPAID”/„BOTH” (domyślnie „PREPAID”) |
MINT_IS_SEPARATE_INV_FOR_FEES
|
Wskazuje, czy należy wygenerować osobną fakturę za opłaty (wartość domyślna to „false”). |
MINT_ISSUE_NETTING_STMT
|
Wskazuje, czy należy wystawić oświadczenie o rozrachunku (wartość domyślna to „false”). |
MINT_NETTING_STMT_PER_CURRENCY
|
Wskazuje, czy należy generować zestawienie salda w poszczególnych walutach (wartość domyślna to „false”). |
MINT_HAS_SELF_BILLING
|
Wskazuje, czy organizacja ma własną metodę rozliczeń (wartość domyślna to „false”). |
MINT_SELF_BILLING_FOR_ALL_DEV
|
Wskazuje, czy organizacja ma włączone samoobsługowe rozliczenia dla wszystkich deweloperów (wartość domyślna to „false”). |
MINT_HAS_SEPARATE_INV_FOR_PROD
|
Wskazuje, czy organizacja ma osobną fakturę dla każdego produktu (wartość domyślna to „false”). |
MINT_HAS_BILLING_ADJUSTMENT
|
Wskazuje, czy organizacja obsługuje korekty płatności (domyślnie „false”). |
features.isMonetizationEnabled
|
Służy do wyświetlania menu dotyczącego zarabiania (domyślnie „fałsz”) w interfejsie zarządzania |
ui.config.isOperator
|
Używany przez interfejs zarządzania do wyświetlania dostawcy jako operatora lub organizacji (wartość domyślna to „true”). |
Informacje o konfigurowaniu ustawień organizacji biznesowej za pomocą interfejsu zarządzania znajdziesz w artykule Dostęp do funkcji zarabiania w Edge.
Limity zarabiania
Aby egzekwować limity zarabiania, dodaj do proxy interfejsu API zasadę sprawdzania limitów zarabiania. Zasady te są uruchamiane w takich przypadkach:
- Deweloperzy, którzy uzyskują dostęp do interfejsu API z możliwością zarabiania, nie są zarejestrowani lub nie wykupili abonamentu.
- Deweloper przekroczył liczbę transakcji w ramach subskrybowanego planu cenowego.
- Osiągnięto saldo konta przedpłaconego lub limit kredytowy powiązanego z kontem.
Zasady sprawdzania limitów zarabiania powodują błędy i blokują wywołania interfejsu API w sytuacjach takich jak te wymienione powyżej. Zasady rozszerzają zasady dotyczące zgłaszania awarii, a możesz dostosować zwracany komunikat. Odpowiednie warunki są określane na podstawie zmiennych biznesowych.
Więcej informacji znajdziesz w artykule Efektywne egzekwowanie limitów zarabiania w przypadku proxy interfejsu API.