Phone: (469) 634-4200

Automating dsTest: Modifying An Online Subscriber Database

dsTest allows the reconfiguration of the subscriber database without deleting the nodes that contain the database.  This feature of dsTest allows better use of automation tools as it allows existing configurations to continue running while modifications are made to the subscriber database.

These database manipulations can be accomplished by sourcing auxiliary xml files into dsTest, or with CLI commands to a running dsTest instance.

This use case provides some examples of how to use either of these techniques to modify the subscriber database without the need to delete the dsTest nodes emulators.

Requirements:

  • dsTest 20180212 or newer
  • Knowledge and ability to use the dsTest dsClient CLI interface, including sourcing of dsTest xml configuration files
  • To perform the examples outlined in this Use Case, this archive example file  must be downloaded.
    •  The archive consists of five files:
      • modify_subscriber_database.xml
      • group_delete.xml
      • group_add.xml
      • group_add_delete.xml
      • group_change.xml

Example 1:

Deleting subscribers from a subscriber group in an existing subscriber database

  • Start dsTest
  • Enter the CLI command >source modify_subscriber_database.xml

This will source an example dsTest configuration file that consists of an SPR node and a PCRF node.  Subscribers 1-50 are assigned to subscriber group subscriber_group_1 with:

  • pcc_profile contents:pcc_profile
  • subscription_profile contents:subscription_profile
  • SmartProfile contents:SmartProfile

To verify this, enter the CLI command: >spr subscriber_database display:start:1

This will display the status of subscriber 1.  Repeat this step for various subscribers 2-50 and for subscribers above 50, to show that subscribers 1-50 are assigned and 51-500 are not assigned to a subscriber group.

  •  Source group_delete.xml

Verify no subscribers are now assigned to a subscriber group using the CLI command >spr subscriber_database display:start:x

Example 2:

Adding a subscriber group to an existing subscriber database

  • Start dsTest
  • Enter the CLI command >source modify_subscriber_database.xml

This will source an example dsTest configuration file that consists of an SPR node and a PCRF node.  Subscribers 1-50 are assigned to subscriber group subscriber_group_1 with:

  • pcc_profile contents:pcc_profile
  • subscription_profile contents:subscription_profile
  • SmartProfile contents:SmartProfile

To verify this, enter the CLI command >spr subscriber_database display:start:1

This will display the status of subscriber 1.  Repeat this step for various subscribers 2-50 and for subscribers above 50, to show that subscribers 1-50 are assigned and 51-500 are not assigned to a subscriber group.

  • Source group_add.xml

Use the CLI command >spr subscriber_database display:start:x

Verify that subscribers 1-51 are unchanged in their assigned subscriber group and that subscribers 51-100 are assigned to subscriber group subscriber_group_2 and that profiles for the group are now:

  • pcc_profile contents:pcc_profile_2
  • subscription_profile contents:subscription_profile_2
  • SmartProfile contents:SmartProfile_2

Execute the CLI command >nodes delete (clean up for next example)

Example 3a:

Adding subscriber groups to an existing subscriber database

  • Start dsTest
  • Enter the CLI command >source modify_subscriber_database.xml

This will source an example dsTest configuration file that consists of an SPR node and a PCRF node.  Subscribers 1-50 are assigned to subscriber group subscriber_group_1 with:

  • pcc_profile contents:pcc_profile
  • subscription_profile contents:subscription_profile
  • SmartProfile contents:SmartProfile

To verify this, enter the CLI command >spr subscriber_database display:start:1
This will display the status of subscriber 1.  Repeat this step for various subscribers 2-50 and for subscribers above 50, to show that subscribers 1-50 are assigned and 51-500 are not assigned to a subscriber group.

  • Source group_delete.xml

Verify that all subscribers are no longer assigned to a subscriber group using the CLI command >spr subscriber_database display:start:x

  • Source group_add.xml
  • Use the CLI command >spr subscriber_database display:start:x

Verify that subscribers 1-100 are assigned to subscriber group: subscriber_group_2 and that profiles for the group are now:

  • pcc_profile contents:pcc_profile_2
  • subscription_profile contents:subscription_profile_2
  • SmartProfile contents:SmartProfile_2

Execute the CLI command >nodes delete (clean up for next example)

Example 3b:

Deleting subscriber groups from an existing subscriber database

  • Start dsTest

Enter the CLI command >source modify_subscriber_database.xml
This will source an example dsTest configuration file that consists of an SPR node and a PCRF node.  Subscribers 1-50 are assigned to subscriber group subscriber_group_1 with:

  • pcc_profile contents:pcc_profile
  • subscription_profile contents:subscription_profile
  • SmartProfile contents:SmartProfile

To verify this, enter the CLI command >spr subscriber_database display:start:1
This will display the status of subscriber 1.  Repeat this step for various subscribers 2-50 and for subscribers above 50, to show that subscribers 1-50 are assigned and 51-500 are not assigned to a subscriber group.

  • Source group_add_delete.xml

Verify that subscribers 1-50 are no longer assigned to a subscriber group using the CLI command >spr subscriber_database display:start:x
Verify that subscribers 51-100 are assigned to subscriber group: subscriber_group_2 and that profiles for the group are:

  • pcc_profile contents:pcc_profile_2
  • subscription_profile contents:subscription_profile_2
  • SmartProfile contents:SmartProfile_2

Execute the CLI command >nodes delete (clean up for next example)

Example 4:

Modifying subscriber groups in an existing subscriber database

  • Start dsTest

Enter the CLI command >source modify_subscriber_database.xml
This will source an example dsTest configuration file that consists of an SPR node and a PCRF node.  Subscribers 1-50 are assigned to subscriber group subscriber_group_1 with:

  • pcc_profile contents:pcc_profile
  • subscription_profile contents:subscription_profile
  • SmartProfile contents:SmartProfile

To verify this, enter the CLI command >spr subscriber_database display:start:1
This will display the status of subscriber 1.  Repeat this step for various subscribers 2-50 and for subscribers above 50, to show that subscribers 1-50 are assigned and 51-500 are not assigned to a subscriber group.

  • Source group_change.xml

Use the CLI command >spr subscriber_database display:start:x
Verify that subscribers 1-50 are assigned to subscriber group subscriber_group_1 and that profiles for the group are now:

  • pcc_profile contents:pcc_profile_2
  • subscription_profile contents:subscription_profile_2
  • SmartProfile contents:SmartProfile_2

Verify that subscribers 51-100 are assigned to subscriber group subscriber_group_2 and that profiles for the group are:

  • pcc_profile contents:pcc_profile_2
  • subscription_profile contents:subscription_profile_2
  • SmartProfile contents:SmartProfile_2

Execute the CLI command >nodes delete