Subscriber Relation Context#
When adding a Subscriber, multiple services are often added at the same time - for example, multiple Phones with multiple Lines.
During the “Add” operation, the AddSubscriberNew
workflow
therefore iterates (loops) over these added services and makes
the data for each instance available in a context variable.
Consider for example the following workflow input context for adding a simple Subscriber:
{
"input": {
"userid": "TestUserX77",
"firstName": "Test",
"lastName": "UserX77",
"mailid": "[email protected]",
"Phone": [
{
"name": "SEP111222333444",
"product": "Cisco Unified Client Services Framework",
"protocol": "SIP",
"lines": {
"line": [
{
"dirn": {
"pattern": "82007",
"routePartitionName": "Cu1-DirNum-PT"
}
}
]
}
},
{
"name": "SEP000222333444",
"product": "Cisco Unified Client Services Framework",
"protocol": "SIP",
"lines": {
"line": [
{
"dirn": {
"pattern": "82008",
"routePartitionName": "Cu1-DirNum-PT"
}
}
]
}
}
]
}
}
The input context shows there are two phones, each with one line. The AddSubscriberNew
workflow will loop over the phones and put the entire contents of each instance in a
context macro called {{ input.PhoneX }}
.
Therefore, when it iterates over the first Phone, {{ input.PhoneX }}
will be equal to:
{
"name": "SEP111222333444",
"product": "Cisco Unified Client Services Framework",
"protocol": "SIP",
"lines": {
"line": [
{
"dirn": {
"pattern": "82007",
"routePartitionName": "Cu1-DirNum-PT"
}
}
]
}
}
In particular, the input context variable {{ input.PhoneX.name }}
will be equal to SEP111222333444
.
During the second iteration, {{ input.PhoneX.name }}
will be equal to SEP000222333444
.