TelQ provides a wide range of integration options for you SMS testing, including SMPP and REST API integration, as well as direct integration with the Alaris platform.
SMPP API allows you to connect directly to your SMPP server, to send and to schedule test messages from our user interface.
If you already have an SMPP server, this type of integration will probably be the fastest.
You can assign a unique service type to each supplier for internal routing purposes.
Unique TLV parameters can also be used to set up flexible internal routing on your server.
You can set up multiple SMPP binds from our platform to your server with a unique username and password.
We encrypt your SMPP connection passwords on our backend side and keep them safe.
Learn how to integrate with the TelQ SMS testing service via SMPP
You can set up one SMPP connection to your server and assign a unique Service Type or TLV to different suppliers in our user interface. When you send the test message to a particular supplier, the unique parameter will automatically be added to the message, allowing you to do internal routing based on it.
Assign unique identifying parameters like service type or TLV for each supplier and set up internal routing for such messages.
You have full control of the traffic since we don't connect to your suppliers directly.
You only need one SMPP bind to be able to test all of your suppliers. A simple addition of new suppliers.
We can upload a list of supplier names and the above mentioned parameters from an excel file.
This approach requires you to set up multiple SMPP connections, one for each supplier you would like to test. This works only if you can set up custom routing for each of the connections. In this case, the SMPP bind login name would be the unique identifier for your system to do the routing and send traffic to the corresponding supplier. This takes more time to set up, however, it should be supported by most SMPP servers.
Create as many SMPP binds as you need in order to include all your suppliers in our testing platform.
You have full control of the traffic since we don't connect to your suppliers directly.
This integration approach works with most SMPP servers — even ones with the most basic features.
We can upload a list of suppliers and SMPP binds parameters from an excel file on your behalf.
REST API integration allows you to integrate directly with your system's user interface.
REST API allows you full flexibility as you create the SMS on your platform and receive the test results in your system.
Since you send tests directly from your system, you have full control over your SMPP or ss7 channels.
Time saving -- Once set up, REST API will allow you and your colleagues to keep using only your system. No resources are needed for onboarding or training for the TelQ platform.
use TelQ\Sdk\Models\Destination;
use TelQ\Sdk\Models\Tests;
// new Destination('mcc', 'mnc', 'ported from mnc')
$sendTests = Tests::fromArray([
'destinationNetworks' => [
new Destination('222', '36', '10'),
new Destination('505', '01')
],
'resultsCallbackUrl' => 'https://my-domain.com/telq-callback',
'maxCallbackRetries' => 3,
'testIdTextType' => 'ALPHA',
'testIdTextCase' => 'MIXED',
'testIdTextLength' => 6,
'testTimeToLiveInSeconds' => 3600
]);
$tests = $api->sendTests($sendTests);
foreach ($tests as $test) {
echo 'Id: ', $test->getId(), PHP_EOL;
echo 'PhoneNumber: ', $test->getPhoneNumber(), PHP_EOL;
echo 'TestIdText: ', $test->getTestIdText(), PHP_EOL;
echo 'Error message: ', $test->getErrorMessage() ?: 'empty', PHP_EOL;
echo 'Destination:', PHP_EOL;
echo ' Mcc: ', $test->getDestinationNetwork()->getMcc(), PHP_EOL;
echo ' Mnc: ', $test->getDestinationNetwork()->getMnc(), PHP_EOL;
echo ' Ported from mnc: ', $test->getDestinationNetwork()->getPortedFromMnc() ?: 'empty', PHP_EOL;
echo PHP_EOL;
}
curl -X POST "https://api.telqtele.com/v2.1/client/tests" -H "accept: */*"
-H "Content-Type: application/json" -d "{ \"destinationNetworks\": [ { \"mcc\": \"208\",
\"mnc\": \"10\", \"portedFromMnc\": \"20\" } ] }"
# Example of body with all available parameters
{
"destinationNetworks": [
{
"mcc": "206",
"mnc": "10",
"portedFromMnc": "20"
},
{
"mcc": "716",
"mnc": "06",
}
],
"resultsCallbackUrl": "https://some-callback-url.com/some-path",
"testIdTextType": "ALPHA_NUMERIC",
"testIdTextCase": "MIXED",
"testIdTextLength": "6",
"maxCallbackRetries": 1,
"testTimeToLiveInSeconds": 200
}
destinationNetworks = [
{
"mcc": "206",
"mnc": "10",
"portedFromMnc": "20"
},
{
"mcc": "716",
"mnc": "06"
}
]
requested_tests = test_client.initiate_new_tests(
destinationNetworks=destinationNetworks,
resultsCallbackUrl="https://my-callback-url.com/telq_result",
maxCallbackRetries=3,
testIdTextType="ALPHA_NUMERIC",
testIdTextCase="MIXED",
testIdTextLength=7,
testTimeToLiveInSeconds=3000
)
requested_tests = test_client.initiate_new_tests(destinationNetworks=destinationNetworks)
List networks = new ArrayList<>();
Network network_1 = Network.builder()
.mcc("206")
.mnc("10")
.portedFromMnc("20")
.build();
Network network_2 = Network.builder()
.mcc("716")
.mnc("06")
.build();
networks.add(network_1);
networks.add(network_2);
int maxCallBackRetries = 1;
String resultsCallbackUrl = "https://some-callback-url.com/some-path";
int testTimeToLive = 200;
String callBackToken = "peHWFdAXikjzmMgqPTwhpeHWFdAXikjzmMgqPTwhpeHWFdAXikjzmMgqPTwh";
TestIdTextOptions testIdTextOptions = TestIdTextOptions.builder()
.testIdTextType(TestIdTextType.ALPHA_NUMERIC)
.testIdTextCase(TestIdTextCase.MIXED)
.testIdTextLength(6)
.build();
TestRequest testRequest = TestRequest.builder()
.networks(networks)
.maxCallbackRetries(maxCallBackRetries)
.callbackUrl(resultsCallbackUrl)
.callbackToken(callBackToken)
.testTimeToLive(testTimeToLive)
.timeUnit(TimeUnit.MINUTES)
.testIdTextOptions(testIdTextOptions)
.build();
List requestedTests = testClient.initiateNewTests(testRequest);
© All rights reserved. Made by TelQ Telecom GmbH