Request

The <updateSubscriber> request provisions IMSI and MSISDN routing data and can provision subscriber data. The request updates existing routing entities, and creates any new routing entities that do not exist.

The request allows for the provisioning of IMSI, MSISDN, or combinations of IMSI and MSISDNs to be associated with eight different destinations.

A destination name can be specified as "none", which removes the association of that destination from the specified routing entity(s).

Semantic Rules (all requests)

  • At least one routing entity (IMSI or MSISDN) must be specified.
  • No more than 10 routing entities (IMSI, MSISDN, or combinations of the two) can be specified.
  • A destination name must already exist in the database.
  • Each destination name type can only be specified once.
  • All specified routing entities will be provisioned with the same destination value(s).
  • Any existing destination(s) for a routing entity will not be changed/removed if not specified in the request.
  • Specifying a destination name of “none” removes the association of that destination from the specified routing entity(s).

Semantic Rules (requests that do not specify the group attribute or specify group="n")

  • The accountId, deleteAccountId, deleteImsi, and deleteMsisdn parameters cannot be specified.
  • All specified IMSI and MSISDN values must be for stand-alone routing entities or they all must be assigned to one subscriber. There cannot be a mixture of stand-alone routing entities and routing entities that are part of a subscriber.
  • At least one routing entity (IMSI or MSISDN) must be specified.
  • A maximum of 10 routing entities (IMSI, MSISDN, or combinations of the two) can be specified.
  • At least one destination must be specified.
  • All specified routing entities will be provisioned with the same destination value(s).

Semantic (requests that specify attribute group="y")

  • The accountId, deleteAccountId, deleteImsi, and deleteMsisdn parameters can be specified.
  • All specified Account ID, IMSI, or MSISDN values must be assigned to one subscriber or must exist in stand-alone routing entities. After the command successfully completes, all specified values will be assigned to one subscriber.
  • All specified deleteAccountId, deleteImsi, or deleteMsisdn values that exist in the database must be assigned to the same subscriber. All Account ID, IMSI or MSISDN values must be assigned to the same subscriber or not assigned to any subscriber.
  • At least one IMSI, MSISDN, or Account ID value must be specified.
  • The deleteAccountId, deleteImsi, deleteMsisdn values and all destination tags and values are optional. This allows a user to just add an Account ID or MSISDN and/or IMSI values to a subscriber.
  • A maximum of one accountId, one deleteAccountId, siximsi, six deleteImsi, six msisdn, and/or six deleteMsisdn values can be specified. If any of these limits are exceeded, the request fails.
  • All specified accountId, imsi, and msisdn values that are not currently associated with a subscriber will be assigned to the same subscriber. They are added to an existing subscriber or new subscriber.
  • If a new subscriber is being created with all new routing entities, all specified routing entities will be provisioned with the specified destination values.
  • If a new subscriber is being created with at least one existing stand-alone routing entity, all destination values from existing stand-alone routing entities must be the same prior to applying any specified destination changes. All new routing entities will inherit their destinations values from an existing stand-alone routing entity with the applied destination changes.
  • If existing stand-alone routing entities are being added to an existing subscriber, the destination values in each stand-alone routing entity must match the destination values for the subscriber (extracted from any of the subscriber's routing entities) prior to applying any specified destination changes.
  • If new routing entities are being added to an existing subscriber, the new routing entities will inherit the destination values for the subscriber (extracted from any of the subscriber's routing entities).
  • If a new routing entity is being created, at least 1 of its destination values must not be equal to none.
  • The updated subscriber must have at least 1 IMSI or MSISDN routing entity.
  • The updated subscriber can have 0 or 1 Account ID values, 0-6 IMSI values and 0-6 MSISDN values, as long as there is at least one IMSI or MSISDN value. If the result of the update (deleting and then adding new Account ID, IMSI, and/or MSISDN values) would cause too many Account ID, IMSI or MSISDN values, the request will fail.
  • The subscriber's Account ID value can be updated only if it is currently null or deleted within the request (as specified by the deleteAccountId parameter).
  • If any of the values specified in the deleteAccountId, deleteImsi, or deleteMsisdn parameters do not exist in the database, they will be ignored. If nothing else changes for the subscriber, the NO_UPDATES is returned.
  • If any of the values specified in the deleteAccountId, deleteImsi, or deleteMsisdn parameters exist in the database, they must be assigned to the subscriber being updated or the command will fail.
  • If any of the values specified in the deleteImsi or deleteMsisdn parameters exist, the routing entity will be deleted unless it is the last IMSI or MSISDN routing entity for the subscriber, in which case the command will fail.

Request Format

<updateSubscriber ent="subscriberRouting" ns="dsr" [resonly="resonly"]
                  [id="id"] [timeout="timeout"] [group="group"]>
[   <deleteAccountId>deleteAccountId</deleteAccountId> ]
[
    <deleteImsi>deleteImsi</deleteImsi>
    …
    <deleteImsi>deleteImsi</deleteImsi>
]
[
    <deleteMsisdn>deleteMsisdn</deleteMsisdn>
    …
    <deleteMsisdn>deleteMsisdn</deleteMsisdn>
]
[   <accountId>accountId</accountId> ]
[
    <imsi>imsi</imsi>
    …
    <imsi>imsi</imsi>
]
[
    <msisdn>msisdn</msisdn>
    …
    <msisdn>msisdn</msisdn>
]
[   <imshss>imshss</imshss>       ]
[   <ltehss>ltehss</ltehss>       ]
[   <pcrf>pcrf</pcrf>             ]
[   <ocs>ocs</ocs>                ]
[   <ofcs>ofcs</ofcs>             ]
[   <aaa>aaa</aaa>                ]
[   <userdef1>userdef1</userdef1> ]
[   <userdef2>userdef2</userdef2> ]
</updateSubscriber>

Request Parameters

Table 5-13 <updateSubscriber> Request Parameters (XML)

Parameter Description Values
ent The entity name within the global schema. subscriberRouting
ns The namespace within the global schema dsr
resonly (Optional) Indicates whether the response should consist of the result only, without including the original request in the response
  • y - Only provide the result, do not include the original request (default)
  • n - Include the original request in the response
id (Optional) Transaction id value provided in request and passed back in the response 1-4294967295
timeout (Optional)

The amount of time (in seconds) to wait to before being able to perform a write if another connection is performing a write, or has a transaction open. Clients waiting to write are processed in the order that their requests were received.

If the request is being performed within a transaction, this parameter will have no effect, as the client already has a transaction open.

0 (return immediately if not available) to 3600 seconds (default is 0)
group (Optional) Indicates if relationships between a group of related IMSI and/or MSISDN routing entities and Account ID value should be created/updated
  • y - Create new or update existing subscriber relationships and update destinations
  • n - Only update destinations, not relationships between routing entities (default)
deleteAccountId (Optional) A user-defined Account ID value to delete 1 to 26 decimal digits
deleteImsi (Optional) An IMSI (specified in E.212 format) value to delete 10 to 15 numeric digits
deleteMsisdn (Optional) An MSISDN (specified in E.164 international public telecommunication numbering plan format) value to delete 8 to 15 decimal digits
accountId (Optional) A user-defined Account ID value to add or update 1 to 26 numeric digits
imsi (Optional) An IMSI (specified in E.212 format) to add or update 10 to 15 numeric digits
msisdn (Optional) An MSISDN (specified in E.164 international public telecommunication numbering plan format) to add or update 8 to 15 numeric digits
imshss (Optional) The name of the IMS HSS destination A string with 1 to 32 characters
ltehss (Optional) The name of the LTE HSS destination A string with 1 to 32 characters
pcrf (Optional) The name of the PCRF destination A string with 1 to 32 characters
ocs (Optional) The name of the OCS destination A string with 1 to 32 characters
ofcs (Optional) The name of the OFCS destination A string with 1 to 32 characters
aaa (Optional) The name of the AAA server destination A string with 1 to 32 characters
userdef1 (Optional) The name of the first user defined destination A string with 1 to 32 characters
userdef2 (Optional) The name of the second user defined destination A string with 1 to 32 characters