++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ API Yeah Rel 1.02 Public Build +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ +
+ Copyright (C) by Ole Kollat, http://solution-support.com +
+ +
+ This program is free software; you can redistribute it and/or modify +
+ it under the terms of the GNU General Public License as published by +
+ the Free Software Foundation; either version 2 of the License, or +
+ (at your option) any later version. +
+ +
+ This program is distributed in the hope that it will be useful, +
+ but WITHOUT ANY WARRANTY; without even the implied warranty of +
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +
+ GNU General Public License for more details. +
+ +
+ You should have received a copy of the GNU General Public License +
+ along with this program; if not, write to the +
+ Free Software Foundation, Inc., +
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +
+ +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++System requirements API Yeah++++++++++++++++++++++++++++++++
+ +
+ +
+ -Webserver with PHP v5.x support +
+ +
+ +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++Configuration Document for API Yeah under XAMPP for Windows++++++++++++++
1) Please copy the extracted Folder 'api_yeah' to your web server document root
directory (i.e.'htdocs'). Now you are able to call the API Yeah Landing Page
via Web Browser (http://localhost/api_yeah/m2madm.php).
2) Next open document 'parse_vars.php' with the editor of your choice
(eclipse, notepad++, etc.) and fill in the value for sender name between qoutation
marks in line 5. If your company name is 'adidas' the sender name would be:
"tmo.external.adidas.architecture.ADIDAS:M2M"
3) Now please Login with customer admin account in CRM GUI (Service Portal 2.0)
https://m2m-serviceportal.telekom.de and choose "API configurations".
Generate API Key only if not exist, otherwise copy existing one and paste this
API Key into document 'parse_vars.php' into line 6 between quotation marks.
To retrieve your CRM Id just navigate in CRM GUI to "Administration" ->
"My Partner Data" and copy the value from row 'Partner ID'
(in the first line). Paste this value into line 7, again between quotation marks.
If you really want to use API Method SIMActivation you have to care about this
next step, but if you follow my advice to use
TemplateSIMActivation instead, you can jump on directly to step 5.
Here is the Reason why:
I strongly recommend to use TemplateSIMActivation instead of SIMActivation,
because of the much more efficient scalability for Method TemplateSIMActivation.
E.g. you can define SIM Groups, remarks, etc in Template settings
and you can assign a preferred Tariff profile for the Activation Templates
(in order you have to create tariff profiles). Just give your Activation Templates
in CRM GUI speaking names. Afterwards you can use TemplateSIMActivation in
API Yeah and you just fill in the Name for the Activation Template Name and thats
it basically. But anyway, here we go with the values for API Method SIMActivation:
4) To Retrieve the mandatory Values for SIMActivation
(line 12 - 22 in document 'parse_vars.php') you have to decide wich Tariff
you want to use for SIMActivation (decision only necessary in case you have more
than one Tariff assigned). Go to Dashboard in CRM GUI and set the Filter
for column 'Tariff' to your prefered Tariff and click execute filter settings.
Click on any productive SIM the green ball (hyper link). In the
"Contract details" upper Frame you find row tariff. In this row you find Tariff Name.
In the lower frame you'll find all the necessary options
(every option who is visible is mandatory). So go ahead and type the tariff name
into line 12 between quotation marks and all the prefered option values
into line 13 to line 22 in 'parse_varse.php'.
Example for Access option:
"Private APN";
Please be careful with the values. Every Value is case-sensitive and every space
has to be at the right place. A good idea is to copy and paste every value.
5) You accomplished already a successful connection test in M2M Production for
file Transfer with ebXML Gateway colleagues. Please refer to the example
MMD-XML (Message Meta Document) you got from ebXML Gateway colleagues and open
this MMD in a Web Browser (IE or Firefox). Now you just have to carefully
transform/copy the values for the name Attributes into line 25 to 31
in document 'parse_varse.php'. Example value for Attribute 'FROM':
"ADIDAS";
To fill in the value for Element you have to fill in the
absolute path to your Axway Payload directory.
Value again between the quotation marks in line 31. Example value:
"C:/Axway/Synchrony/Activator/common/data/out/payload/";
7) Last configuration step is to fill in the values for filepath to MMD directory
and to Axway Payload directory.
To accomplish that, just use your Windows Explorer and navigate to your preferred
location for those files. If you want API Yeah to write the XML files directly into
Axway observed directory for file pushing, just use the desired folders for it.
You just have to make shure that you use double back slashes for folder separating
(C:\\Axway\\...\\)
I would strongly recommend to let API Yeah write the Payload in Axway desired folder
(payload) but to create a subfolder herarchically under the Axway observed directory
for MMDs (transport XML). You will then have the full control of tempo
for pushing files to M2M by creating an appropriate cron job
for mooving MMDs in the Axway observed directory.
A good benchmark for not crashing Telekom B2B Gateway
is to transport every 3 Minutes one MMD into target folder.
That's it basically. Try your settings with a non writing API Method
like GetSIMConfigAccess and let M2M Exception Handling
do the Troubleshooting for you :)
+++++++++++++++++++++++++++++Tips for Troubleshooting+++++++++++++++++++++++++++++++
If API Yeah is not generating any files for you, please compaire your values in
document 'parse_vars.php' with your absolute paths on your Axway Machine
(The Folderstructure for Variables $mmd_file_path, $xml_file_path must exist).
Make shure that PHP User have proper rights to write in your choosen directory.
Ownership can also be a problem.
If the paths are correct and your PHP User is able to write files in destinated
folders for MMD and Payload, then have a look at your Web Server
Logs/Filesystem Logs.
Even if this all above not work, change the PHP Logging to default.
To accomplish that, just search for error_reporting(0) in document
m2madm.php, or m2mmon.php and uncomment this Log Level,
by adding two Slashes in Front.
Dont forget to delete the uncommenting, after finding the root cause.
Because I use several vars who are not global and indeed are not initialized.
PHP will remind you everytime about it.
Everything will work, but it looks horrible...
++++++++++++++++++++++++++++++++++++++Notes+++++++++++++++++++++++++++++++++++++++++
Normally PHP web server configurations are using limitations for executing scripts.
If you are really up to administrate a hughe amount of SIM Cards,
you have to increase the default time for executions (30 sec.).
To do so, search in 'php.ini' for the string 'max_execution_time' and change
the value to -1
(do this only if you are the only person who is using this PHP web server).
Restart you http-task and check phpinfo() again.
As a benchmark for creation of 2400 MMDs and 2400 Payload XMLs
(120.000 comma separated SIM Numbers):
API Yeah can do this with a proper machine under 04:30 (mm:ss) !
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
API Yeah is free software, so you can edit every single ASCII character
to suit your needs. Go ahead and have fun with it.
Sincerely yours,
Ole Kollat
----------------------------------------END-----------------------------------------