Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:page1 [2014/01/31 11:56] – [Neue Soap-Methode erstellen] 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} | ||
- | </ | ||
- | |||
- | |||
- | __**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} | ||
- | </ | ||
- | |||
- | |||
- | ===== 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: | ||
- | < | ||
- | | ||
- | |||
- | |||
- | | ||
- | < | ||
- | |||
- | | ||
- | |||
- | < | ||
- | |||
- | | ||
- | |||
- | < | ||
- | |||