https://github.com/nordcloud/mc-connect-softphone
https://github.com/nordcloud/mc-connect-softphone
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/nordcloud/mc-connect-softphone
- Owner: nordcloud
- Created: 2023-03-19T18:39:33.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-07-20T08:24:40.000Z (about 3 years ago)
- Last Synced: 2024-12-30T22:22:51.043Z (over 1 year ago)
- Language: TypeScript
- Homepage:
- Size: 849 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MC Connect Softphone
## Development
Export your AWS credentials as env variables (or use [aws-vault](https://github.com/99designs/aws-vault)).
AWS role: *arn:aws:iam::552821478383:role/Nordcloud-MC-Connect*
Start local API:
- Run Docker
- `npm install`
- `npm start`
- Go to http://localhost:3000
The server will restart on every file change. If it crashes - restart it manually. Changes in in the *src/assets* folder are picked without restarting the server.
Troubleshooting:
- *Session expired* — You need to log in with *AWS Connect SAML SSO*. Look for the link in [id.nordcloud.com](https://id.nordcloud.com). If you don't see the link [request access](https://nordcloud.atlassian.net/servicedesk/customer/portal/223/group/327/create/2570).
- *The security token included in the request is invalid* — The AWS credentials are expired or missing. Lambda is trying to connect to DynamoDB.
## Deployment
**dev**: `npm run deploy:dev`.
**prod**: Push to `main` branch.
## Environments
**dev**: https://cx1wq7djx5.execute-api.eu-central-1.amazonaws.com
**prod**: https://t2yzyfrm23.execute-api.eu-central-1.amazonaws.com
## Okta integration
* Sign-in method: OIDC - OpenID Connect
* Application type: Single-Page Application
* Proof Key for Code Exchange (PKCE): enabled
* Grant type: Authorization Code
* Sign-in redirect URIs: api-url/oauth-callback
* Sign-out redirect URIs: api-url
## Amazon Connect integration
[Connect AWS console](https://eu-central-1.console.aws.amazon.com/connect/v2/app/settings/flows?region=eu-central-1)
* In "Approved origins": add urls for prod, dev and localhost.
* In "Contact flows": Add the "connect-outbound-flow" lambda for prod and dev.
[Connect Dashboard](https://nordcloud-connect.my.connect.aws/home) > Contact Flow > Whisper Outbound Flow
* Add a "Invoke AWS Lambda function" block. Choose the lambda for "connect-outbound-flow". Add a function input parameter - Destination Key: `Username`, (Set Dynamically) Namespace: *Agent*, Value: *User name*. Timeout: 8
* Add a "Call Phone Number” block, link it to the the previous block. Set "Caller ID number to display" > User Attribute > Namespace: External > Value: `caller_id`,