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.
- Zarabianie nie jest dostępne w konfiguracji All-In-One (AIO).
Omówienie instalacji
Aby dodać usługi zarabiania w dotychczasowej instalacji Apigee Edge:
- Za pomocą narzędzia
apigee-setup
zaktualizuj węzeł serwera zarządzania Apigee, aby włączyć usługi generowania przychodu, na przykład zarządzanie katalogiem, limity i powiadomienia, a także płatności 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.
- Użyj narzędzia
apigee-setup
do zaktualizowania procesora wiadomości Apigee, aby włączyć komponenty w czasie wykonywania usług generowania przychodów, na przykład zasady rejestrowania transakcji i egzekwowania 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 konfiguracji Edge nie zawiera informacji o 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 wyboru lidera ZooKeeper jeden węzeł głosujący zostanie wybrany jakoleader
. Sprawdź, czy powyższa właściwośćZK_HOSTS
określa węzeł wiodący w instalacji z wieloma centrum danych. - Jeśli włączysz uwierzytelnianie Cassandra, możesz przekazać nazwę użytkownika i hasło Cassandra, używając 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 zarabianie w topologii serwera zarządzania, która korzysta z wielu węzłów serwera zarządzania (na przykład z 13 węzłami), przed zainstalowaniem funkcji zarabiania sprawdź, czy oba węzły serwera zarządzania zostały zainstalowane.
- 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.
- Na pierwszym węźle usługi Message Processor uruchom skrypt konfiguracji w wierszu poleceń:
/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 udanej konfiguracji procesor wiadomości zostaje zaktualizowany 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 jak każdą inną organizację. Więcej informacji znajdziesz w artykule Włączanie organizacji.
- Użyj interfejsu API do obsługi zarabiania zgodnie z opisem w artykule 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ę Zarabianie:
Aby skonfigurować portal na potrzeby zarabiania, zapoznaj się z artykułem Konfigurowanie zarabiania w portalu dla deweloperów.
Dodawanie węzła serwera zarządzania do instalacji Monetyzacji
Jeśli dodasz serwer zarządzania do istniejącej instalacji Edge, musisz dodać do nowego serwera zarządzania usługi generowania przychodu 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 postaci plików PDF, możesz zintegrować funkcję zarabiania z systemem rozliczeniowym, który generuje pliki PDF lub licencjonuje obsługiwaną zewnętrzną bibliotekę PDF.
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 waluty według normy ISO (domyślnie 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
|
Organizacja grupy udziału w wyświetleniach (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 (wartość domyślna to 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 zestawienie netto ma być generowane dla poszczególnych walut (domyślnie jest 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
|
Używany przez interfejs zarządzania do wyświetlania menu dotyczącego zarabiania (domyślnie „false”). |
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 firmy za pomocą interfejsu zarządzania znajdziesz w artykule o uzyskiwaniu dostępu 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.