Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Field

Description

id

Unique identifier of related party

href

Reference of the relatedParty, could be a party reference or a partyRole reference

role

Role of the related party

name

Name of the related party


UML model:

Notification Resource Models

Five notification types are defined :

  • orderCreationNotification
  • orderRemoveNotification
  • orderStateChangeNotification
  • orderValueChangeNotification
  • orderInformationRequiredNotification

...

Order Creation Notification

Used to notify that a new order has just been created.

{
      "eventId":"00001",
      "eventTime":"2013-04-19T16:42:25-04:00",
      "eventType":"orderCreationNotification",
      "event":{
      "productOrder":{
   "id":"42",
   "href":"http://serverlocation:port/orderManagement/productOrder/42",
   "externalId":"NiceNameForTheConsumer_42",
   "priority":"1",
   "description":"A wonderful 42 order for brand new products",
   "category":"residential",
   "state":"InProgress",
   "orderDate":"2013-04-12T16:42:23-04:00",
   "completionDate":"2013-04-19T16:42:23-04:00",
   "requestedStartDate":"2013-04-12T16:42:23-04:00",
   "requestedCompletionDate":"2013-04-19T16:42:23-04:00",
   "expectedCompletionDate":"2013-04-19T16:42:23-04:00",
   "notificationContact":"email[email protected]",

   "note":[
      {
         "text":"A free text detailing the note",
         "date":"2013-04-12T16:42:23-04:00",
         "author":"name"
      }
   ],
   "relatedParty":[
      {
         "role":"customer",
         "id":"345221",
         "href":"http://serverlocation:port/partyManagement/customer/345221"
         "name":"John Doe"
      },
      {
         "role":"partner",
         "id":"42",
         "href":"http://serverlocation:port/partyManagement/partner/42"
      },
      {
         "role":"seller",
         "id":"4563",
         "href":"http://serverlocation:port/partnerManagement/partner/4563"
      }
   ],
   "orderItem":[
      {
         "id":"1",
         "action":"add",
         "state":"Acknowledged",
         "billingAccount":[{
               "id":"123456",
               "href":"http://serverlocation:port/billingManagement/billingAccount/123456"
         }],

         "appointment":"http://www.doodle.com/1WCV5647438",
         "productOffering":{
            "id":"42",
            "href":"http: //serverlocation: port/catalogManagement/productOffering/42"
         },
         "product":{
         "place":{
            "href":"http://map.google.com/.../1234112GDE",
            "role":"DeliveryPlace"
         },
            "productCharacteristic":[
               {
                  "name":"Colour",
                  "value":"White"
               },
               {
                  "name":"Memory",
                  "value":"16"
               }
            ]
         }
      },
      {
         "id":"2",
         "action":"modify",
         "state":"InProgress",
         "productOffering":{
            "id":"43",
            "href":"http: //serverlocation: port/catalogManagement/productOffering/43"
         },
         "product":{
            "id":"456",
            "href":"http: //serverlocation: port/inventoryManagement/product/456",
            "productCharacteristic":[
               {
                  "name":"anotherCharacteristic",
                  "value":"itsValue"
               }
            ],
            "relatedParty":[
               {
                  "role":"user",
                  "id":"5667443",
                  "href":"http://serverlocation:port/partyManagement/user/5667443"
                  "name":"Jimmy Doe"
               }
            ]
         }
      },
      {
         "id":"3",
         "action":"add",
         "state":"InProgress",
         "billingAccount":[{
               "id":"123456",
               "href":"http://serverlocation:port/billingManagement/billingAccount/123456"
         }],
         "productOffering":{
            "id":"51",
            "href":"http: //serverlocation: port/catalogManagement/productOffering/51"
         },
         "product":{
            "id":"511",
            "href":"http: //serverlocation: port/inventoryManagement/product/456",
            "productCharacteristic":[
               {
                  "name":"anotherCharacteristic",
                  "value":"itsValue"
               }
            ],
            "productRelationship":[
               {
                  "type":"reliesOn",
                  "product":{
                     "productCharacteristic":[
                        {
                           "name":"MSISDN",
                           "value":"003467488299002"
                        }
                     ]
                  }
               }
            ]
         }
      },
      {
         "id":"4",
         "action":"add",
         "state":"InProgress",
         "billingAccount":[{
               "id":"1789",
               "href":"http://serverlocation:port/billingManagement/billingAccount/1789"
         }],
         "productOffering":{
            "id":"44",
            "href":"http://serverlocation:port/catalogManagement/productOffering/Bundle44",
            "bundledProductOffering":[
               {
                     "id":" BundledPSTN444",
                     "href":"http://serverlocation:port/catalogManagement/productOffering/BundledPSTN444"                      },

               {
                     "id":" Bundled Mobile443",
                     "href":"http://serverlocation:port/catalogManagement/productOffering/BundledMobile443"                      }
            ]
         },
         "product":{
            "productRelationship":[
               {
                  "type":"bundled",
                  "product":{
                     "productCharacteristic":[
                        {
                           "name":"PSTNNumber",
                           "value":"003427488299002"
                        }
                     ]
                  }
               },
               {
                  "type":"bundled",
                  "product":{
                     "productCharacteristic":[
                        {
                           "name":"MobileNumber",
                           "value":"003464553000300"
                        }
                     ]
                  }
               }
            ]
         }
      }
   ]
}
}

Order Remove Notification

Used to notify that an order was deleted.

{
      "eventId":"00002",
      "eventTime":"2013-04-19T16:42:25-30:00",
      "eventType":"orderRemoveNotification",
      "event":{
      "productOrder":{
         "id":" 42",

         "href":"http://serverlocation:port/orderManagement/productOrder/42",

         "externalID":"NiceNameForTheConsumer_42"

      }}
}

Order State change Notification

Used to notify that an order state is evolving.

{
      "eventId":"00003",
      "eventTime":"2013-04-19T16:42:25-30:00",
      "eventType":"orderStateChangeNotification",
      "event":{
      "productOrder":{
         "id":" 42",

         "href":"http://serverlocation:port/orderManagement/productOrder/42",
         "externalID":"NiceNameForTheConsumer_42",

         "state":"Completed"

      }}
}

Order Value Notification

Used to notify that any data in an order has just changed.

{
      "eventId":"00004",
      "eventTime":"2013-04-19T16:42:25-30:00",
      "eventType":"orderValueChangeNotification",
      "event":{
      "productOrder":{
         "id":" 42",

         "href":"http://serverlocation:port/orderManagement/productOrder/42",
         "externalID":"NiceNameForTheConsumer_42",

         "orderItem":[
            {
               "id":"1",
               "product":{
                  "productCharacteristic":[
                     {
                        "name":"Colour",
                        "value":"Black"
                     }
                  ]
               }
            }

         ]

      }}
}

Order Information Required Notification

Used to notify that some data in the order needs to be filled / is missing.

  • "resourcePath" allows to precise if it is a data at order level or at orderItem level (and which one of them) that is missing
  • "fieldPath" details which field is missing, its structure is quite similar to GET filter criteria
    • "missing=" points at the missing field
    • "&<criteria>" can be used to identify a specific element in lists

Simple example : notification contact is missing

{
   "eventId":"00005",
   "eventTime":"2013-04-19T16:42:25-30:00",
   "eventType":"orderInformationRequiredNotification",
   "resourcePath":"/order/42 ",
   "fieldPath":"missing=notificationContact",
      "event":{
   "productOrder":{
      "id":" 42",
      "href":"http://serverlocation:port/orderManagement/productOrder/42",
      "externalID":"NiceNameForTheConsumer_42"
   }}
}

...



...

 

© TM Forum 2015. All Rights Reserved.