We need to embed the contact(medium) info's into a TMF621 ticket.
A construction via partyRole looks correct in the sense that the contactMedium information may depend on the role the party is playing:
"relatedParty": [
{
"@type": "RelatedPartyOrPartyRole",
"role": "customerContact",
"partyOrPartyRole": {
"@type": "PartyRole",
"name": "Customer Contact Role",
"role": "customerContact",
"engagedParty": {
"@type": "PartyRef",
"id": "474730717",
"name": "Sam Smith"
},
"contactMedium": [
{
"@type": "ContactMedium",
"contactType": "telephone",
"preferred": true,
"@schemaLocation": "https://tmforum.org/TMF632/PartyManagement/PhoneContactMedium.schema.json",
"phoneNumber": "0032467384756"
},
{
"@type": "ContactMedium",
"contactType": "email",
"preferred": false,
"@schemaLocation": "https://tmforum.org/TMF632/PartyManagement/EmailContactMedium.schema.json",
"emailAddress": "Sam.Smith@ispX.com"
}
]
}
}
]
The TMF621 specs only allow to use partyRoleRef:
relatedParty [
The related party(ies) that are associated to the ticket.
RelatedPartyRefOrPartyRoleRef_FVO
description:
RelatedParty reference. A related party defines party or party role or its reference, linked to a specific entity
@type* [...]
@baseType [...]
@schemaLocation [...]
role* [...]
partyOrPartyRole PartyRefOrPartyRoleRef_FVO{...}
}]
What are the best options to solve this this - taking into account that we don't want a complex process where external party's first need to create their own contacts via TMF632 in our database? Do we 'fix' it and change or add a relatedParty via a PartyOrPartyRole_FVO (like is available on productOrder/productOrderItem/product/relatedParty?)
MEF has it own approach & solution - custom separate class, but that totally neglects the party (role) approach..:-(
See also my other question related to contact(medium) info: TMF622 - How to embed contact info - not possible on product order level via PartyRole? | Open APIs
Thanks for your advice.
------------------------------
Peter Broucke
Proximus SA
------------------------------