Difference between revisions of "VM/Current/VMPEGuide/Planning"

From Genesys Documentation
Jump to: navigation, search
(Published)
Line 37: Line 37:
 
}}{{SectionThirdPartyItem
 
}}{{SectionThirdPartyItem
 
|ThirdPartyItem=2f69518e-33af-4c0f-adcc-a98e5427e5e0
 
|ThirdPartyItem=2f69518e-33af-4c0f-adcc-a98e5427e5e0
 +
}}{{SectionThirdPartyItem
 +
|ThirdPartyItem=f006784a-0bf7-42b7-9838-033f4acb61fe
 +
|Variation=No
 +
|Notes=Required for Voice Voicemail Service if you integrate voicemails with email.
 +
}}{{SectionThirdPartyItem
 +
|ThirdPartyItem=3e732261-b78e-4921-b6a6-08ee0a322ca1
 +
|Variation=No
 
}}
 
}}
 
|StorageStatus=No
 
|StorageStatus=No
|StorageText={{Notices|Notice=PEComingSoon}}
+
|StorageText='''Voice Tenant Service'''
 +
{{{!}} class="wikitable" border="1" cellspacing="0" cellpadding="0" width="953"
 +
{{!}} valign="top"{{!}}'''Persistent Volume'''
 +
{{!}} valign="top"{{!}}'''Size'''
 +
{{!}} valign="top"{{!}}'''Type'''
 +
{{!}} valign="top"{{!}}'''IOPS'''
 +
{{!}} valign="top"{{!}}'''Functionality'''
 +
{{!}} valign="top"{{!}}'''Container'''
 +
{{!}} valign="top"{{!}}'''Critical'''
 +
{{!}} valign="top"{{!}}'''Backup needed'''
 +
{{!}}-
 +
{{!}} valign="top"{{!}}log-pvc
 +
{{!}} valign="top"{{!}}50Gi
 +
{{!}} valign="top"{{!}}RWO
 +
{{!}} valign="top"{{!}}medium
 +
{{!}} valign="top"{{!}}storing log files
 +
{{!}} valign="top"{{!}}tenant
 +
{{!}} valign="top"{{!}}Y
 +
{{!}} valign="top"{{!}}Y
 +
{{!}}}
 +
'''SIP Cluster Service'''
 +
{{{!}} class="wikitable" border="1" cellspacing="0" cellpadding="0" width="953"
 +
{{!}} valign="top"{{!}}'''Persistent Volume'''
 +
{{!}} valign="top"{{!}}'''Size'''
 +
{{!}} valign="top"{{!}}'''Type'''
 +
{{!}} valign="top"{{!}}'''IOPS'''
 +
{{!}} valign="top"{{!}}'''Functionality'''
 +
{{!}} valign="top"{{!}}'''Container'''
 +
{{!}} valign="top"{{!}}'''Critical'''
 +
{{!}} valign="top"{{!}}'''Backup needed'''
 +
{{!}}-
 +
{{!}} valign="top"{{!}}log-pvc
 +
{{!}} valign="top"{{!}}50Gi
 +
{{!}} valign="top"{{!}}RWO
 +
{{!}} valign="top"{{!}}medium
 +
{{!}} valign="top"{{!}}storing log files
 +
{{!}} valign="top"{{!}}voice-sip
 +
{{!}} valign="top"{{!}}Y
 +
{{!}} valign="top"{{!}}Y
 +
{{!}}}
 +
'''VoiceMail Service'''
 +
{{{!}} class="wikitable" border="1" cellspacing="0" cellpadding="0" width="953"
 +
{{!}} valign="top"{{!}}'''Persistent Volume'''
 +
{{!}} valign="top"{{!}}'''Type'''
 +
{{!}} valign="top"{{!}}'''IOPS'''
 +
{{!}} valign="top"{{!}}'''Functionality'''
 +
{{!}} valign="top"{{!}}'''Container'''
 +
{{!}} valign="top"{{!}}'''Critical'''
 +
{{!}} valign="top"{{!}}'''Backup needed'''
 +
{{!}}-
 +
{{!}} valign="top"{{!}}Azure blob storage v2
 +
{{!}} valign="top"{{!}}RWM
 +
{{!}} valign="top"{{!}}medium
 +
{{!}} valign="top"{{!}}storing voicemailbox settings and voicemail messages
 +
{{!}} valign="top"{{!}}tenant
 +
{{!}} valign="top"{{!}}Y
 +
{{!}} valign="top"{{!}}Y
 +
{{!}}-
 +
{{!}}AWS S3 Bucket
 +
{{!}}RWM
 +
{{!}}medium
 +
{{!}}storing voicemailbox settings and voicemail messages
 +
{{!}}tenant
 +
{{!}}Y
 +
{{!}}Y
 +
{{!}}-
 +
{{!}}File System
 +
{{!}}RWM
 +
{{!}}medium
 +
{{!}}storing voicemailbox settings and voicemail messages
 +
{{!}}tenant
 +
{{!}}Y
 +
{{!}}Y
 +
{{!}}}
 +
For more information, see [[VM/Current/VMPEGuide/PlanningVoicemail#StorageReqts|Storage requirements]] in the ''Configure and deploy Voicemail'' section of this guide.
 
|NetworkStatus=No
 
|NetworkStatus=No
|NetworkText={{Notices|Notice=PEComingSoon}}
+
|NetworkText=For general network requirements, review the information on the suite-level [[PrivateEdition/Current/PEGuide/ConfigNetwork|Network settings]] page.
 +
<br />
 +
{{{!}} class="wikitable"
 +
{{!}}+
 +
!
 +
!'''Voice Voicemail Service'''
 +
!Voice Tenant Service
 +
{{!}}-
 +
{{!}}'''HA/DR'''
 +
{{!}}Active and active pair
 +
{{!}}Active and active pair
 +
{{!}}-
 +
{{!}}'''Cross-region bandwidth'''
 +
{{!}}Connect to other region voicemail service to push mwi notification
 +
{{!}}Connect to other region tenant
 +
{{!}}-
 +
{{!}}'''External connections'''
 +
{{!}}Redis, Storage Account
 +
{{!}}Redis, Kafka, postgres
 +
{{!}}-
 +
{{!}}'''Pod Security Policy'''
 +
{{!}}All containers running as Genesys user (500) and non-root user
 +
{{!}}All containers running as Genesys user (500) and non-root user
 +
{{!}}-
 +
{{!}}'''SMTP Settings'''
 +
{{!}}SMTP enabled
 +
{{!}}Not applicable
 +
{{!}}-
 +
{{!}}'''TLS/SSL Certificates configurations'''
 +
{{!}}Not applicable
 +
{{!}}Not applicable
 +
{{!}}-
 +
{{!}}'''Ingress'''
 +
{{!}}Not applicable
 +
{{!}}Not applicable
 +
{{!}}-
 +
{{!}}'''CNI for Direct Pod Routing'''
 +
{{!}}Not applicable
 +
{{!}}Not applicable
 +
{{!}}}
 
|BrowserStatus=No
 
|BrowserStatus=No
 
|DependenciesStatus=No
 
|DependenciesStatus=No
 
|DependenciesText=For detailed information about the correct order of services deployment, see {{Link-AnywhereElse|product=PrivateEdition|version=Current|manual=PEGuide|topic=ContDepOrder|display text=Order of services deployment}}.
 
|DependenciesText=For detailed information about the correct order of services deployment, see {{Link-AnywhereElse|product=PrivateEdition|version=Current|manual=PEGuide|topic=ContDepOrder|display text=Order of services deployment}}.
 
|GDPRStatus=No
 
|GDPRStatus=No
|GDPRText=
+
|GDPRText====Multi-Tenant Inbound Voice: Voicemail Service===
===Multi-Tenant Inbound Voice: Voicemail Service===
 
 
Customer data that is likely to identify an individual, or a combination of other held data to identify an individual is considered as Personally Identifiable Information (PII).  Customer name, phone number, email address, bank details, and IP address are some examples of PII.
 
Customer data that is likely to identify an individual, or a combination of other held data to identify an individual is considered as Personally Identifiable Information (PII).  Customer name, phone number, email address, bank details, and IP address are some examples of PII.
  
Line 53: Line 172:
  
 
*When a customer requests to access personal data that is available with the contact center, the PII associated with the client is exported from the database in client-understandable format. You use the '''Export Me''' request to do this.
 
*When a customer requests to access personal data that is available with the contact center, the PII associated with the client is exported from the database in client-understandable format. You use the '''Export Me''' request to do this.
*When a customer requests to delete personal data, the PII associated with that client is deleted from the database within 30 days. However, the Voicemail service is designed in a way that the Customer PII data is deleted in one day using the '''Forget Me''' request.  
+
*When a customer requests to delete personal data, the PII associated with that client is deleted from the database within 30 days. However, the Voicemail service is designed in a way that the Customer PII data is deleted in one day using the '''Forget Me''' request.
  
 
Both '''Export Me''' and '''Forget Me''' requests depend only on Caller ID/ANI input from the customer. The following PII data is deleted or exported during the '''Forget Me''' or '''Export Me''' request process, respectively:
 
Both '''Export Me''' and '''Forget Me''' requests depend only on Caller ID/ANI input from the customer. The following PII data is deleted or exported during the '''Forget Me''' or '''Export Me''' request process, respectively:
Line 70: Line 189:
  
 
#Get the list of regions of a tenant.
 
#Get the list of regions of a tenant.
#Ensure all regions storage accounts are up. If any one of storage accounts is down, you cannot perform the GDPR operation.  
+
#Ensure all regions storage accounts are up. If any one of storage accounts is down, you cannot perform the GDPR operation.
 
#GDPR operates in the master region files, first.
 
#GDPR operates in the master region files, first.
 
#Then, GDPR operates in all the non-master region files.
 
#Then, GDPR operates in all the non-master region files.
 
===APIs===
 
Voicemail service provides APIs to '''Export Me''' and '''Forget Me''' requests of GDPR authenticated with GWS. APIs support any valid client ID. The API can process more than one user's data in a single API request. The API follows the same standard input format used in the current PEC (legacy component).
 
 
{{{!}} class="wikitable"
 
{{!}}'''Forget Me and Export Me API Input.json'''
 
{{!}}'''Forget Me Undo Input.json'''
 
{{!}}-
 
{{!}}<source lang="yaml">{
 
  "caseid":"123456789",
 
  "consumers":[
 
      {"consumer":
 
        [
 
            {"name":"John Doe"},
 
            {"name": "John Q. Doe"},
 
            {"phone":"555551212"}
 
        ]
 
      },
 
      {"consumer":
 
        [
 
            {"name":"Dan Archer"},
 
            {"phone":"555556161"},
 
            {"phone":"555556162"},
 
            {"email":"danny@hollywood.com"},
 
            {"email":"funnyguy@comedy.org"},
 
            {"fbid":"Dan Archer"}
 
        ]
 
      }],
 
  "gim-attached-data":{"kvlist":["AcctNum", "SSN"]}
 
}</source>
 
{{!}}<source lang="yaml">{
 
  "caseid":"123456789"
 
}</source>
 
{{!}}}
 
 
Voicemail service stores only the caller ANI. Therefore, the voicemail processes the records only with the "phone" parameter from the given input and does not include any other parameters.
 
 
'''Forget Me''': API for '''Forget me''' deletes the PII data related to the consumer after one day based on the API request. The files are deleted through the operations:
 
*Message and metadata files are reuploaded with '''forgetme'''=<tt>true</tt> and '''case_id'''=''[case_id_value]'' index tag during the Forget Me API call.
 
*Deleting files using Azure lifecycle management rules. A rule named '''forgetme''' is created in Azure lifecycle management. The '''Forgetme''' rule deletes the file if it meets the following conditions:
 
**The file is not modified in a day
 
**The file has '''forgetme'''=<tt>true</tt> index tag
 
 
The '''Forgetme''' rule is executed automatically by Azure lifecycle management once a day. Therefore, there are limitations in deleting files and capturing them in the limitations section.
 
 
*'''Undo Forget Me''': The API to undo the '''Forget Me''' request with the same case id.
 
*:If the admin/user has wrongly requested/entered the caller ANI, then the voicemail service provides an option to undo the '''Forget Me''' request using another API call with the same case ID, to avoid data loss.
 
*'''Export Me''': The API for '''Export Me''' returns the list of message IDs with message media URL to download the media.
 
**The media URL is also authenticated and authorized with the GWS token.
 
*The Voicemail Service is exposed via the Kubernetes service, and can be accessed by URL in any region: <nowiki>http://voice-voicemail-service.voice.svc.cluster.local:8081/fs</nowiki> (The FQDN remains same in all the regions wherever voicemail service is deployed).
 
*Append the API URL with the above-mentioned base URL for accessing the APIs.
 
*The Voicemail service authenticates and authorizes each request with GWS. The Voicemail service requires the OAuth token in the header for the following the API calls:
 
**Authorization: Basic <token> (or) Bearer <token>
 
**Contact center ID is taken from the authorization token
 
*Here is the API definition:
 
**'''messageId''': Unique message ID of the message.
 
*The API sample response is given based on the sample input mentioned above.
 
 
 
|PEPageType=bf21dc7c-597d-4bbe-8df2-a2a64bd3f167
 
|PEPageType=bf21dc7c-597d-4bbe-8df2-a2a64bd3f167
 
}}
 
}}

Revision as of 14:46, September 8, 2022

This topic is part of the manual Voice Microservices Private Edition Guide for version Current of Voice Microservices.

Find out what to do before deploying Voice Microservices.

Limitations and assumptions

Not applicable

Download the Helm charts

For information about how to download the Helm charts, see Downloading your Genesys Multicloud CX containers.

The following services are included with Voice Microservices:

  • Voice Agent State Service
  • Voice Config Service
  • Voice Dial Plan Service
  • Voice Front End Service
  • Voice Orchestration Service
  • Voice Registrar Service
  • Voice Call State Service
  • Voice RQ Service
  • Voice SIP Cluster Service
  • Voice SIP Proxy Service
  • Voice Voicemail Service
  • Voice Tenant Service

See Helm charts and containers for Voice Microservices for the Helm chart version you must download for your release.

For information about the Voicemail Service, see Before you begin in the Configure and deploy Voicemail section of this guide.

For information about the Tenant service, also included with Voice Microservices, see the Tenant Service Private Edition Guide.

Third-party prerequisites

For information about setting up your Genesys Multicloud CX private edition platform, see Software Requirements.

The following table lists the third-party prerequisites for Voice Microservices.

Third-party services
Name Version Purpose Notes
Redis 6.x Used for caching. Only distributions of Redis that support Redis cluster mode are supported, however, some services may not support cluster mode.
Consul 1.13.x Service discovery, service mesh, and key/value store.For additional information, see Deploy Consul.
Kafka 2.x Message bus.
An SMTP relay Facilitates email communications in an environment where GCXI reports or voicemails are sent as emails to contact center personnel. Genesys recommends PostFix, but you can use any SMTP relay that supports standard mail libraries.Required for Voice Voicemail Service if you integrate voicemails with email.
A container image registry and Helm chart repository Used for downloading Genesys containers and Helm charts into the customer's repository to support a CI/CD pipeline. You can use any Docker OCI compliant registry.

Storage requirements

Voice Tenant Service

Persistent Volume Size Type IOPS Functionality Container Critical Backup needed
log-pvc 50Gi RWO medium storing log files tenant Y Y

SIP Cluster Service

Persistent Volume Size Type IOPS Functionality Container Critical Backup needed
log-pvc 50Gi RWO medium storing log files voice-sip Y Y

VoiceMail Service

Persistent Volume Type IOPS Functionality Container Critical Backup needed
Azure blob storage v2 RWM medium storing voicemailbox settings and voicemail messages tenant Y Y
AWS S3 Bucket RWM medium storing voicemailbox settings and voicemail messages tenant Y Y
File System RWM medium storing voicemailbox settings and voicemail messages tenant Y Y

For more information, see Storage requirements in the Configure and deploy Voicemail section of this guide.

Network requirements

For general network requirements, review the information on the suite-level Network settings page.

Voice Voicemail Service Voice Tenant Service
HA/DR Active and active pair Active and active pair
Cross-region bandwidth Connect to other region voicemail service to push mwi notification Connect to other region tenant
External connections Redis, Storage Account Redis, Kafka, postgres
Pod Security Policy All containers running as Genesys user (500) and non-root user All containers running as Genesys user (500) and non-root user
SMTP Settings SMTP enabled Not applicable
TLS/SSL Certificates configurations Not applicable Not applicable
Ingress Not applicable Not applicable
CNI for Direct Pod Routing Not applicable Not applicable

Browser requirements

Not applicable

Genesys dependencies

For detailed information about the correct order of services deployment, see Order of services deployment.

GDPR support

Multi-Tenant Inbound Voice: Voicemail Service

Customer data that is likely to identify an individual, or a combination of other held data to identify an individual is considered as Personally Identifiable Information (PII). Customer name, phone number, email address, bank details, and IP address are some examples of PII.

According to EU GDPR:

  • When a customer requests to access personal data that is available with the contact center, the PII associated with the client is exported from the database in client-understandable format. You use the Export Me request to do this.
  • When a customer requests to delete personal data, the PII associated with that client is deleted from the database within 30 days. However, the Voicemail service is designed in a way that the Customer PII data is deleted in one day using the Forget Me request.

Both Export Me and Forget Me requests depend only on Caller ID/ANI input from the customer. The following PII data is deleted or exported during the Forget Me or Export Me request process, respectively:

  • Voicemail Message
  • Caller ID/ANI

GDPR feature is supported only when StorageInterface' is configured as BlobStorage, and Voicemail service is configured with Azure storage account data store.

Adding caller_id tag during voicemail deposit

Index tag caller_id is included in voicemail messages and metadata blob files during voicemail deposit. Using the index tags, you can easily filter the Forget Me or Export Me instead of searching every mailbox.

GDPR multi-region support

In voicemail service, all voicemail metadata files are stored in master region and voicemail messages are deposited/stored in the respective region. Therefore, It is required to connect all the regions of a tenant to perform Forget Me, Undo Forget Me, or Export Me processes for GDPR inputs.

To provide multi-region support for GDPR, follow these steps while performing GDPR operation:

  1. Get the list of regions of a tenant.
  2. Ensure all regions storage accounts are up. If any one of storage accounts is down, you cannot perform the GDPR operation.
  3. GDPR operates in the master region files, first.
  4. Then, GDPR operates in all the non-master region files.
Retrieved from "https://all.docs.genesys.com/VM/Current/VMPEGuide/Planning (2025-06-21 12:07:46)"
Comments or questions about this documentation? Contact us for support!