Dies ist eine alte Version des Dokuments!
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.1. Checken ob nicht schon ein Auto-User angelegt wurde
SELECT * FROM `www_promio_net_6`.`ACMS_STAFFdefinitions` WHERE `macroUser` = '1' AND `companyKey` = {$SENDER_ID}
2.2. Neuen Auto-User anlegen falls noch nicht vorhanden
INSERT INTO `www_promio_net_6`.`ACMS_STAFFdefinitions` SET `username` = 'autouser', `passwd` = sha1(NOW()), `user_id` = 0, `verwalter` = 0, `securitylevel` = 0, `active` = 1, `deleted` = 0, `macroUser` = 1 , `companyKey` = {$SENDER_ID}
INSERT INTO `hoovie_5`.`externRequestIpRestrict` SET `remoteIp` = '*', `senderId` = {$SENDER_ID}
Kein notwendiger Schritt; nur eine Kopiervorlage: Check auf vorhandene IP Adressen
SELECT * FROM `hoovie_5`.`externRequestIpRestrict` WHERE `senderId` = {$SENDER_ID}
Email-Vorlage
Es folgen Ihre Zugangsdaten für die Nutzung unserer API:
Check if api key is already set. If not, figure it out at: „217.115.153.212/userpages“
SELECT adrGenChecksum FROM `hoovie_1`.`send_user_settings` WHERE `b2b_user_id` = {$SENDER_ID}
Send infos to customer:
API Doku | http://wiki.promio-mail.com/doku.php?id=de:api:rpc User: apidev Pass: c$Gp§iv!47wX |
WSDL compare tool | http://api.promio-mail.com/1.4/soap/compare/ |
Der server3.default ist schon wieder deprecated, da server.default die komplette Funktionalität übernommen hat.
Derzeit existieren also 4 (oder mehr) konkurrierende Prozesse:
„11235“ „11410“ „11614“ „12115“ „12130“ „12156“ „12160“ „12175“ „12176“ „12194“ „12209“ „12217“ „12220“ genutzt.
aber eventuell eben auch in :
Für folgende Sender existieren unterschiedliche API Keys in den Config File(s) und der Datenbank (`hoovie_1`.`send_user_settings`.adrGenChecksum):
10825/config.inc.php( DB[] FILE[gfwesdgfvizsdfv08w9352hlfs9qr4r123juhfdadfa] ) 10876/config.inc.php( DB[] FILE[Nct97Ad7hl(//dn*aafe!] ) 10884/config.inc.php( DB[] FILE[dffqwehw23lhnjfs87vnm,sdvf89z] ) 10884/configY.inc.php( DB[] FILE[dffqwehw23lhnjfs87vnm,sdvf89z] ) 10913/config.inc.php( DB[] FILE[7E016b4B5811e2c0253c9d9F8D7d961a] ) 11233/config.inc.php( DB[] FILE[d8sesdf9g723hfdf] ) 11579/config_default.inc.php( DB[] FILE[hgf089desgfv8s] ) 11579/config_us.inc.php( DB[] FILE[hgf089desgfv8s] ) 11608/config.inc.php( DB[] FILE[fn789w43] ) 11608/config.soap.inc.php( DB[] FILE[kuzhhhfCFU68&/%UZG?JO54Tzfz] ) 11614/config.inc.php( DB[] FILE[fQfWn789w4df3Anfn78FD9w4378fn7HGR89w439wfn789w434fnGDF789w433GDF] ) 11648/config.inc.php( DB[] FILE[nf8ZOUF984Nvfno8hf2qY0asiL] ) 11651/config_default.inc.php( DB[] FILE[vnuh423w987gsvnm,sdvf89z] ) 11651/config_new.inc.php( DB[] FILE[vnuh423w987gsvnm,sdvf89z] ) 11707/config.inc.php( DB[] FILE[fgwero]ug8vzsfffdx()gobv8z7xbvn] ) 11734/config.inc.php( DB[] FILE[fwqefwh7()EZFTGWWGT)(S:)gvw9833pol] ) 11741/config_default.inc.php( DB[] FILE[fvzgsdg))bv098sddxdxgvb08] ) 11752/config_default.inc.php( DB[] FILE[f84jf9sjh438fld] ) 11778/config.inc_xfast.php( DB[] FILE[sfvh9sw((0Hfgds0jk334111-d] ) 11809/config.inc.php( DB[] FILE[fvh7s9777]]gsdfz8v@443265] ) 11827/config.inc.php( DB[] FILE[)(nmklvxcnlfsfsdfv9�0sc7v] ) 11879/config.inc.php( DB[] FILE[fgzet8we4756t34oi5htgfz7324ouijh5t0s] ) 11990/config.inc.php( DB[] FILE[gwhs98gtKsdgh9vwUe4875trhHns98fJNop] ) 12130/config.inc.php( DB[] FILE[f23sns41d789w43] ) 12154/config.inc.php( DB[] FILE[kfdspfiewmfwpe0f832w4js4085rt32458324asd56t34] ) 12155/config.inc.php( DB[] FILE[gfwsuwe7tgf9w4rthfqwe09s7ufveks8dea] ) 12156/config.inc.php( DB[] FILE[f23sgihwero8gz34089hfg0s9sxjns41d789w43] ) 12160/config.inc.php( DB[] FILE['sdjkt57fdsacxb2348dfasffg452uz389oiuz'] ) 12162/config.inc.php( DB[] FILE[nvie356fsdjow36x835s27923dfkwqdof476pezb] ) 12194/config.inc.php( DB[] FILE[fuhgwieurhtg94w083ztsjlkhgf90w348zthslkdzg98we4ztgdklzg] ) 12202/config.inc.php( DB[] FILE[dsfkiudzwe87rtzhsoldgfvzas0oier5hs0d9fgwejus] ) 12209/config.inc.php( DB[] FILE[fEW23sFf23sns41d7N89w43nMKs4f23sns41FWd78H9w431d789w43] ) 12221/config.inc.php( DB[] FILE[WfKbfsdhd1X2bjdBasVY123332212w3O220XffLgdsdTsfFs3DfgEs2221] ) 12222/config.inc.php( DB[] FILE[Zbfnd28ndfsdDQsa28ncwraf92FyPM3nAssDdfaEF348VBD9DDasJH2222] ) 12351/config.inc.php( DB[] FILE[gfd8uUGPI789hjufhi98hG9909D0JIO7889hjhDjk8789] )
10473/config.inc.php( DB[fqe8sxdgv;_8989f3q2§p9yxsv.nm,jyxxc790] FILE[fqe8sxdgv] ) 10473/config_default.inc.php( DB[fqe8sxdgv;_8989f3q2§p9yxsv.nm,jyxxc790] FILE[fqe8sxdgv] ) 10491/config.inc.php( DB[nr23z9f8uq(dfj0q()fhqa8=)/UFhaq0gfvhyxjy] FILE[nr23z9f8uq(dfj0q()fhqa8)/UFhaq0gfvhyxjy] ) 11146/configMacro.inc.php( DB[fn789w43] FILE[grweg9uw�9gurs�9u7g] ) 11146/config_Xfast.inc.php( DB[fn789w43] FILE[g35j89uhg0483whgtxöäcvgbiohwg] ) 11146/config_Xfast4.inc.php( DB[fn789w43] FILE[g35j89uhg0483whgtxöäcvgbiohwg] ) 11146/config_default.inc.php( DB[fn789w43] FILE[g35j89uhg0483whgtxöäcvgbiohwg] ) 11234/config.inc_xfast.php( DB[h6bd8?7da!aaa43Gg] FILE[932uirt0ewsgfjwvth9qwrj] ) 11727/config.inc.php( DB[Z9ghbhJO=)/kk%2ndi/7zh8C8zvfPhE=i(1poxjH] FILE[Z9ghbhJO)/kk%2ndi/7zh8C8zvfPhEi(1poxjH] ) 11728/config.inc.php( DB[nr23z9f8uq(dfj0q()fhqa8=)/UFhaq0gfvhyxjy] FILE[nr23z9f8uq(dfj0q()fhqa8)/UFhaq0gfvhyxjy] ) 11731/config.inc.php( DB[gfwsioerjgf/<ujv9wuertglknxv90em>)/=)] FILE[gfwsioerjgf/<ujv9wuertglknxv90em>)/)] ) 11764/config.inc.php( DB[hjgfsdo87(]hfvsd9sqw88emhujd9f7] FILE['hjgfsdo87(]hfvsd9sqw88emhujd9f7'] ) 11789/config.inc.php( DB[dg984jg73kgf8237fgj49] FILE['dg984jg73kgf8237fgj49'] ) 11789/config2.inc.php( DB[dg984jg73kgf8237fgj49] FILE['dg984jg73kgf8237fgj49'] ) 11905/config.inc.php( DB[nr23z9f8uq(dfj0q()fhqa8=)/UFhaq0gfvhyxjy] FILE[nr23z9f8uq(dfj0q()fhqa8)/UFhaq0gfvhyxjy] ) 12115/config.inc.php( DB[gvswrh9745tuhjsdg8fw34ikfs�yx035u25we3] FILE['gvswrh9745tuhjsdg8fw34ikfs�yx035u25we3'] ) 12419/config.inc.php( DB[8d31366BE4E2f48368369AE06dE5dA70] FILE[8d31y366BE4DdaE2f48368369AkE06dEt5dAr71] ) 84/config.inc.php( DB[fedfwefwefewfefkSOAP] FILE[fedfwefwefewfefk] ) 84/config_Xfast.inc.php( DB[fedfwefwefewfefkSOAP] FILE[fedfwefwefewfefk] )
Zum freischalten einzelner oder mehrerer Soap-Methdoden für Kunden folgende Schritte ausführen:
Bitte immer dieses Verfahren dafür anwenden:
[[http://192.168.0.4/wiki/dokumentation/v4soap#soap_umgebung_aus_bestehendem_mandanten_kopieren|v4soap]] Ergebins davon muss sein: * -> in ''212/userpages'' neuen Mandantenordner anlegen der folgende Dateien enthalten muss: * -> ''config.inc.php'' (**API Key ändern**) * -> ''server.default.php''<del>''server3.default.php''</del> * -> ''promioServices.wsdl'' <del>''promioServices3.wsdl''</del> (**Service Port ändern**)
hoovie_5.platformActionsInterface2
hoovie_5.platformActionsInterface3
hoovie_5.externRequestIpRestrict
www_promio_net_6.ACMS_STAFFdefinitions
212er
in userpages/
ein Ordner mit der Mandantennummer anlegen.
config.inc.php
:
ini_set( 'soap.wsdl_cache_ttl', 0 ); ini_set( 'soap.wsdl_cache_enabled', 0 ); 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; }
server3.default.php
/** * possible Config for the soapServer define('DEBUG',true) - standard false schaltet Debug zusätzlich zum debugFile in den mainOutput define("WSDL_PATH", 'http://xy.yy') standard 'http://mailer-service.com/userpages/'.$senderId.'/promioRemote.wsdl abweichende wsdl datei define("USE_TEST_LIB",true) standard false - nutzt den testVxLib eintrag aus platformInterfaceActions2. in server.defaultTest.php standard true define("USE_SOAP_PERSISTENCE",true) standard false instanziert eine session error_reporting(E_ALL); ini_set('display_errors',false); */ require_once('./config.inc.php'); include('/var/www/html/mail.mailer-service.de/www/kunden/mailer-service/soap/server3.default.php');
promioServices3.wsdl
Diese aus dem Repositorium Repository:: Soapvorlagen/wsdl/promioServices3.wsdl
entnehmen und den Service Port mit der passenden Mandanten Nummer abändern:
<service name="PromioRemoteService"> <port name="PromioRemotePort" binding="typens:PromioRemoteBinding"> <soap:address location="https://mailer-service.com/userpages/**$MANDANTENNUMMER**/server3.default.php"/> </port> </service>
Soap Methoden müssen für jeden Mandanten in hoovie_5.platformActionsInterface3
eingetragen sein.
Die wichtigsten Felder:
platformActionsInterface3 | ||
---|---|---|
Feld | Default for Insert | Info |
soapName | Soap Methode | |
modul | Api Modul | Mapping zu vxLib |
action | Api Action | Mapping zu vxLib |
senderId | $MandantenNummer | |
vXLib | vxLib Version | Api Modul/Action in dieser Version aufrufen |
isActive | 1 | |
rightsChanged | 0000-00-00 00:00:00 | |
added | NOW() | Datum des INSERTS |
addedBy | SatffKey | Deine Staff ID |
lastUsed | 0000-00-00 00:00:00 | |
used | 0 |
SQL für die Übernahme alle Methoden eines anderen Senders. Folgende Werte im SQL ersetzen:
INSERT INTO `platformActionsInterface3` SELECT NULL AS `platformActionsId`, `soapName`, `modul`, `action`, '**$NEW_SENDERID**' AS `senderId`, `vXLib`, '' AS `testVxLib`, 1 AS `isActive`, '0000-00-00 00:00:00' AS `rightsChanged`, NOW() AS `added`, '**$STAFFKEY**' AS `addedBy`, '0000-00-00 00:00:00' AS `lastUsed`, 0 AS `used` FROM `platformActionsInterface3` WHERE senderId = **$SRC_SENDERID**
Der Zugriff auf den Soap Server ist nur für in hoovie_5.externRequestIpRestrict
hinterlegte IP Adressen erlaubt.
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: 217.115.153.212
Neuer Eintrag in www_promio_net_6.ACMS_STAFFdefinitions
.
Benötigte Felder:
ACMS_STAFFdefinitions | |
---|---|
Feld | Wert |
companyKey | $MANDANTENNUMMER |
username | autouser |
passwd | ein belibiges Vergeben |
user_id | 0 |
verwalter | 0 |
securitylevel | 0 |
active | 1 |
deleted | 0 |
macroUser | 1 |
für jede SoapApi
Die neue Methode soll in der allgemeinen Vorlagen-WSDL unter:
Repository:: Soapvorlagen/wsdl/promioServices3.wsdl
engefügt werden.
Darüber hinaus soll für jede Methode eine atomare WSDL angelegt werden in:
Repository:: Soapvorlagen/wsdl/parts/$soapname.wsdl
und
212:: userpages/11146/wsdl.$soapname.wsdl
und
212:: userpages/wsdl/$soapname.wsdl
Die 11146/wsdl.$soapname.wsdl
zeigt auf server.$soapname.php
Die wsdl.$soapname
auf https://mailer-service.com/userpages/{YOUR_CLIENT_ID}/{INTERFACE_NAME}.php