@azure/communication-call-automation 1.5.0-alpha.20250516.3 → 1.5.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -51
- package/dist/browser/callAutomationClient.d.ts +2 -9
- package/dist/browser/callAutomationClient.d.ts.map +1 -1
- package/dist/browser/callAutomationClient.js +9 -106
- package/dist/browser/callAutomationClient.js.map +1 -1
- package/dist/browser/callAutomationEventParser.d.ts.map +1 -1
- package/dist/browser/callAutomationEventParser.js +0 -18
- package/dist/browser/callAutomationEventParser.js.map +1 -1
- package/dist/browser/callConnection.d.ts +4 -6
- package/dist/browser/callConnection.d.ts.map +1 -1
- package/dist/browser/callConnection.js +13 -112
- package/dist/browser/callConnection.js.map +1 -1
- package/dist/browser/callMedia.d.ts +10 -20
- package/dist/browser/callMedia.d.ts.map +1 -1
- package/dist/browser/callMedia.js +20 -188
- package/dist/browser/callMedia.js.map +1 -1
- package/dist/browser/callRecording.d.ts.map +1 -1
- package/dist/browser/callRecording.js +5 -2
- package/dist/browser/callRecording.js.map +1 -1
- package/dist/browser/generated/src/callAutomationApiClient.d.ts +1 -2
- package/dist/browser/generated/src/callAutomationApiClient.d.ts.map +1 -1
- package/dist/browser/generated/src/callAutomationApiClient.js +2 -3
- package/dist/browser/generated/src/callAutomationApiClient.js.map +1 -1
- package/dist/browser/generated/src/models/index.d.ts +205 -850
- package/dist/browser/generated/src/models/index.d.ts.map +1 -1
- package/dist/browser/generated/src/models/index.js +48 -126
- package/dist/browser/generated/src/models/index.js.map +1 -1
- package/dist/browser/generated/src/models/mappers.d.ts +11 -48
- package/dist/browser/generated/src/models/mappers.d.ts.map +1 -1
- package/dist/browser/generated/src/models/mappers.js +460 -1644
- package/dist/browser/generated/src/models/mappers.js.map +1 -1
- package/dist/browser/generated/src/models/parameters.d.ts +1 -7
- package/dist/browser/generated/src/models/parameters.d.ts.map +1 -1
- package/dist/browser/generated/src/models/parameters.js +6 -41
- package/dist/browser/generated/src/models/parameters.js.map +1 -1
- package/dist/browser/generated/src/operations/callConnection.d.ts +2 -9
- package/dist/browser/generated/src/operations/callConnection.d.ts.map +1 -1
- package/dist/browser/generated/src/operations/callConnection.js +1 -33
- package/dist/browser/generated/src/operations/callConnection.js.map +1 -1
- package/dist/browser/generated/src/operations/callMedia.d.ts +8 -15
- package/dist/browser/generated/src/operations/callMedia.d.ts.map +1 -1
- package/dist/browser/generated/src/operations/callMedia.js +25 -50
- package/dist/browser/generated/src/operations/callMedia.js.map +1 -1
- package/dist/browser/generated/src/operations/callRecording.d.ts +1 -7
- package/dist/browser/generated/src/operations/callRecording.d.ts.map +1 -1
- package/dist/browser/generated/src/operations/callRecording.js +0 -24
- package/dist/browser/generated/src/operations/callRecording.js.map +1 -1
- package/dist/browser/generated/src/operations/index.d.ts +0 -1
- package/dist/browser/generated/src/operations/index.d.ts.map +1 -1
- package/dist/browser/generated/src/operations/index.js +0 -1
- package/dist/browser/generated/src/operations/index.js.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callConnection.d.ts +2 -9
- package/dist/browser/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callConnection.js.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callMedia.d.ts +8 -15
- package/dist/browser/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callMedia.js.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callRecording.d.ts +1 -7
- package/dist/browser/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/callRecording.js.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/index.d.ts +0 -1
- package/dist/browser/generated/src/operationsInterfaces/index.d.ts.map +1 -1
- package/dist/browser/generated/src/operationsInterfaces/index.js +0 -1
- package/dist/browser/generated/src/operationsInterfaces/index.js.map +1 -1
- package/dist/browser/index.d.ts +0 -2
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +0 -2
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/models/constants.js +1 -1
- package/dist/browser/models/constants.js.map +1 -1
- package/dist/browser/models/events.d.ts +67 -155
- package/dist/browser/models/events.d.ts.map +1 -1
- package/dist/browser/models/events.js.map +1 -1
- package/dist/browser/models/models.d.ts +5 -14
- package/dist/browser/models/models.d.ts.map +1 -1
- package/dist/browser/models/models.js +1 -3
- package/dist/browser/models/models.js.map +1 -1
- package/dist/browser/models/options.d.ts +2 -35
- package/dist/browser/models/options.d.ts.map +1 -1
- package/dist/browser/models/options.js.map +1 -1
- package/dist/browser/models/responses.d.ts +10 -51
- package/dist/browser/models/responses.d.ts.map +1 -1
- package/dist/browser/models/responses.js.map +1 -1
- package/dist/browser/utli/converters.d.ts.map +1 -1
- package/dist/browser/utli/converters.js +19 -1
- package/dist/browser/utli/converters.js.map +1 -1
- package/dist/commonjs/callAutomationClient.d.ts +2 -9
- package/dist/commonjs/callAutomationClient.d.ts.map +1 -1
- package/dist/commonjs/callAutomationClient.js +11 -108
- package/dist/commonjs/callAutomationClient.js.map +1 -1
- package/dist/commonjs/callAutomationEventParser.d.ts.map +1 -1
- package/dist/commonjs/callAutomationEventParser.js +0 -18
- package/dist/commonjs/callAutomationEventParser.js.map +1 -1
- package/dist/commonjs/callConnection.d.ts +4 -6
- package/dist/commonjs/callConnection.d.ts.map +1 -1
- package/dist/commonjs/callConnection.js +15 -114
- package/dist/commonjs/callConnection.js.map +1 -1
- package/dist/commonjs/callMedia.d.ts +10 -20
- package/dist/commonjs/callMedia.d.ts.map +1 -1
- package/dist/commonjs/callMedia.js +39 -207
- package/dist/commonjs/callMedia.js.map +1 -1
- package/dist/commonjs/callRecording.d.ts.map +1 -1
- package/dist/commonjs/callRecording.js +5 -2
- package/dist/commonjs/callRecording.js.map +1 -1
- package/dist/commonjs/generated/src/callAutomationApiClient.d.ts +1 -2
- package/dist/commonjs/generated/src/callAutomationApiClient.d.ts.map +1 -1
- package/dist/commonjs/generated/src/callAutomationApiClient.js +1 -2
- package/dist/commonjs/generated/src/callAutomationApiClient.js.map +1 -1
- package/dist/commonjs/generated/src/models/index.d.ts +205 -850
- package/dist/commonjs/generated/src/models/index.d.ts.map +1 -1
- package/dist/commonjs/generated/src/models/index.js +49 -127
- package/dist/commonjs/generated/src/models/index.js.map +1 -1
- package/dist/commonjs/generated/src/models/mappers.d.ts +11 -48
- package/dist/commonjs/generated/src/models/mappers.d.ts.map +1 -1
- package/dist/commonjs/generated/src/models/mappers.js +463 -1647
- package/dist/commonjs/generated/src/models/mappers.js.map +1 -1
- package/dist/commonjs/generated/src/models/parameters.d.ts +1 -7
- package/dist/commonjs/generated/src/models/parameters.d.ts.map +1 -1
- package/dist/commonjs/generated/src/models/parameters.js +6 -41
- package/dist/commonjs/generated/src/models/parameters.js.map +1 -1
- package/dist/commonjs/generated/src/operations/callConnection.d.ts +2 -9
- package/dist/commonjs/generated/src/operations/callConnection.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operations/callConnection.js +1 -33
- package/dist/commonjs/generated/src/operations/callConnection.js.map +1 -1
- package/dist/commonjs/generated/src/operations/callMedia.d.ts +8 -15
- package/dist/commonjs/generated/src/operations/callMedia.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operations/callMedia.js +25 -50
- package/dist/commonjs/generated/src/operations/callMedia.js.map +1 -1
- package/dist/commonjs/generated/src/operations/callRecording.d.ts +1 -7
- package/dist/commonjs/generated/src/operations/callRecording.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operations/callRecording.js +0 -24
- package/dist/commonjs/generated/src/operations/callRecording.js.map +1 -1
- package/dist/commonjs/generated/src/operations/index.d.ts +0 -1
- package/dist/commonjs/generated/src/operations/index.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operations/index.js +0 -1
- package/dist/commonjs/generated/src/operations/index.js.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callConnection.d.ts +2 -9
- package/dist/commonjs/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callConnection.js.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callMedia.d.ts +8 -15
- package/dist/commonjs/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callMedia.js.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callRecording.d.ts +1 -7
- package/dist/commonjs/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callRecording.js.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/index.d.ts +0 -1
- package/dist/commonjs/generated/src/operationsInterfaces/index.d.ts.map +1 -1
- package/dist/commonjs/generated/src/operationsInterfaces/index.js +0 -1
- package/dist/commonjs/generated/src/operationsInterfaces/index.js.map +1 -1
- package/dist/commonjs/index.d.ts +0 -2
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +0 -2
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/models/constants.js +1 -1
- package/dist/commonjs/models/constants.js.map +1 -1
- package/dist/commonjs/models/events.d.ts +67 -155
- package/dist/commonjs/models/events.d.ts.map +1 -1
- package/dist/commonjs/models/events.js.map +1 -1
- package/dist/commonjs/models/models.d.ts +5 -14
- package/dist/commonjs/models/models.d.ts.map +1 -1
- package/dist/commonjs/models/models.js +6 -10
- package/dist/commonjs/models/models.js.map +1 -1
- package/dist/commonjs/models/options.d.ts +2 -35
- package/dist/commonjs/models/options.d.ts.map +1 -1
- package/dist/commonjs/models/options.js.map +1 -1
- package/dist/commonjs/models/responses.d.ts +10 -51
- package/dist/commonjs/models/responses.d.ts.map +1 -1
- package/dist/commonjs/models/responses.js.map +1 -1
- package/dist/commonjs/tsdoc-metadata.json +1 -1
- package/dist/commonjs/utli/converters.d.ts.map +1 -1
- package/dist/commonjs/utli/converters.js +18 -0
- package/dist/commonjs/utli/converters.js.map +1 -1
- package/dist/esm/callAutomationClient.d.ts +2 -9
- package/dist/esm/callAutomationClient.d.ts.map +1 -1
- package/dist/esm/callAutomationClient.js +9 -106
- package/dist/esm/callAutomationClient.js.map +1 -1
- package/dist/esm/callAutomationEventParser.d.ts.map +1 -1
- package/dist/esm/callAutomationEventParser.js +0 -18
- package/dist/esm/callAutomationEventParser.js.map +1 -1
- package/dist/esm/callConnection.d.ts +4 -6
- package/dist/esm/callConnection.d.ts.map +1 -1
- package/dist/esm/callConnection.js +13 -112
- package/dist/esm/callConnection.js.map +1 -1
- package/dist/esm/callMedia.d.ts +10 -20
- package/dist/esm/callMedia.d.ts.map +1 -1
- package/dist/esm/callMedia.js +20 -188
- package/dist/esm/callMedia.js.map +1 -1
- package/dist/esm/callRecording.d.ts.map +1 -1
- package/dist/esm/callRecording.js +5 -2
- package/dist/esm/callRecording.js.map +1 -1
- package/dist/esm/generated/src/callAutomationApiClient.d.ts +1 -2
- package/dist/esm/generated/src/callAutomationApiClient.d.ts.map +1 -1
- package/dist/esm/generated/src/callAutomationApiClient.js +2 -3
- package/dist/esm/generated/src/callAutomationApiClient.js.map +1 -1
- package/dist/esm/generated/src/models/index.d.ts +205 -850
- package/dist/esm/generated/src/models/index.d.ts.map +1 -1
- package/dist/esm/generated/src/models/index.js +48 -126
- package/dist/esm/generated/src/models/index.js.map +1 -1
- package/dist/esm/generated/src/models/mappers.d.ts +11 -48
- package/dist/esm/generated/src/models/mappers.d.ts.map +1 -1
- package/dist/esm/generated/src/models/mappers.js +460 -1644
- package/dist/esm/generated/src/models/mappers.js.map +1 -1
- package/dist/esm/generated/src/models/parameters.d.ts +1 -7
- package/dist/esm/generated/src/models/parameters.d.ts.map +1 -1
- package/dist/esm/generated/src/models/parameters.js +6 -41
- package/dist/esm/generated/src/models/parameters.js.map +1 -1
- package/dist/esm/generated/src/operations/callConnection.d.ts +2 -9
- package/dist/esm/generated/src/operations/callConnection.d.ts.map +1 -1
- package/dist/esm/generated/src/operations/callConnection.js +1 -33
- package/dist/esm/generated/src/operations/callConnection.js.map +1 -1
- package/dist/esm/generated/src/operations/callMedia.d.ts +8 -15
- package/dist/esm/generated/src/operations/callMedia.d.ts.map +1 -1
- package/dist/esm/generated/src/operations/callMedia.js +25 -50
- package/dist/esm/generated/src/operations/callMedia.js.map +1 -1
- package/dist/esm/generated/src/operations/callRecording.d.ts +1 -7
- package/dist/esm/generated/src/operations/callRecording.d.ts.map +1 -1
- package/dist/esm/generated/src/operations/callRecording.js +0 -24
- package/dist/esm/generated/src/operations/callRecording.js.map +1 -1
- package/dist/esm/generated/src/operations/index.d.ts +0 -1
- package/dist/esm/generated/src/operations/index.d.ts.map +1 -1
- package/dist/esm/generated/src/operations/index.js +0 -1
- package/dist/esm/generated/src/operations/index.js.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callConnection.d.ts +2 -9
- package/dist/esm/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callConnection.js.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callMedia.d.ts +8 -15
- package/dist/esm/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callMedia.js.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callRecording.d.ts +1 -7
- package/dist/esm/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/callRecording.js.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/index.d.ts +0 -1
- package/dist/esm/generated/src/operationsInterfaces/index.d.ts.map +1 -1
- package/dist/esm/generated/src/operationsInterfaces/index.js +0 -1
- package/dist/esm/generated/src/operationsInterfaces/index.js.map +1 -1
- package/dist/esm/index.d.ts +0 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/constants.js +1 -1
- package/dist/esm/models/constants.js.map +1 -1
- package/dist/esm/models/events.d.ts +67 -155
- package/dist/esm/models/events.d.ts.map +1 -1
- package/dist/esm/models/events.js.map +1 -1
- package/dist/esm/models/models.d.ts +5 -14
- package/dist/esm/models/models.d.ts.map +1 -1
- package/dist/esm/models/models.js +1 -3
- package/dist/esm/models/models.js.map +1 -1
- package/dist/esm/models/options.d.ts +2 -35
- package/dist/esm/models/options.d.ts.map +1 -1
- package/dist/esm/models/options.js.map +1 -1
- package/dist/esm/models/responses.d.ts +10 -51
- package/dist/esm/models/responses.d.ts.map +1 -1
- package/dist/esm/models/responses.js.map +1 -1
- package/dist/esm/utli/converters.d.ts.map +1 -1
- package/dist/esm/utli/converters.js +19 -1
- package/dist/esm/utli/converters.js.map +1 -1
- package/dist/react-native/callAutomationClient.d.ts +2 -9
- package/dist/react-native/callAutomationClient.d.ts.map +1 -1
- package/dist/react-native/callAutomationClient.js +9 -106
- package/dist/react-native/callAutomationClient.js.map +1 -1
- package/dist/react-native/callAutomationEventParser.d.ts.map +1 -1
- package/dist/react-native/callAutomationEventParser.js +0 -18
- package/dist/react-native/callAutomationEventParser.js.map +1 -1
- package/dist/react-native/callConnection.d.ts +4 -6
- package/dist/react-native/callConnection.d.ts.map +1 -1
- package/dist/react-native/callConnection.js +13 -112
- package/dist/react-native/callConnection.js.map +1 -1
- package/dist/react-native/callMedia.d.ts +10 -20
- package/dist/react-native/callMedia.d.ts.map +1 -1
- package/dist/react-native/callMedia.js +20 -188
- package/dist/react-native/callMedia.js.map +1 -1
- package/dist/react-native/callRecording.d.ts.map +1 -1
- package/dist/react-native/callRecording.js +5 -2
- package/dist/react-native/callRecording.js.map +1 -1
- package/dist/react-native/generated/src/callAutomationApiClient.d.ts +1 -2
- package/dist/react-native/generated/src/callAutomationApiClient.d.ts.map +1 -1
- package/dist/react-native/generated/src/callAutomationApiClient.js +2 -3
- package/dist/react-native/generated/src/callAutomationApiClient.js.map +1 -1
- package/dist/react-native/generated/src/models/index.d.ts +205 -850
- package/dist/react-native/generated/src/models/index.d.ts.map +1 -1
- package/dist/react-native/generated/src/models/index.js +48 -126
- package/dist/react-native/generated/src/models/index.js.map +1 -1
- package/dist/react-native/generated/src/models/mappers.d.ts +11 -48
- package/dist/react-native/generated/src/models/mappers.d.ts.map +1 -1
- package/dist/react-native/generated/src/models/mappers.js +460 -1644
- package/dist/react-native/generated/src/models/mappers.js.map +1 -1
- package/dist/react-native/generated/src/models/parameters.d.ts +1 -7
- package/dist/react-native/generated/src/models/parameters.d.ts.map +1 -1
- package/dist/react-native/generated/src/models/parameters.js +6 -41
- package/dist/react-native/generated/src/models/parameters.js.map +1 -1
- package/dist/react-native/generated/src/operations/callConnection.d.ts +2 -9
- package/dist/react-native/generated/src/operations/callConnection.d.ts.map +1 -1
- package/dist/react-native/generated/src/operations/callConnection.js +1 -33
- package/dist/react-native/generated/src/operations/callConnection.js.map +1 -1
- package/dist/react-native/generated/src/operations/callMedia.d.ts +8 -15
- package/dist/react-native/generated/src/operations/callMedia.d.ts.map +1 -1
- package/dist/react-native/generated/src/operations/callMedia.js +25 -50
- package/dist/react-native/generated/src/operations/callMedia.js.map +1 -1
- package/dist/react-native/generated/src/operations/callRecording.d.ts +1 -7
- package/dist/react-native/generated/src/operations/callRecording.d.ts.map +1 -1
- package/dist/react-native/generated/src/operations/callRecording.js +0 -24
- package/dist/react-native/generated/src/operations/callRecording.js.map +1 -1
- package/dist/react-native/generated/src/operations/index.d.ts +0 -1
- package/dist/react-native/generated/src/operations/index.d.ts.map +1 -1
- package/dist/react-native/generated/src/operations/index.js +0 -1
- package/dist/react-native/generated/src/operations/index.js.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callConnection.d.ts +2 -9
- package/dist/react-native/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callConnection.js.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callMedia.d.ts +8 -15
- package/dist/react-native/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callMedia.js.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callRecording.d.ts +1 -7
- package/dist/react-native/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/callRecording.js.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/index.d.ts +0 -1
- package/dist/react-native/generated/src/operationsInterfaces/index.d.ts.map +1 -1
- package/dist/react-native/generated/src/operationsInterfaces/index.js +0 -1
- package/dist/react-native/generated/src/operationsInterfaces/index.js.map +1 -1
- package/dist/react-native/index.d.ts +0 -2
- package/dist/react-native/index.d.ts.map +1 -1
- package/dist/react-native/index.js +0 -2
- package/dist/react-native/index.js.map +1 -1
- package/dist/react-native/models/constants.js +1 -1
- package/dist/react-native/models/constants.js.map +1 -1
- package/dist/react-native/models/events.d.ts +67 -155
- package/dist/react-native/models/events.d.ts.map +1 -1
- package/dist/react-native/models/events.js.map +1 -1
- package/dist/react-native/models/models.d.ts +5 -14
- package/dist/react-native/models/models.d.ts.map +1 -1
- package/dist/react-native/models/models.js +1 -3
- package/dist/react-native/models/models.js.map +1 -1
- package/dist/react-native/models/options.d.ts +2 -35
- package/dist/react-native/models/options.d.ts.map +1 -1
- package/dist/react-native/models/options.js.map +1 -1
- package/dist/react-native/models/responses.d.ts +10 -51
- package/dist/react-native/models/responses.d.ts.map +1 -1
- package/dist/react-native/models/responses.js.map +1 -1
- package/dist/react-native/utli/converters.d.ts.map +1 -1
- package/dist/react-native/utli/converters.js +19 -1
- package/dist/react-native/utli/converters.js.map +1 -1
- package/package.json +17 -11
- package/dist/browser/eventprocessor/callAutomationEventProcessor.d.ts +0 -39
- package/dist/browser/eventprocessor/callAutomationEventProcessor.d.ts.map +0 -1
- package/dist/browser/eventprocessor/callAutomationEventProcessor.js +0 -137
- package/dist/browser/eventprocessor/callAutomationEventProcessor.js.map +0 -1
- package/dist/browser/eventprocessor/eventResponses.d.ts +0 -123
- package/dist/browser/eventprocessor/eventResponses.d.ts.map +0 -1
- package/dist/browser/eventprocessor/eventResponses.js +0 -4
- package/dist/browser/eventprocessor/eventResponses.js.map +0 -1
- package/dist/browser/generated/src/operations/callDialog.d.ts +0 -35
- package/dist/browser/generated/src/operations/callDialog.d.ts.map +0 -1
- package/dist/browser/generated/src/operations/callDialog.js +0 -111
- package/dist/browser/generated/src/operations/callDialog.js.map +0 -1
- package/dist/browser/generated/src/operationsInterfaces/callDialog.d.ts +0 -27
- package/dist/browser/generated/src/operationsInterfaces/callDialog.d.ts.map +0 -1
- package/dist/browser/generated/src/operationsInterfaces/callDialog.js +0 -9
- package/dist/browser/generated/src/operationsInterfaces/callDialog.js.map +0 -1
- package/dist/commonjs/eventprocessor/callAutomationEventProcessor.d.ts +0 -39
- package/dist/commonjs/eventprocessor/callAutomationEventProcessor.d.ts.map +0 -1
- package/dist/commonjs/eventprocessor/callAutomationEventProcessor.js +0 -141
- package/dist/commonjs/eventprocessor/callAutomationEventProcessor.js.map +0 -1
- package/dist/commonjs/eventprocessor/eventResponses.d.ts +0 -123
- package/dist/commonjs/eventprocessor/eventResponses.d.ts.map +0 -1
- package/dist/commonjs/eventprocessor/eventResponses.js +0 -5
- package/dist/commonjs/eventprocessor/eventResponses.js.map +0 -1
- package/dist/commonjs/generated/src/operations/callDialog.d.ts +0 -35
- package/dist/commonjs/generated/src/operations/callDialog.d.ts.map +0 -1
- package/dist/commonjs/generated/src/operations/callDialog.js +0 -116
- package/dist/commonjs/generated/src/operations/callDialog.js.map +0 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callDialog.d.ts +0 -27
- package/dist/commonjs/generated/src/operationsInterfaces/callDialog.d.ts.map +0 -1
- package/dist/commonjs/generated/src/operationsInterfaces/callDialog.js +0 -10
- package/dist/commonjs/generated/src/operationsInterfaces/callDialog.js.map +0 -1
- package/dist/esm/eventprocessor/callAutomationEventProcessor.d.ts +0 -39
- package/dist/esm/eventprocessor/callAutomationEventProcessor.d.ts.map +0 -1
- package/dist/esm/eventprocessor/callAutomationEventProcessor.js +0 -137
- package/dist/esm/eventprocessor/callAutomationEventProcessor.js.map +0 -1
- package/dist/esm/eventprocessor/eventResponses.d.ts +0 -123
- package/dist/esm/eventprocessor/eventResponses.d.ts.map +0 -1
- package/dist/esm/eventprocessor/eventResponses.js +0 -4
- package/dist/esm/eventprocessor/eventResponses.js.map +0 -1
- package/dist/esm/generated/src/operations/callDialog.d.ts +0 -35
- package/dist/esm/generated/src/operations/callDialog.d.ts.map +0 -1
- package/dist/esm/generated/src/operations/callDialog.js +0 -111
- package/dist/esm/generated/src/operations/callDialog.js.map +0 -1
- package/dist/esm/generated/src/operationsInterfaces/callDialog.d.ts +0 -27
- package/dist/esm/generated/src/operationsInterfaces/callDialog.d.ts.map +0 -1
- package/dist/esm/generated/src/operationsInterfaces/callDialog.js +0 -9
- package/dist/esm/generated/src/operationsInterfaces/callDialog.js.map +0 -1
- package/dist/react-native/eventprocessor/callAutomationEventProcessor.d.ts +0 -39
- package/dist/react-native/eventprocessor/callAutomationEventProcessor.d.ts.map +0 -1
- package/dist/react-native/eventprocessor/callAutomationEventProcessor.js +0 -137
- package/dist/react-native/eventprocessor/callAutomationEventProcessor.js.map +0 -1
- package/dist/react-native/eventprocessor/eventResponses.d.ts +0 -123
- package/dist/react-native/eventprocessor/eventResponses.d.ts.map +0 -1
- package/dist/react-native/eventprocessor/eventResponses.js +0 -4
- package/dist/react-native/eventprocessor/eventResponses.js.map +0 -1
- package/dist/react-native/generated/src/operations/callDialog.d.ts +0 -35
- package/dist/react-native/generated/src/operations/callDialog.d.ts.map +0 -1
- package/dist/react-native/generated/src/operations/callDialog.js +0 -111
- package/dist/react-native/generated/src/operations/callDialog.js.map +0 -1
- package/dist/react-native/generated/src/operationsInterfaces/callDialog.d.ts +0 -27
- package/dist/react-native/generated/src/operationsInterfaces/callDialog.d.ts.map +0 -1
- package/dist/react-native/generated/src/operationsInterfaces/callDialog.js +0 -9
- package/dist/react-native/generated/src/operationsInterfaces/callDialog.js.map +0 -1
|
@@ -1,41 +1,25 @@
|
|
|
1
1
|
import type { CallConnection } from "../callConnection.js";
|
|
2
2
|
import type { CallConnectionProperties, CallParticipant } from "./models.js";
|
|
3
|
-
import
|
|
4
|
-
import type { AddParticipantEventResult, AnswerCallEventResult, CancelAllMediaOperationsEventResult, CreateCallEventResult, PlayEventResult, RemoveParticipantEventResult, SendDtmfEventResult, StartRecognizingEventResult, TransferCallToParticipantEventResult, CancelAddParticipantEventResult, ConnectCallEventResult } from "../eventprocessor/eventResponses.js";
|
|
5
|
-
import type { AbortSignalLike } from "@azure/abort-controller";
|
|
3
|
+
import { RecordingState, RecordingKind } from "../generated/src/index.js";
|
|
6
4
|
/**
|
|
7
|
-
*
|
|
5
|
+
* The interface used as parent of [action]CallResult
|
|
8
6
|
*/
|
|
9
|
-
export interface
|
|
10
|
-
/** The callConnectionProperties */
|
|
7
|
+
export interface CallResult {
|
|
11
8
|
callConnectionProperties: CallConnectionProperties;
|
|
12
|
-
/** The callConnection */
|
|
13
9
|
callConnection: CallConnection;
|
|
14
|
-
/** Waiting for event processor to process the event */
|
|
15
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<CreateCallEventResult>;
|
|
16
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* CreateCall result
|
|
13
|
+
*/
|
|
14
|
+
export type CreateCallResult = CallResult;
|
|
17
15
|
/**
|
|
18
16
|
* AnswerCall result
|
|
19
17
|
*/
|
|
20
|
-
export
|
|
21
|
-
/** The callConnectionProperties */
|
|
22
|
-
callConnectionProperties: CallConnectionProperties;
|
|
23
|
-
/** The callConnection */
|
|
24
|
-
callConnection: CallConnection;
|
|
25
|
-
/** Waiting for event processor to process the event */
|
|
26
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<AnswerCallEventResult>;
|
|
27
|
-
}
|
|
18
|
+
export type AnswerCallResult = CallResult;
|
|
28
19
|
/**
|
|
29
20
|
* ConnectCall result
|
|
30
21
|
*/
|
|
31
|
-
export
|
|
32
|
-
/** The callConnectionProperties */
|
|
33
|
-
callConnectionProperties: CallConnectionProperties;
|
|
34
|
-
/** The callConnection */
|
|
35
|
-
callConnection: CallConnection;
|
|
36
|
-
/** Waiting for event processor to process the event */
|
|
37
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<ConnectCallEventResult>;
|
|
38
|
-
}
|
|
22
|
+
export type ConnectCallResult = CallResult;
|
|
39
23
|
/** The response payload for getting participants of the call. */
|
|
40
24
|
export interface ListParticipantsResult {
|
|
41
25
|
/** List of the current participants in the call. */
|
|
@@ -51,22 +35,16 @@ export interface AddParticipantResult {
|
|
|
51
35
|
participant?: CallParticipant;
|
|
52
36
|
/** The operation context provided by client. */
|
|
53
37
|
operationContext?: string;
|
|
54
|
-
/** Waiting for event processor to process the event */
|
|
55
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<AddParticipantEventResult>;
|
|
56
38
|
}
|
|
57
39
|
/** The response payload for transferring the call. */
|
|
58
40
|
export interface TransferCallResult {
|
|
59
41
|
/** The operation context provided by client. */
|
|
60
42
|
operationContext?: string;
|
|
61
|
-
/** Waiting for event processor to process the event */
|
|
62
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<TransferCallToParticipantEventResult>;
|
|
63
43
|
}
|
|
64
44
|
/** The response payload for removing participants from the call. */
|
|
65
45
|
export interface RemoveParticipantResult {
|
|
66
46
|
/** The operation context provided by client. */
|
|
67
47
|
operationContext?: string;
|
|
68
|
-
/** Waiting for event processor to process the event */
|
|
69
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<RemoveParticipantEventResult>;
|
|
70
48
|
}
|
|
71
49
|
/** The response payload for muting participant from the call. */
|
|
72
50
|
export interface MuteParticipantResult {
|
|
@@ -76,30 +54,13 @@ export interface MuteParticipantResult {
|
|
|
76
54
|
/** The response payload for starting a call recording or getting call recording state. */
|
|
77
55
|
export interface RecordingStateResult {
|
|
78
56
|
recordingId: string;
|
|
79
|
-
recordingKind:
|
|
57
|
+
recordingKind: RecordingKind;
|
|
80
58
|
recordingState: RecordingState;
|
|
81
59
|
}
|
|
82
|
-
/** The response payload for starting a call recording or getting call recording state. */
|
|
83
|
-
export interface CancelAllMediaOperationsResult {
|
|
84
|
-
/** Waiting for event processor to process the event */
|
|
85
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<CancelAllMediaOperationsEventResult>;
|
|
86
|
-
}
|
|
87
|
-
/** The response from play. */
|
|
88
|
-
export interface PlayResult {
|
|
89
|
-
/** Waiting for event processor to process the event */
|
|
90
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<PlayEventResult>;
|
|
91
|
-
}
|
|
92
60
|
/** The response payload for sending DTMF tones. */
|
|
93
61
|
export interface SendDtmfTonesResult {
|
|
94
62
|
/** The operation context provided by client. */
|
|
95
63
|
operationContext?: string;
|
|
96
|
-
/** Waiting for event processor to process the event */
|
|
97
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<SendDtmfEventResult>;
|
|
98
|
-
}
|
|
99
|
-
/** The response from recognizing. */
|
|
100
|
-
export interface StartRecognizingResult {
|
|
101
|
-
/** Waiting for event processor to process the event */
|
|
102
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<StartRecognizingEventResult>;
|
|
103
64
|
}
|
|
104
65
|
/** The response payload for cancelling add participant request. */
|
|
105
66
|
export interface CancelAddParticipantOperationResult {
|
|
@@ -107,7 +68,5 @@ export interface CancelAddParticipantOperationResult {
|
|
|
107
68
|
invitationId?: string;
|
|
108
69
|
/** The operation context provided by client. */
|
|
109
70
|
operationContext?: string;
|
|
110
|
-
/** Waiting for event processor to process the event */
|
|
111
|
-
waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<CancelAddParticipantEventResult>;
|
|
112
71
|
}
|
|
113
72
|
//# sourceMappingURL=responses.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../../src/models/responses.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,
|
|
1
|
+
{"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../../src/models/responses.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,UAAU;IAIzB,wBAAwB,EAAE,wBAAwB,CAAC;IAKnD,cAAc,EAAE,cAAc,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAE3C,iEAAiE;AACjE,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,sDAAsD;AACtD,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,oEAAoE;AACpE,MAAM,WAAW,uBAAuB;IACtC,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,iEAAiE;AACjE,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,0FAA0F;AAC1F,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,mEAAmE;AACnE,MAAM,WAAW,mCAAmC;IAClD,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"responses.js","sourceRoot":"","sources":["../../../src/models/responses.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { CallConnection } from \"../callConnection.js\";\nimport type { CallConnectionProperties, CallParticipant } from \"./models.js\";\nimport
|
|
1
|
+
{"version":3,"file":"responses.js","sourceRoot":"","sources":["../../../src/models/responses.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { CallConnection } from \"../callConnection.js\";\nimport type { CallConnectionProperties, CallParticipant } from \"./models.js\";\nimport { RecordingState, RecordingKind } from \"../generated/src/index.js\";\n\n/**\n * The interface used as parent of [action]CallResult\n */\nexport interface CallResult {\n /*\n * The callConnectionProperties\n */\n callConnectionProperties: CallConnectionProperties;\n\n /*\n * The callConnection\n */\n callConnection: CallConnection;\n}\n\n/**\n * CreateCall result\n */\nexport type CreateCallResult = CallResult;\n\n/**\n * AnswerCall result\n */\nexport type AnswerCallResult = CallResult;\n\n/**\n * ConnectCall result\n */\nexport type ConnectCallResult = CallResult;\n\n/** The response payload for getting participants of the call. */\nexport interface ListParticipantsResult {\n /** List of the current participants in the call. */\n values?: CallParticipant[];\n /** Continue of the list of participants */\n nextLink?: string;\n}\n\n/** The response payload for adding participants to the call. */\nexport interface AddParticipantResult {\n /** invitation ID used to add the participant. */\n invitationId?: string;\n /** List of current participants in the call. */\n participant?: CallParticipant;\n /** The operation context provided by client. */\n operationContext?: string;\n}\n\n/** The response payload for transferring the call. */\nexport interface TransferCallResult {\n /** The operation context provided by client. */\n operationContext?: string;\n}\n\n/** The response payload for removing participants from the call. */\nexport interface RemoveParticipantResult {\n /** The operation context provided by client. */\n operationContext?: string;\n}\n\n/** The response payload for muting participant from the call. */\nexport interface MuteParticipantResult {\n /** The operation context provided by client. */\n operationContext?: string;\n}\n\n/** The response payload for starting a call recording or getting call recording state. */\nexport interface RecordingStateResult {\n recordingId: string;\n recordingKind: RecordingKind;\n recordingState: RecordingState;\n}\n\n/** The response payload for sending DTMF tones. */\nexport interface SendDtmfTonesResult {\n /** The operation context provided by client. */\n operationContext?: string;\n}\n\n/** The response payload for cancelling add participant request. */\nexport interface CancelAddParticipantOperationResult {\n /** the invitation ID used to cancel the add participant request. */\n invitationId?: string;\n /** The operation context provided by client. */\n operationContext?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../../src/utli/converters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAE3B,+BAA+B,EAC/B,uBAAuB,EAGvB,2BAA2B,
|
|
1
|
+
{"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../../src/utli/converters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAE3B,+BAA+B,EAC/B,uBAAuB,EAGvB,2BAA2B,EAE5B,MAAM,6BAA6B,CAAC;AAUrC,OAAO,KAAK,EACV,uBAAuB,EACvB,4BAA4B,EAG5B,0BAA0B,EAC1B,gCAAgC,EAChC,gCAAgC,EACjC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAuB3D,wFAAwF;AACxF,wBAAgB,mCAAmC,CACjD,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,GACvD,0BAA0B,GAAG,SAAS,CAQxC;AAED,2FAA2F;AAC3F,wBAAgB,8BAA8B,CAC5C,+BAA+B,EAAE,+BAA+B,GAAG,SAAS,GAC3E,qBAAqB,GAAG,SAAS,CAYnC;AAED,0FAA0F;AAC1F,wBAAgB,gCAAgC,CAC9C,eAAe,EAAE,4BAA4B,GAC5C,uBAAuB,CAoEzB;AAED,4FAA4F;AAC5F,wBAAgB,qCAAqC,CACnD,UAAU,EAAE,uBAAuB,GAClC,4BAA4B,CAkD9B;AAED,yDAAyD;AACzD,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,uBAAuB,GAC1C,eAAe,CAQjB;AAED,qGAAqG;AACrG,wBAAgB,yCAAyC,CACvD,UAAU,EAAE,2BAA2B,GAAG,SAAS,GAClD,gCAAgC,GAAG,SAAS,CAM9C;AAED,mGAAmG;AACnG,wBAAgB,oCAAoC,CAClD,UAAU,EAAE,gCAAgC,GAAG,SAAS,GACvD,2BAA2B,GAAG,SAAS,CAMzC;AAED,qGAAqG;AACrG,wBAAgB,yCAAyC,CACvD,UAAU,EAAE,2BAA2B,GAAG,SAAS,GAClD,gCAAgC,GAAG,SAAS,CAM9C;AAED,mGAAmG;AACnG,wBAAgB,oCAAoC,CAClD,UAAU,EAAE,gCAAgC,GAAG,SAAS,GACvD,2BAA2B,GAAG,SAAS,CAMzC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
|
-
import { serializeCommunicationIdentifier, isCommunicationUserIdentifier, isPhoneNumberIdentifier, isUnknownIdentifier, isMicrosoftTeamsUserIdentifier, isMicrosoftTeamsAppIdentifier, } from "@azure/communication-common";
|
|
3
|
+
import { serializeCommunicationIdentifier, isCommunicationUserIdentifier, isPhoneNumberIdentifier, isUnknownIdentifier, isMicrosoftTeamsUserIdentifier, isMicrosoftTeamsAppIdentifier, isTeamsExtensionUserIdentifier, } from "@azure/communication-common";
|
|
4
4
|
import { KnownCommunicationIdentifierModelKind } from "../generated/src/index.js";
|
|
5
5
|
function extractKind(identifierModel) {
|
|
6
6
|
if (identifierModel.communicationUser !== undefined) {
|
|
@@ -15,6 +15,9 @@ function extractKind(identifierModel) {
|
|
|
15
15
|
if (identifierModel.microsoftTeamsApp !== undefined) {
|
|
16
16
|
return KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp;
|
|
17
17
|
}
|
|
18
|
+
if (identifierModel.teamsExtensionUser !== undefined) {
|
|
19
|
+
return KnownCommunicationIdentifierModelKind.TeamsExtensionUser;
|
|
20
|
+
}
|
|
18
21
|
return KnownCommunicationIdentifierModelKind.Unknown;
|
|
19
22
|
}
|
|
20
23
|
/** Convert PhoneNumberIdentifier to PhoneNumberIdentifierModel(Internal usage class) */
|
|
@@ -74,6 +77,17 @@ export function communicationIdentifierConverter(identifierModel) {
|
|
|
74
77
|
};
|
|
75
78
|
return microsoftTeamsAppIdentifier;
|
|
76
79
|
}
|
|
80
|
+
if (kind === KnownCommunicationIdentifierModelKind.TeamsExtensionUser &&
|
|
81
|
+
identifierModel.teamsExtensionUser !== undefined) {
|
|
82
|
+
const teamsExtensionUserIdentifier = {
|
|
83
|
+
rawId: rawId,
|
|
84
|
+
userId: identifierModel.teamsExtensionUser.userId,
|
|
85
|
+
resourceId: identifierModel.teamsExtensionUser.resourceId,
|
|
86
|
+
tenantId: identifierModel.teamsExtensionUser.tenantId,
|
|
87
|
+
cloud: identifierModel.teamsExtensionUser.cloud,
|
|
88
|
+
};
|
|
89
|
+
return teamsExtensionUserIdentifier;
|
|
90
|
+
}
|
|
77
91
|
const unknownIdentifier = {
|
|
78
92
|
id: rawId ? rawId : "",
|
|
79
93
|
};
|
|
@@ -98,6 +112,10 @@ export function communicationIdentifierModelConverter(identifier) {
|
|
|
98
112
|
const microsoftTeamsAppIdentifierModel = Object.assign({ kind: KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp }, serializedIdentifier);
|
|
99
113
|
return microsoftTeamsAppIdentifierModel;
|
|
100
114
|
}
|
|
115
|
+
if (isTeamsExtensionUserIdentifier(identifier)) {
|
|
116
|
+
const teamsExtensionUserIdentifierModel = Object.assign({ kind: KnownCommunicationIdentifierModelKind.TeamsExtensionUser }, serializedIdentifier);
|
|
117
|
+
return teamsExtensionUserIdentifierModel;
|
|
118
|
+
}
|
|
101
119
|
if (isUnknownIdentifier(identifier)) {
|
|
102
120
|
const unknownIdentifierModel = Object.assign({ kind: KnownCommunicationIdentifierModelKind.Unknown }, serializedIdentifier);
|
|
103
121
|
return unknownIdentifierModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"converters.js","sourceRoot":"","sources":["../../../src/utli/converters.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n PhoneNumberIdentifier,\n CommunicationUserIdentifier,\n UnknownIdentifier,\n SerializedPhoneNumberIdentifier,\n CommunicationIdentifier,\n SerializedCommunicationIdentifier,\n MicrosoftTeamsUserIdentifier,\n MicrosoftTeamsAppIdentifier,\n} from \"@azure/communication-common\";\nimport {\n serializeCommunicationIdentifier,\n isCommunicationUserIdentifier,\n isPhoneNumberIdentifier,\n isUnknownIdentifier,\n isMicrosoftTeamsUserIdentifier,\n isMicrosoftTeamsAppIdentifier,\n} from \"@azure/communication-common\";\nimport type {\n CallParticipantInternal,\n CommunicationIdentifierModel,\n CommunicationIdentifierModelKind,\n KnownCommunicationCloudEnvironmentModel,\n PhoneNumberIdentifierModel,\n CommunicationUserIdentifierModel,\n MicrosoftTeamsAppIdentifierModel,\n} from \"../generated/src/index.js\";\nimport { KnownCommunicationIdentifierModelKind } from \"../generated/src/index.js\";\nimport type { CallParticipant } from \"../models/models.js\";\n\nfunction extractKind(\n identifierModel: CommunicationIdentifierModel,\n): CommunicationIdentifierModelKind {\n if (identifierModel.communicationUser !== undefined) {\n return KnownCommunicationIdentifierModelKind.CommunicationUser;\n }\n if (identifierModel.phoneNumber !== undefined) {\n return KnownCommunicationIdentifierModelKind.PhoneNumber;\n }\n if (identifierModel.microsoftTeamsUser !== undefined) {\n return KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser;\n }\n if (identifierModel.microsoftTeamsApp !== undefined) {\n return KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp;\n }\n return KnownCommunicationIdentifierModelKind.Unknown;\n}\n\n/** Convert PhoneNumberIdentifier to PhoneNumberIdentifierModel(Internal usage class) */\nexport function PhoneNumberIdentifierModelConverter(\n phoneNumberIdentifier: PhoneNumberIdentifier | undefined,\n): PhoneNumberIdentifierModel | undefined {\n if (phoneNumberIdentifier === undefined || phoneNumberIdentifier.phoneNumber === undefined) {\n return undefined;\n }\n\n const phoneNumberIdentifierModel =\n serializeCommunicationIdentifier(phoneNumberIdentifier).phoneNumber;\n return phoneNumberIdentifierModel;\n}\n\n/** Convert SerializedPhoneNumberIdentifier to PhoneNumberIdentifier(Public usage class) */\nexport function phoneNumberIdentifierConverter(\n serializedPhoneNumberIdentifier: SerializedPhoneNumberIdentifier | undefined,\n): PhoneNumberIdentifier | undefined {\n if (\n serializedPhoneNumberIdentifier === undefined ||\n serializedPhoneNumberIdentifier?.value === null\n ) {\n return undefined;\n }\n\n const phoneNumberIdentifier: PhoneNumberIdentifier = {\n phoneNumber: serializedPhoneNumberIdentifier.value,\n };\n return phoneNumberIdentifier;\n}\n\n/** Convert CommunicationIdentifierModel to CommunicationIdentifier(Public usage class) */\nexport function communicationIdentifierConverter(\n identifierModel: CommunicationIdentifierModel,\n): CommunicationIdentifier {\n const rawId = identifierModel.rawId;\n const kind =\n identifierModel.kind !== undefined ? identifierModel.kind : extractKind(identifierModel);\n\n if (\n kind === KnownCommunicationIdentifierModelKind.CommunicationUser &&\n identifierModel.communicationUser !== undefined\n ) {\n const communicationUserIdentifier: CommunicationUserIdentifier = {\n communicationUserId: identifierModel.communicationUser.id,\n };\n return communicationUserIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.PhoneNumber &&\n identifierModel.phoneNumber !== undefined\n ) {\n const phoneNumberIdentifier: PhoneNumberIdentifier = {\n phoneNumber: identifierModel.phoneNumber.value,\n rawId: rawId,\n };\n return phoneNumberIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser &&\n identifierModel.microsoftTeamsUser !== undefined\n ) {\n const microsoftTeamsUserIdentifier: MicrosoftTeamsUserIdentifier = {\n rawId: rawId,\n microsoftTeamsUserId: identifierModel.microsoftTeamsUser.userId,\n isAnonymous: identifierModel.microsoftTeamsUser.isAnonymous,\n cloud: identifierModel.microsoftTeamsUser.cloud as KnownCommunicationCloudEnvironmentModel,\n };\n return microsoftTeamsUserIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp &&\n identifierModel.microsoftTeamsApp !== undefined\n ) {\n const microsoftTeamsAppIdentifier: MicrosoftTeamsAppIdentifier = {\n rawId: rawId,\n teamsAppId: identifierModel.microsoftTeamsApp.appId,\n cloud: identifierModel.microsoftTeamsApp.cloud as KnownCommunicationCloudEnvironmentModel,\n };\n return microsoftTeamsAppIdentifier;\n }\n\n const unknownIdentifier: UnknownIdentifier = {\n id: rawId ? rawId : \"\",\n };\n return unknownIdentifier;\n}\n\n/** Convert CommunicationIdentifier to CommunicationIdentifierModel(Internal usage class) */\nexport function communicationIdentifierModelConverter(\n identifier: CommunicationIdentifier,\n): CommunicationIdentifierModel {\n const serializedIdentifier: SerializedCommunicationIdentifier =\n serializeCommunicationIdentifier(identifier);\n if (isCommunicationUserIdentifier(identifier)) {\n const communicationUserIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.CommunicationUser,\n ...serializedIdentifier,\n };\n return communicationUserIdentifierModel;\n }\n\n if (isPhoneNumberIdentifier(identifier)) {\n const phoneNumberIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.PhoneNumber,\n ...serializedIdentifier,\n };\n return phoneNumberIdentifierModel;\n }\n\n if (isMicrosoftTeamsUserIdentifier(identifier)) {\n const microsoftTeamsUserIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser,\n ...serializedIdentifier,\n };\n return microsoftTeamsUserIdentifierModel;\n }\n\n if (isMicrosoftTeamsAppIdentifier(identifier)) {\n const microsoftTeamsAppIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp,\n ...serializedIdentifier,\n };\n return microsoftTeamsAppIdentifierModel;\n }\n\n if (isUnknownIdentifier(identifier)) {\n const unknownIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.Unknown,\n ...serializedIdentifier,\n };\n return unknownIdentifierModel;\n }\n\n throw new Error();\n}\n\n/** Convert CallParticipantInternal to CallParticipant */\nexport function callParticipantConverter(\n acsCallParticipant: CallParticipantInternal,\n): CallParticipant {\n const callParticipant: CallParticipant = {\n ...acsCallParticipant,\n identifier: acsCallParticipant.identifier\n ? communicationIdentifierConverter(acsCallParticipant.identifier)\n : undefined,\n };\n return callParticipant;\n}\n\n/** Convert CommunicationUserIdentifier to CommunicationUserIdentifierModel (Internal usage class) */\nexport function communicationUserIdentifierModelConverter(\n identifier: CommunicationUserIdentifier | undefined,\n): CommunicationUserIdentifierModel | undefined {\n if (!identifier || !identifier.communicationUserId) {\n return undefined;\n }\n\n return { id: identifier.communicationUserId };\n}\n\n/** Convert CommunicationUserIdentifierModel to CommunicationUserIdentifier (Public usage class) */\nexport function communicationUserIdentifierConverter(\n identifier: CommunicationUserIdentifierModel | undefined,\n): CommunicationUserIdentifier | undefined {\n if (!identifier || !identifier.id) {\n return undefined;\n }\n\n return { communicationUserId: identifier.id };\n}\n\n/** Convert MicrosoftTeamsAppIdentifier to MicrosoftTeamsAppIdentifierModel (Internal usage class) */\nexport function microsoftTeamsAppIdentifierModelConverter(\n identifier: MicrosoftTeamsAppIdentifier | undefined,\n): MicrosoftTeamsAppIdentifierModel | undefined {\n if (!identifier || !identifier.teamsAppId) {\n return undefined;\n }\n\n return { appId: identifier.teamsAppId };\n}\n\n/** Convert MicrosoftTeamsAppIdentifierModel to MicrosoftTeamsAppIdentifier (Public usage class) */\nexport function microsoftTeamsAppIdentifierConverter(\n identifier: MicrosoftTeamsAppIdentifierModel | undefined,\n): MicrosoftTeamsAppIdentifier | undefined {\n if (!identifier || !identifier.appId) {\n return undefined;\n }\n\n return { teamsAppId: identifier.appId };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"converters.js","sourceRoot":"","sources":["../../../src/utli/converters.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n PhoneNumberIdentifier,\n CommunicationUserIdentifier,\n UnknownIdentifier,\n SerializedPhoneNumberIdentifier,\n CommunicationIdentifier,\n SerializedCommunicationIdentifier,\n MicrosoftTeamsUserIdentifier,\n MicrosoftTeamsAppIdentifier,\n TeamsExtensionUserIdentifier,\n} from \"@azure/communication-common\";\nimport {\n serializeCommunicationIdentifier,\n isCommunicationUserIdentifier,\n isPhoneNumberIdentifier,\n isUnknownIdentifier,\n isMicrosoftTeamsUserIdentifier,\n isMicrosoftTeamsAppIdentifier,\n isTeamsExtensionUserIdentifier,\n} from \"@azure/communication-common\";\nimport type {\n CallParticipantInternal,\n CommunicationIdentifierModel,\n CommunicationIdentifierModelKind,\n KnownCommunicationCloudEnvironmentModel,\n PhoneNumberIdentifierModel,\n CommunicationUserIdentifierModel,\n MicrosoftTeamsAppIdentifierModel,\n} from \"../generated/src/index.js\";\nimport { KnownCommunicationIdentifierModelKind } from \"../generated/src/index.js\";\nimport type { CallParticipant } from \"../models/models.js\";\n\nfunction extractKind(\n identifierModel: CommunicationIdentifierModel,\n): CommunicationIdentifierModelKind {\n if (identifierModel.communicationUser !== undefined) {\n return KnownCommunicationIdentifierModelKind.CommunicationUser;\n }\n if (identifierModel.phoneNumber !== undefined) {\n return KnownCommunicationIdentifierModelKind.PhoneNumber;\n }\n if (identifierModel.microsoftTeamsUser !== undefined) {\n return KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser;\n }\n if (identifierModel.microsoftTeamsApp !== undefined) {\n return KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp;\n }\n if (identifierModel.teamsExtensionUser !== undefined) {\n return KnownCommunicationIdentifierModelKind.TeamsExtensionUser;\n }\n return KnownCommunicationIdentifierModelKind.Unknown;\n}\n\n/** Convert PhoneNumberIdentifier to PhoneNumberIdentifierModel(Internal usage class) */\nexport function PhoneNumberIdentifierModelConverter(\n phoneNumberIdentifier: PhoneNumberIdentifier | undefined,\n): PhoneNumberIdentifierModel | undefined {\n if (phoneNumberIdentifier === undefined || phoneNumberIdentifier.phoneNumber === undefined) {\n return undefined;\n }\n\n const phoneNumberIdentifierModel =\n serializeCommunicationIdentifier(phoneNumberIdentifier).phoneNumber;\n return phoneNumberIdentifierModel;\n}\n\n/** Convert SerializedPhoneNumberIdentifier to PhoneNumberIdentifier(Public usage class) */\nexport function phoneNumberIdentifierConverter(\n serializedPhoneNumberIdentifier: SerializedPhoneNumberIdentifier | undefined,\n): PhoneNumberIdentifier | undefined {\n if (\n serializedPhoneNumberIdentifier === undefined ||\n serializedPhoneNumberIdentifier?.value === null\n ) {\n return undefined;\n }\n\n const phoneNumberIdentifier: PhoneNumberIdentifier = {\n phoneNumber: serializedPhoneNumberIdentifier.value,\n };\n return phoneNumberIdentifier;\n}\n\n/** Convert CommunicationIdentifierModel to CommunicationIdentifier(Public usage class) */\nexport function communicationIdentifierConverter(\n identifierModel: CommunicationIdentifierModel,\n): CommunicationIdentifier {\n const rawId = identifierModel.rawId;\n const kind =\n identifierModel.kind !== undefined ? identifierModel.kind : extractKind(identifierModel);\n\n if (\n kind === KnownCommunicationIdentifierModelKind.CommunicationUser &&\n identifierModel.communicationUser !== undefined\n ) {\n const communicationUserIdentifier: CommunicationUserIdentifier = {\n communicationUserId: identifierModel.communicationUser.id,\n };\n return communicationUserIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.PhoneNumber &&\n identifierModel.phoneNumber !== undefined\n ) {\n const phoneNumberIdentifier: PhoneNumberIdentifier = {\n phoneNumber: identifierModel.phoneNumber.value,\n rawId: rawId,\n };\n return phoneNumberIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser &&\n identifierModel.microsoftTeamsUser !== undefined\n ) {\n const microsoftTeamsUserIdentifier: MicrosoftTeamsUserIdentifier = {\n rawId: rawId,\n microsoftTeamsUserId: identifierModel.microsoftTeamsUser.userId,\n isAnonymous: identifierModel.microsoftTeamsUser.isAnonymous,\n cloud: identifierModel.microsoftTeamsUser.cloud as KnownCommunicationCloudEnvironmentModel,\n };\n return microsoftTeamsUserIdentifier;\n }\n\n if (\n kind === KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp &&\n identifierModel.microsoftTeamsApp !== undefined\n ) {\n const microsoftTeamsAppIdentifier: MicrosoftTeamsAppIdentifier = {\n rawId: rawId,\n teamsAppId: identifierModel.microsoftTeamsApp.appId,\n cloud: identifierModel.microsoftTeamsApp.cloud as KnownCommunicationCloudEnvironmentModel,\n };\n return microsoftTeamsAppIdentifier;\n }\n if (\n kind === KnownCommunicationIdentifierModelKind.TeamsExtensionUser &&\n identifierModel.teamsExtensionUser !== undefined\n ) {\n const teamsExtensionUserIdentifier: TeamsExtensionUserIdentifier = {\n rawId: rawId,\n userId: identifierModel.teamsExtensionUser.userId,\n resourceId: identifierModel.teamsExtensionUser.resourceId,\n tenantId: identifierModel.teamsExtensionUser.tenantId,\n cloud: identifierModel.teamsExtensionUser.cloud as KnownCommunicationCloudEnvironmentModel,\n };\n return teamsExtensionUserIdentifier;\n }\n\n const unknownIdentifier: UnknownIdentifier = {\n id: rawId ? rawId : \"\",\n };\n return unknownIdentifier;\n}\n\n/** Convert CommunicationIdentifier to CommunicationIdentifierModel(Internal usage class) */\nexport function communicationIdentifierModelConverter(\n identifier: CommunicationIdentifier,\n): CommunicationIdentifierModel {\n const serializedIdentifier: SerializedCommunicationIdentifier =\n serializeCommunicationIdentifier(identifier);\n if (isCommunicationUserIdentifier(identifier)) {\n const communicationUserIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.CommunicationUser,\n ...serializedIdentifier,\n };\n return communicationUserIdentifierModel;\n }\n\n if (isPhoneNumberIdentifier(identifier)) {\n const phoneNumberIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.PhoneNumber,\n ...serializedIdentifier,\n };\n return phoneNumberIdentifierModel;\n }\n\n if (isMicrosoftTeamsUserIdentifier(identifier)) {\n const microsoftTeamsUserIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.MicrosoftTeamsUser,\n ...serializedIdentifier,\n };\n return microsoftTeamsUserIdentifierModel;\n }\n\n if (isMicrosoftTeamsAppIdentifier(identifier)) {\n const microsoftTeamsAppIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.MicrosoftTeamsApp,\n ...serializedIdentifier,\n };\n return microsoftTeamsAppIdentifierModel;\n }\n if (isTeamsExtensionUserIdentifier(identifier)) {\n const teamsExtensionUserIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.TeamsExtensionUser,\n ...serializedIdentifier,\n };\n return teamsExtensionUserIdentifierModel;\n }\n if (isUnknownIdentifier(identifier)) {\n const unknownIdentifierModel: CommunicationIdentifierModel = {\n kind: KnownCommunicationIdentifierModelKind.Unknown,\n ...serializedIdentifier,\n };\n return unknownIdentifierModel;\n }\n\n throw new Error();\n}\n\n/** Convert CallParticipantInternal to CallParticipant */\nexport function callParticipantConverter(\n acsCallParticipant: CallParticipantInternal,\n): CallParticipant {\n const callParticipant: CallParticipant = {\n ...acsCallParticipant,\n identifier: acsCallParticipant.identifier\n ? communicationIdentifierConverter(acsCallParticipant.identifier)\n : undefined,\n };\n return callParticipant;\n}\n\n/** Convert CommunicationUserIdentifier to CommunicationUserIdentifierModel (Internal usage class) */\nexport function communicationUserIdentifierModelConverter(\n identifier: CommunicationUserIdentifier | undefined,\n): CommunicationUserIdentifierModel | undefined {\n if (!identifier || !identifier.communicationUserId) {\n return undefined;\n }\n\n return { id: identifier.communicationUserId };\n}\n\n/** Convert CommunicationUserIdentifierModel to CommunicationUserIdentifier (Public usage class) */\nexport function communicationUserIdentifierConverter(\n identifier: CommunicationUserIdentifierModel | undefined,\n): CommunicationUserIdentifier | undefined {\n if (!identifier || !identifier.id) {\n return undefined;\n }\n\n return { communicationUserId: identifier.id };\n}\n\n/** Convert MicrosoftTeamsAppIdentifier to MicrosoftTeamsAppIdentifierModel (Internal usage class) */\nexport function microsoftTeamsAppIdentifierModelConverter(\n identifier: MicrosoftTeamsAppIdentifier | undefined,\n): MicrosoftTeamsAppIdentifierModel | undefined {\n if (!identifier || !identifier.teamsAppId) {\n return undefined;\n }\n\n return { appId: identifier.teamsAppId };\n}\n\n/** Convert MicrosoftTeamsAppIdentifierModel to MicrosoftTeamsAppIdentifier (Public usage class) */\nexport function microsoftTeamsAppIdentifierConverter(\n identifier: MicrosoftTeamsAppIdentifierModel | undefined,\n): MicrosoftTeamsAppIdentifier | undefined {\n if (!identifier || !identifier.appId) {\n return undefined;\n }\n\n return { teamsAppId: identifier.appId };\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure/communication-call-automation",
|
|
3
|
-
"version": "1.5.0-
|
|
3
|
+
"version": "1.5.0-beta.1",
|
|
4
4
|
"description": "Azure client library for Azure Communication Call Automation services",
|
|
5
5
|
"sdk-type": "client",
|
|
6
6
|
"main": "./dist/commonjs/index.js",
|
|
@@ -11,19 +11,25 @@
|
|
|
11
11
|
"build": "npm run clean && dev-tool run build-package && dev-tool run extract-api",
|
|
12
12
|
"build:autorest": "autorest ./swagger/README.md",
|
|
13
13
|
"build:samples": "dev-tool samples publish --force",
|
|
14
|
+
"build:test": "echo skipped.",
|
|
14
15
|
"check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
|
|
15
16
|
"clean": "dev-tool run vendored rimraf --glob dist dist-* temp types *.tgz *.log",
|
|
16
17
|
"execute:samples": "dev-tool samples run samples-dev",
|
|
17
18
|
"extract-api": "dev-tool run build-package && dev-tool run extract-api",
|
|
18
19
|
"format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
|
|
19
20
|
"generate:client": "autorest --typescript ./swagger/README.md",
|
|
21
|
+
"integration-test": "npm run integration-test:node && npm run integration-test:browser",
|
|
22
|
+
"integration-test:browser": "echo skipped",
|
|
23
|
+
"integration-test:node": "dev-tool run test:vitest --esm",
|
|
20
24
|
"lint": "eslint package.json api-extractor.json README.md src test",
|
|
21
25
|
"lint:fix": "eslint package.json api-extractor.json README.md src test --fix --fix-type [problem,suggestion]",
|
|
22
26
|
"pack": "npm pack 2>&1",
|
|
23
|
-
"test": "npm run test
|
|
24
|
-
"test:browser": "npm run
|
|
25
|
-
"test:node": "
|
|
26
|
-
"test
|
|
27
|
+
"test": "npm run build:test && npm run unit-test && npm run integration-test",
|
|
28
|
+
"test:browser": "npm run build:test && npm run unit-test:browser",
|
|
29
|
+
"test:node": "npm run build:test && npm run unit-test:node",
|
|
30
|
+
"unit-test": "npm run unit-test:node && npm run unit-test:browser",
|
|
31
|
+
"unit-test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser",
|
|
32
|
+
"unit-test:node": "dev-tool run test:vitest",
|
|
27
33
|
"update-snippets": "dev-tool run update-snippets"
|
|
28
34
|
},
|
|
29
35
|
"files": [
|
|
@@ -63,7 +69,7 @@
|
|
|
63
69
|
},
|
|
64
70
|
"dependencies": {
|
|
65
71
|
"@azure/abort-controller": "^2.1.2",
|
|
66
|
-
"@azure/communication-common": "^2.3.1",
|
|
72
|
+
"@azure/communication-common": "^2.3.2-beta.1",
|
|
67
73
|
"@azure/core-auth": "^1.9.0",
|
|
68
74
|
"@azure/core-client": "^1.9.2",
|
|
69
75
|
"@azure/core-paging": "^1.6.2",
|
|
@@ -76,13 +82,13 @@
|
|
|
76
82
|
},
|
|
77
83
|
"devDependencies": {
|
|
78
84
|
"@azure-tools/test-credential": "^2.0.0",
|
|
79
|
-
"@azure-tools/test-recorder": "
|
|
80
|
-
"@azure-tools/test-utils-vitest": "
|
|
81
|
-
"@azure-tools/vite-plugin-browser-test-map": "
|
|
85
|
+
"@azure-tools/test-recorder": "^4.1.0",
|
|
86
|
+
"@azure-tools/test-utils-vitest": "^1.0.0",
|
|
87
|
+
"@azure-tools/vite-plugin-browser-test-map": "^1.0.0",
|
|
82
88
|
"@azure/communication-identity": "^1.2.0",
|
|
83
89
|
"@azure/communication-phone-numbers": "^1.2.0",
|
|
84
|
-
"@azure/dev-tool": "
|
|
85
|
-
"@azure/eslint-plugin-azure-sdk": "
|
|
90
|
+
"@azure/dev-tool": "^1.0.0",
|
|
91
|
+
"@azure/eslint-plugin-azure-sdk": "^3.0.0",
|
|
86
92
|
"@azure/identity": "^4.5.0",
|
|
87
93
|
"@azure/service-bus": "^7.9.5",
|
|
88
94
|
"@types/node": "^18.0.0",
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { CallAutomationEvent } from "../models/events.js";
|
|
2
|
-
import type { AbortSignalLike } from "@azure/abort-controller";
|
|
3
|
-
/**
|
|
4
|
-
* Call Automation's EventProcessor for incoming events for ease of use.
|
|
5
|
-
*/
|
|
6
|
-
export declare class CallAutomationEventProcessor {
|
|
7
|
-
private readonly defaultTimeout;
|
|
8
|
-
private readonly defaultEventBacklogTimeout;
|
|
9
|
-
private readonly emitter;
|
|
10
|
-
private readonly eventsBacklog;
|
|
11
|
-
private readonly ongoingEvents;
|
|
12
|
-
/**
|
|
13
|
-
* Process incoming events. Pass incoming events to get it processed to have other method like WaitForEventProcessor to function.
|
|
14
|
-
* @param event - Incoming CloudEvent object.
|
|
15
|
-
*/
|
|
16
|
-
processEvents(event: string | Record<string, unknown> | CallAutomationEvent): void;
|
|
17
|
-
/**
|
|
18
|
-
* Wait for matching incoming event. This is blocking Call. Returns the CallAutomationEvent once it arrives in ProcessEvent method.
|
|
19
|
-
* @param predicate - Conditional Predicate for waiting on event.
|
|
20
|
-
* @param abortSignal - Abort signal to abort the operation.
|
|
21
|
-
* @param timeoutInMs - maximum timeout in milliseconds for the operation.
|
|
22
|
-
*/
|
|
23
|
-
waitForEventProcessor(predicate: (event: CallAutomationEvent) => boolean, abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise<CallAutomationEvent>;
|
|
24
|
-
/**
|
|
25
|
-
* Attach Ongoing EventProcessor for specific event for a call.
|
|
26
|
-
* @param eventTypeKind - Matching event.
|
|
27
|
-
* @param callConnectionId - CallConnectionId of the call.
|
|
28
|
-
* @param eventProcessor - Method that will execute once the matching event arrives.
|
|
29
|
-
*/
|
|
30
|
-
attachOngoingEventProcessor(callConnectionId: string, eventTypeKind: CallAutomationEvent["kind"], eventProcessor: (event: CallAutomationEvent) => Promise<void>): Promise<void>;
|
|
31
|
-
/**
|
|
32
|
-
* Detach Ongoing EventProcessor for specific event.
|
|
33
|
-
* @param eventTypeKind - Matching event.
|
|
34
|
-
* @param callConnectionId - CallConnectionId of the call.
|
|
35
|
-
*/
|
|
36
|
-
detachOngoingEventProcessor(callConnectionId: string, eventTypeKind: CallAutomationEvent["kind"]): Promise<void>;
|
|
37
|
-
private generateIdTypeKey;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=callAutomationEventProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"callAutomationEventProcessor.d.ts","sourceRoot":"","sources":["../../../src/eventprocessor/callAutomationEventProcessor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IACzC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAQ;IACnD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAE7D;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,mBAAmB,GAAG,IAAI;IAsCzF;;;;;OAKG;IACU,qBAAqB,CAChC,SAAS,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,EAClD,WAAW,CAAC,EAAE,eAAe,EAC7B,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,mBAAmB,CAAC;IAmD/B;;;;;OAKG;IACU,2BAA2B,CACtC,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAC1C,cAAc,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,GAC5D,OAAO,CAAC,IAAI,CAAC;IAchB;;;;OAIG;IACU,2BAA2B,CACtC,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,mBAAmB,CAAC,MAAM,CAAC,GACzC,OAAO,CAAC,IAAI,CAAC;IAWhB,OAAO,CAAC,iBAAiB;CAG1B"}
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT License.
|
|
3
|
-
import { EventEmitter } from "events";
|
|
4
|
-
import { parseCallAutomationEvent } from "../callAutomationEventParser.js";
|
|
5
|
-
/**
|
|
6
|
-
* Call Automation's EventProcessor for incoming events for ease of use.
|
|
7
|
-
*/
|
|
8
|
-
export class CallAutomationEventProcessor {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.defaultTimeout = 240000; // 240 seconds in milliseconds
|
|
11
|
-
this.defaultEventBacklogTimeout = 5000; // 5 seconds in milliseconds
|
|
12
|
-
this.emitter = new EventEmitter();
|
|
13
|
-
this.eventsBacklog = [];
|
|
14
|
-
this.ongoingEvents = new Map();
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Process incoming events. Pass incoming events to get it processed to have other method like WaitForEventProcessor to function.
|
|
18
|
-
* @param event - Incoming CloudEvent object.
|
|
19
|
-
*/
|
|
20
|
-
processEvents(event) {
|
|
21
|
-
if (event) {
|
|
22
|
-
let callAutomationEvent;
|
|
23
|
-
// parse the event if not parsed already
|
|
24
|
-
if (typeof event === "string" || Array.isArray(event)) {
|
|
25
|
-
callAutomationEvent = parseCallAutomationEvent(event || event);
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
callAutomationEvent = event;
|
|
29
|
-
}
|
|
30
|
-
// add to eventbacklog
|
|
31
|
-
this.eventsBacklog.push(callAutomationEvent);
|
|
32
|
-
setTimeout(() => {
|
|
33
|
-
const index = this.eventsBacklog.indexOf(callAutomationEvent);
|
|
34
|
-
if (index !== -1) {
|
|
35
|
-
this.eventsBacklog.splice(index, 1);
|
|
36
|
-
}
|
|
37
|
-
}, this.defaultEventBacklogTimeout);
|
|
38
|
-
// parse event if needed
|
|
39
|
-
this.emitter.emit("event", callAutomationEvent);
|
|
40
|
-
// check if event is disconnect, remove all related items in memory
|
|
41
|
-
if (callAutomationEvent.kind === "CallDisconnected") {
|
|
42
|
-
// remove from ongoingevent list
|
|
43
|
-
for (const [key, evProcessor] of this.ongoingEvents.entries()) {
|
|
44
|
-
if (key.includes(callAutomationEvent.callConnectionId)) {
|
|
45
|
-
// Deregister the event listener
|
|
46
|
-
this.ongoingEvents.delete(key);
|
|
47
|
-
this.emitter.off("event", evProcessor);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Wait for matching incoming event. This is blocking Call. Returns the CallAutomationEvent once it arrives in ProcessEvent method.
|
|
55
|
-
* @param predicate - Conditional Predicate for waiting on event.
|
|
56
|
-
* @param abortSignal - Abort signal to abort the operation.
|
|
57
|
-
* @param timeoutInMs - maximum timeout in milliseconds for the operation.
|
|
58
|
-
*/
|
|
59
|
-
async waitForEventProcessor(predicate, abortSignal, timeoutInMs) {
|
|
60
|
-
const controller = new AbortController();
|
|
61
|
-
if (!timeoutInMs) {
|
|
62
|
-
timeoutInMs = this.defaultTimeout;
|
|
63
|
-
}
|
|
64
|
-
const filteredEvents = this.eventsBacklog.filter((event) => predicate(event));
|
|
65
|
-
if (filteredEvents.length > 0) {
|
|
66
|
-
// item found - delete from the list and return the event
|
|
67
|
-
this.eventsBacklog.splice(0, this.eventsBacklog.length, ...filteredEvents);
|
|
68
|
-
return filteredEvents[0];
|
|
69
|
-
}
|
|
70
|
-
// await for this event to comeback
|
|
71
|
-
let eventAwaiter;
|
|
72
|
-
const eventPromise = new Promise((resolve, reject) => {
|
|
73
|
-
// set abort signal
|
|
74
|
-
if (abortSignal) {
|
|
75
|
-
// If an external abortSignal is provided, link it with the controller.
|
|
76
|
-
abortSignal.addEventListener("abort", () => {
|
|
77
|
-
controller.abort();
|
|
78
|
-
this.emitter.off("event", eventAwaiter);
|
|
79
|
-
reject(new Error("Abort: Operation was aborted."));
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
// set timeout for this event
|
|
83
|
-
const timer = setTimeout(() => {
|
|
84
|
-
this.emitter.off("event", eventAwaiter);
|
|
85
|
-
reject(new Error("Timeout: Matching event did not arrive within timeout."));
|
|
86
|
-
}, timeoutInMs);
|
|
87
|
-
eventAwaiter = (event) => {
|
|
88
|
-
if (predicate(event)) {
|
|
89
|
-
// Deregister timer and the event listener
|
|
90
|
-
clearTimeout(timer);
|
|
91
|
-
this.emitter.off("event", eventAwaiter);
|
|
92
|
-
// Resolve with the matching event
|
|
93
|
-
resolve(event);
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
// Register the event awaiter
|
|
97
|
-
this.emitter.on("event", eventAwaiter);
|
|
98
|
-
});
|
|
99
|
-
return eventPromise;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Attach Ongoing EventProcessor for specific event for a call.
|
|
103
|
-
* @param eventTypeKind - Matching event.
|
|
104
|
-
* @param callConnectionId - CallConnectionId of the call.
|
|
105
|
-
* @param eventProcessor - Method that will execute once the matching event arrives.
|
|
106
|
-
*/
|
|
107
|
-
async attachOngoingEventProcessor(callConnectionId, eventTypeKind, eventProcessor) {
|
|
108
|
-
const eventAwaiter = (event) => {
|
|
109
|
-
if (event.callConnectionId === callConnectionId && event.kind === eventTypeKind) {
|
|
110
|
-
eventProcessor(event);
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
// Register the event awaiter
|
|
114
|
-
this.emitter.on("event", eventAwaiter);
|
|
115
|
-
// attach the ongoing event processor to the map
|
|
116
|
-
const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind);
|
|
117
|
-
this.ongoingEvents.set(uniqueId, eventAwaiter);
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Detach Ongoing EventProcessor for specific event.
|
|
121
|
-
* @param eventTypeKind - Matching event.
|
|
122
|
-
* @param callConnectionId - CallConnectionId of the call.
|
|
123
|
-
*/
|
|
124
|
-
async detachOngoingEventProcessor(callConnectionId, eventTypeKind) {
|
|
125
|
-
const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind);
|
|
126
|
-
const value = this.ongoingEvents.get(uniqueId);
|
|
127
|
-
if (value) {
|
|
128
|
-
// Deregister the event listener
|
|
129
|
-
this.ongoingEvents.delete(uniqueId);
|
|
130
|
-
this.emitter.off("event", value);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
generateIdTypeKey(callConnectionId, eventType) {
|
|
134
|
-
return `${callConnectionId}:${eventType}`;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=callAutomationEventProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"callAutomationEventProcessor.js","sourceRoot":"","sources":["../../../src/eventprocessor/callAutomationEventProcessor.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { EventEmitter } from \"events\";\nimport type { CallAutomationEvent } from \"../models/events.js\";\nimport { parseCallAutomationEvent } from \"../callAutomationEventParser.js\";\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\n\n/**\n * Call Automation's EventProcessor for incoming events for ease of use.\n */\nexport class CallAutomationEventProcessor {\n private readonly defaultTimeout = 240000; // 240 seconds in milliseconds\n private readonly defaultEventBacklogTimeout = 5000; // 5 seconds in milliseconds\n private readonly emitter = new EventEmitter();\n private readonly eventsBacklog: Array<CallAutomationEvent> = [];\n private readonly ongoingEvents: Map<string, any> = new Map();\n\n /**\n * Process incoming events. Pass incoming events to get it processed to have other method like WaitForEventProcessor to function.\n * @param event - Incoming CloudEvent object.\n */\n public processEvents(event: string | Record<string, unknown> | CallAutomationEvent): void {\n if (event) {\n let callAutomationEvent: CallAutomationEvent;\n // parse the event if not parsed already\n if (typeof event === \"string\" || Array.isArray(event)) {\n callAutomationEvent = parseCallAutomationEvent(\n (event as string) || (event as Record<string, unknown>),\n );\n } else {\n callAutomationEvent = event as CallAutomationEvent;\n }\n\n // add to eventbacklog\n this.eventsBacklog.push(callAutomationEvent);\n setTimeout(() => {\n const index = this.eventsBacklog.indexOf(callAutomationEvent);\n if (index !== -1) {\n this.eventsBacklog.splice(index, 1);\n }\n }, this.defaultEventBacklogTimeout);\n\n // parse event if needed\n this.emitter.emit(\"event\", callAutomationEvent);\n\n // check if event is disconnect, remove all related items in memory\n if (callAutomationEvent.kind === \"CallDisconnected\") {\n // remove from ongoingevent list\n for (const [key, evProcessor] of this.ongoingEvents.entries()) {\n if (key.includes(callAutomationEvent.callConnectionId)) {\n // Deregister the event listener\n this.ongoingEvents.delete(key);\n this.emitter.off(\"event\", evProcessor);\n }\n }\n }\n }\n }\n\n /**\n * Wait for matching incoming event. This is blocking Call. Returns the CallAutomationEvent once it arrives in ProcessEvent method.\n * @param predicate - Conditional Predicate for waiting on event.\n * @param abortSignal - Abort signal to abort the operation.\n * @param timeoutInMs - maximum timeout in milliseconds for the operation.\n */\n public async waitForEventProcessor(\n predicate: (event: CallAutomationEvent) => boolean,\n abortSignal?: AbortSignalLike,\n timeoutInMs?: number,\n ): Promise<CallAutomationEvent> {\n const controller = new AbortController();\n if (!timeoutInMs) {\n timeoutInMs = this.defaultTimeout;\n }\n\n const filteredEvents = this.eventsBacklog.filter((event) => predicate(event));\n if (filteredEvents.length > 0) {\n // item found - delete from the list and return the event\n this.eventsBacklog.splice(0, this.eventsBacklog.length, ...filteredEvents);\n return filteredEvents[0];\n }\n\n // await for this event to comeback\n let eventAwaiter: (event: CallAutomationEvent) => void;\n\n const eventPromise = new Promise<CallAutomationEvent>((resolve, reject) => {\n // set abort signal\n if (abortSignal) {\n // If an external abortSignal is provided, link it with the controller.\n abortSignal.addEventListener(\"abort\", () => {\n controller.abort();\n this.emitter.off(\"event\", eventAwaiter);\n reject(new Error(\"Abort: Operation was aborted.\"));\n });\n }\n\n // set timeout for this event\n const timer = setTimeout(() => {\n this.emitter.off(\"event\", eventAwaiter);\n reject(new Error(\"Timeout: Matching event did not arrive within timeout.\"));\n }, timeoutInMs);\n\n eventAwaiter = (event: CallAutomationEvent) => {\n if (predicate(event)) {\n // Deregister timer and the event listener\n clearTimeout(timer);\n this.emitter.off(\"event\", eventAwaiter);\n\n // Resolve with the matching event\n resolve(event);\n }\n };\n\n // Register the event awaiter\n this.emitter.on(\"event\", eventAwaiter);\n });\n\n return eventPromise;\n }\n\n /**\n * Attach Ongoing EventProcessor for specific event for a call.\n * @param eventTypeKind - Matching event.\n * @param callConnectionId - CallConnectionId of the call.\n * @param eventProcessor - Method that will execute once the matching event arrives.\n */\n public async attachOngoingEventProcessor(\n callConnectionId: string,\n eventTypeKind: CallAutomationEvent[\"kind\"],\n eventProcessor: (event: CallAutomationEvent) => Promise<void>,\n ): Promise<void> {\n const eventAwaiter = (event: CallAutomationEvent): void => {\n if (event.callConnectionId === callConnectionId && event.kind === eventTypeKind) {\n eventProcessor(event);\n }\n };\n // Register the event awaiter\n this.emitter.on(\"event\", eventAwaiter);\n\n // attach the ongoing event processor to the map\n const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind);\n this.ongoingEvents.set(uniqueId, eventAwaiter);\n }\n\n /**\n * Detach Ongoing EventProcessor for specific event.\n * @param eventTypeKind - Matching event.\n * @param callConnectionId - CallConnectionId of the call.\n */\n public async detachOngoingEventProcessor(\n callConnectionId: string,\n eventTypeKind: CallAutomationEvent[\"kind\"],\n ): Promise<void> {\n const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind);\n const value = this.ongoingEvents.get(uniqueId);\n\n if (value) {\n // Deregister the event listener\n this.ongoingEvents.delete(uniqueId);\n this.emitter.off(\"event\", value);\n }\n }\n\n private generateIdTypeKey(callConnectionId: string, eventType: string): string {\n return `${callConnectionId}:${eventType}`;\n }\n}\n"]}
|