Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:page1 [2014/01/31 11:53] – 192.168.0.43 | de:page1 [2014/03/14 17:47] (aktuell) – gelöscht md | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Soap ====== | ||
| - | |||
| - | ===== Soap 1.4 ===== | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== Schnittstelle freischalten ==== | ||
| - | === Benötigte Informationen === | ||
| - | - Mandanten Nummer (im folgenden {$SENDER_ID} damit ersetzen). | ||
| - | - IP Adresse(n) die Zugriff auf die Schnittstelle erhalten soll (* als Platzhalter sind erlaubt). | ||
| - | |||
| - | === Durchführung === | ||
| - | == 1. Api Key einsehen / festlegen == | ||
| - | In der promio.mail kann im betreffenden Client unter Extras - Integrationen - Soap ein bereits existierender Api-Key eingesehen werden. Falls noch keiner existiert, wird dieser hier automatisch neu generiert. | ||
| - | |||
| - | DB-Check des Api-Keys: | ||
| - | < | ||
| - | SELECT adrGenChecksum FROM `hoovie_1`.`send_user_settings` WHERE `b2b_user_id` = {$SENDER_ID} | ||
| - | </ | ||
| - | |||
| - | == 2. Auto-User (auch Makro-User genannt) anlegen == | ||
| - | 2.1. Checken ob nicht schon ein Auto-User angelegt wurde | ||
| - | < | ||
| - | SELECT * FROM `www_promio_net_6`.`ACMS_STAFFdefinitions` WHERE `macroUser` = ' | ||
| - | </ | ||
| - | |||
| - | 2.2. Neuen Auto-User anlegen **falls noch __// | ||
| - | < | ||
| - | INSERT INTO `www_promio_net_6`.`ACMS_STAFFdefinitions` SET `username` = ' | ||
| - | , `companyKey` = {$SENDER_ID} | ||
| - | </ | ||
| - | |||
| - | == 3. IP Adresse(n) freigeben == | ||
| - | < | ||
| - | INSERT INTO `hoovie_5`.`externRequestIpRestrict` SET `remoteIp` = ' | ||
| - | </ | ||
| - | |||
| - | Kein notwendiger Schritt; nur eine Kopiervorlage: | ||
| - | < | ||
| - | SELECT * FROM `hoovie_5`.`externRequestIpRestrict` WHERE `senderId` = {$SENDER_ID} | ||
| - | </ | ||
| - | |||
| - | == 4. Kunden Mitteilung == | ||
| - | Der Kunde bekommt folgende Informationen: | ||
| - | |1. |Den neuen **Api-Key** | siehe promio.mail Plattform, Menu " | ||
| - | |2. |WSDL URL |**< | ||
| - | |3. |API Doku Link | http:// | ||
| - | |||
| - | __**Email-Vorlage**__\\ | ||
| - | |||
| - | Es folgen Ihre Zugangsdaten für die Nutzung unserer API: | ||
| - | * **Api-Key**: | ||
| - | * **Soap-API (WSDL-URL)**: | ||
| - | * **Doku**: < | ||
| - | * User: apidev | ||
| - | * Pass: c$Gp§iv!47wX| | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== Schnittstellen Migration ==== | ||
| - | == 1. Check if api key is already set == | ||
| - | Check if api key is already set. If not, figure it out at: " | ||
| - | < | ||
| - | SELECT adrGenChecksum FROM `hoovie_1`.`send_user_settings` WHERE `b2b_user_id` = {$SENDER_ID} | ||
| - | </ | ||
| - | |||
| - | == 2. Infos and tools == | ||
| - | Send infos to customer: | ||
| - | |API Doku |http:// | ||
| - | |WSDL compare tool |http:// | ||
| - | |||
| - | ===== alte Soap Schnittstellen ===== | ||
| - | |||
| - | ==== Update ==== | ||
| - | |||
| - | Der server3.default ist schon wieder deprecated, | ||
| - | da server.default die komplette Funktionalität übernommen hat. | ||
| - | |||
| - | ==== Systeme ==== | ||
| - | |||
| - | Derzeit existieren also 4 (oder mehr) konkurrierende Prozesse: | ||
| - | |||
| - | === mailer-service/ | ||
| - | - Anmerkung: Derzeitiger Standard. | ||
| - | |||
| - | - Authentifizierung: | ||
| - | - hoovie_5.platformActionsInterface2 | ||
| - | - www_promio_net_6.ACMS_STAFFdefinitions mit senderspezifischem Eintrag macroUser=1 | ||
| - | - hoovie_5.externRequestIpRestrict | ||
| - | - / | ||
| - | - / | ||
| - | - Logging: | ||
| - | - hoovie_5.externRequest_3_DATUM | ||
| - | - hoovie_5.externRequest_3_Fail_DATUM | ||
| - | - hoovie_5.externRequest_3_result_DATUM | ||
| - | |||
| - | |||
| - | === mailer-service/ | ||
| - | - Anmerkung: deprecated. Derzeit noch von | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | - Authentifizierung: | ||
| - | - hoovie_5.platformActionsInterface3 | ||
| - | - hoovie_5.externRequestIpRestrict | ||
| - | - www_promio_net_6.ACMS_STAFFdefinitions mit senderspezifischem Eintrag macroUser=1 | ||
| - | - / | ||
| - | - / | ||
| - | - Logging: | ||
| - | - zum Teil noch in hoovie_5.externRequest_3 | ||
| - | aber eventuell eben auch in : | ||
| - | - hoovie_5.externRequest_3 | ||
| - | - hoovie_5.externRequest_3_Fail | ||
| - | - hoovie_5.externRequest_3_result | ||
| - | |||
| - | |||
| - | === mailer-service/ | ||
| - | - Anmerkung: | ||
| - | - eigentlich noch im Beta-Stadium. Einzige Möglichkeit für getCampaignResults, | ||
| - | - einzige Möglichkeit nur db-konfigurierte SoapUmgebung zu nutzen, daher für promioONE Kunden default.(register- und optinUser) | ||
| - | - Authentifizierung: | ||
| - | - hoovie_1.send_user_settings.adrGenChecksum | ||
| - | - / | ||
| - | - / | ||
| - | - eventuelle IP-Einschränkung über / | ||
| - | - Logging: | ||
| - | - platformScripts.log_v_$VX_LIB$_soap_command | ||
| - | - platformScripts.log_v_$VX_LIB$_soap_result | ||
| - | - platformScripts.log_v_$VX_LIB$_soap_resultFail | ||
| - | |||
| - | === uraltes RPC - eigener xml Dialekt === | ||
| - | - Logging: | ||
| - | - hoovie_5.externRequests | ||
| - | |||
| - | ==== Bekannte Probleme ==== | ||
| - | === API Keys === | ||
| - | Für folgende Sender existieren unterschiedliche API Keys in den Config File(s) und der Datenbank (`hoovie_1`.`send_user_settings`.adrGenChecksum): | ||
| - | |||
| - | == Kein API Key in DB vorhanden == | ||
| - | < | ||
| - | 10825/ | ||
| - | 10876/ | ||
| - | 10884/ | ||
| - | 10884/ | ||
| - | 10913/ | ||
| - | 11233/ | ||
| - | 11579/ | ||
| - | 11579/ | ||
| - | 11608/ | ||
| - | 11608/ | ||
| - | 11614/ | ||
| - | 11648/ | ||
| - | 11651/ | ||
| - | 11651/ | ||
| - | 11707/ | ||
| - | 11734/ | ||
| - | 11741/ | ||
| - | 11752/ | ||
| - | 11778/ | ||
| - | 11809/ | ||
| - | 11827/ | ||
| - | 11879/ | ||
| - | 11990/ | ||
| - | 12130/ | ||
| - | 12154/ | ||
| - | 12155/ | ||
| - | 12156/ | ||
| - | 12160/ | ||
| - | 12162/ | ||
| - | 12194/ | ||
| - | 12202/ | ||
| - | 12209/ | ||
| - | 12221/ | ||
| - | 12222/ | ||
| - | 12351/ | ||
| - | </ | ||
| - | == API Keys unterschiedlich == | ||
| - | < | ||
| - | 10473/ | ||
| - | 10473/ | ||
| - | 10491/ | ||
| - | 11146/ | ||
| - | 11146/ | ||
| - | 11146/ | ||
| - | 11146/ | ||
| - | 11234/ | ||
| - | 11727/ | ||
| - | 11728/ | ||
| - | 11731/ | ||
| - | 11764/ | ||
| - | 11789/ | ||
| - | 11789/ | ||
| - | 11905/ | ||
| - | 12115/ | ||
| - | 12419/ | ||
| - | 84/ | ||
| - | 84/ | ||
| - | </ | ||
| - | ==== Neue Soap-Methode freischalten ==== | ||
| - | Zum freischalten einzelner oder mehrerer Soap-Methdoden für Kunden folgende Schritte ausführen: | ||
| - | |||
| - | - Soap Server einrichten | ||
| - | Bitte immer dieses Verfahren dafür anwenden: | ||
| - | [[http:// | ||
| - | Ergebins davon muss sein: | ||
| - | * -> in '' | ||
| - | * -> '' | ||
| - | * -> '' | ||
| - | * -> '' | ||
| - | |||
| - | - Soap methoden freischalten | ||
| - | * -> '' | ||
| - | - IP-Adressen freischalten | ||
| - | * -> '' | ||
| - | - Auto-User (MakroUser) anlegen | ||
| - | * -> '' | ||
| - | |||
| - | |||
| - | |||
| - | == Soap Server einrichten == | ||
| - | * Auf dem '' | ||
| - | * Darin müssen folgende Dateien liegen: | ||
| - | '' | ||
| - | < | ||
| - | ini_set( ' | ||
| - | class Config | ||
| - | { | ||
| - | const VERSION_ADDRGEN = 9; | ||
| - | const MD5_KEY = "Hier eine beliebige, möglichst cryptische, Zeichenfolge eintragen; wird dem Kunden als API-Key für die Soap-Aufrufe gegeben"; | ||
| - | |||
| - | const DEBUG_OUT = false; | ||
| - | }</ | ||
| - | '' | ||
| - | < | ||
| - | /** | ||
| - | * possible Config for the soapServer | ||
| - | |||
| - | define(' | ||
| - | define(" | ||
| - | define(" | ||
| - | define(" | ||
| - | |||
| - | error_reporting(E_ALL); | ||
| - | ini_set(' | ||
| - | */ | ||
| - | |||
| - | require_once(' | ||
| - | include('/ | ||
| - | </ | ||
| - | '' | ||
| - | Diese aus dem Repositorium '' | ||
| - | < | ||
| - | <port name=" | ||
| - | < | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||
| - | |||
| - | === Soap methoden freischalten === | ||
| - | Soap Methoden müssen für jeden Mandanten in '' | ||
| - | Die wichtigsten Felder: | ||
| - | |||
| - | ^// | ||
| - | ^ Feld ^ Default for Insert ^Info^ | ||
| - | |soapName|// | ||
| - | |modul|// | ||
| - | |action|// | ||
| - | |senderId|// | ||
| - | |vXLib|// | ||
| - | |isActive|1| | | ||
| - | |rightsChanged|0000-00-00 00:00:00| | | ||
| - | |added|NOW()|Datum des INSERTS| | ||
| - | |addedBy|// | ||
| - | |lastUsed|0000-00-00 00:00:00| | | ||
| - | |used|0| | | ||
| - | == Insert SQL == | ||
| - | SQL für die Übernahme alle Methoden eines anderen Senders. Folgende Werte im SQL ersetzen: | ||
| - | * $SRC_SENDERID | ||
| - | * $NEW_SENDERID | ||
| - | * $STAFFKEY | ||
| - | < | ||
| - | INSERT INTO `platformActionsInterface3` SELECT NULL AS `platformActionsId`, | ||
| - | </ | ||
| - | |||
| - | |||
| - | == IP-Adressen freischalten == | ||
| - | Der Zugriff auf den Soap Server ist nur für in '' | ||
| - | Für jede IP Adresse einen Eintrag hinzufügen. Wildcard ist am Ende von IP Adressne erlaubt (192.168.*).\\ | ||
| - | Standarmässig unsere eigene Server IP immer eintragen: '' | ||
| - | |||
| - | |||
| - | == Auto-User (MakroUser) anlegen == | ||
| - | Neuer Eintrag in '' | ||
| - | Benötigte Felder: | ||
| - | ^// | ||
| - | ^ Feld ^ Wert ^ | ||
| - | |companyKey|**$MANDANTENNUMMER**| | ||
| - | |username|autouser| | ||
| - | |passwd|// | ||
| - | |user_id|0| | ||
| - | |verwalter|0| | ||
| - | |securitylevel|0| | ||
| - | |active|1| | ||
| - | |deleted|0| | ||
| - | |macroUser|**1**| | ||
| - | |||
| - | |||
| - | ==== Neue Soap-Methode erstellen ==== | ||
| - | === Doku & Tests === | ||
| - | |||
| - | für jede SoapApi | ||
| - | * wikiDoku erstellen | ||
| - | |||
| - | * freischalten für Mandant 11146 | ||
| - | |||
| - | * erstellen eines 212/ | ||
| - | |||
| - | * atomarer client 212/ | ||
| - | |||
| - | == WSDL == | ||
| - | |||
| - | Die neue Methode soll in der allgemeinen Vorlagen-WSDL unter: | ||
| - | < | ||
| - | | ||
| - | |||
| - | |||
| - | | ||
| - | < | ||
| - | |||
| - | | ||
| - | |||
| - | < | ||
| - | |||
| - | | ||
| - | |||
| - | < | ||
| - | |||
| - | |||
| - | Die '' | ||
| - | |||
| - | Die '' | ||