The carrier networks where an RBM agent can be launched are defined as "regions" in the RBM Management API.
The RBM Support team maintains an up-to-date carrier list, which grows as more carriers adopt RBM.
Code snippets on this page are taken from the Java samples and Node.js samples.
List regions
You need to retrieve a list of the launchable regions before you can submit an agent for launch.
Node.js
const businessCommunicationsApiHelper = require('@google/rbm-businesscommunications'); const privateKey = require('../../resources/businesscommunications-service-account-credentials.json'); businessCommunicationsApiHelper.initBusinessCommunucationsApi(privateKey); businessCommunicationsApiHelper.listRegions().then((response) => { console.log(response.data); }).catch((err) => { console.log(err); });
Java
List<RcsBusinessMessagingRegion> regions = api.listAllRbmLaunchRegions(); List<String> regionIds = regions.stream().map(RcsBusinessMessagingRegion::getName).sorted() .collect(Collectors.toList()); logger.info("Fetched region Ids: " + regionIds);
This code returns a list of all the carriers where an agent can be submitted for launch:
{
regions: [
{
name: '/v1/regions/dt-germany',
displayName: 'Germany: DT',
managementType: 'CARRIER_MANAGED'
},
{
name: '/v1/regions/9mobile-nigeria',
displayName: 'Nigeria: 9 Mobile',
managementType: 'GOOGLE_MANAGED'
},
...
...
]
}
Carriers which are listed as CARRIER_MANAGED
operate their own approval
process and charge for delivery of RBM messages to their subscribers. You
need to have a commercial agreement in place directly with these carriers
before you can deliver RBM messages to their subscribers.