Usługi zarabiania to rozszerzenie Apigee Edge, dlatego nie działa jako samodzielny proces. Działa ona w ramach dowolnej istniejącej konfiguracji Apigee Edge z wyjątkiem konfiguracji All-In-One (AIO). Usług monetyzacji nie można zainstalować w konfiguracji typu All-in-One.
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ć Monetyzację w Edge, gdy instalacja Edge ma wiele węzłów Postgres, węzły Postgres muszą być skonfigurowane w trybie głównym/w trybie gotowości. 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:
- 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, np. instalację z 13 węzłami, przed zainstalowaniem Monetyzacji musisz zainstalować oba węzły serwera zarządzania krawędzi.
- Użyj narzędzia
apigee-setup
do zaktualizowania procesora wiadomości Apigee, aby włączyć komponenty w czasie wykonywania usług generowania przychodów, np. zasady rejestrowania transakcji i przestrzegania 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 w trybie bez interakcji dla funkcji zarabiania
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 jednym centrum danych wszystkie węzły ZooKeeper są domyślnie skonfigurowane jako węzły wiodące. Podczas instalowania Edge w wielu centrach danych niektóre węzły ZooKeeper zostaną skonfigurowane jako obserwatorzy. Upewnij się, że właściwość ZK_HOSTS powyżej określa węzeł główny w instalacji z wieloma centrami danych.
- Jeśli włączysz uwierzytelnianie Cassandra, możesz podać 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ądzania
Aby zintegrować funkcję zarabiania 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 Monetyzację na wielu węzłach serwera zarządzania, powtórz krok 2 na 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ę we 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 jak każdą inną organizację. Więcej informacji znajdziesz w artykule Włączanie organizacji.
- Użyj interfejsu API do obsługi monetyzacji zgodnie z opisem w artykule Włączanie monetyzacji 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:
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 funkcji zarabiania
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ę Monetyzacja na nowym serwerze zarządzania, używając tego polecenia:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf
Dodatkowa konfiguracja
Przesyłanie dokumentów rozliczeniowych w formacie 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.
Konfigurowanie ustawień 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
|
obecność fizyczna w zakresie podatków (domyślnie 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 samodzielne rozliczenia (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żywane 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 biznesowej za pomocą interfejsu zarządzania znajdziesz w artykule Pierwsze kroki z monetyzacją.
Limity zarabiania
Aby egzekwować limity zarabiania, dodaj do serwerów 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 dewelopera.
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 Egzekwowanie limitów zarabiania w przypadku proxy interfejsu API.