Forum Discussion

Mad_hatter's avatar
Mad_hatter
Brass Contributor
Apr 14, 2022

Teams client issue when quitting a call being transferred by a bot

Hello,

 

I'm having several issues involving a microsoft teams bot with calling capability and call transfer.

I use directly the GRAPH API, without using the SDK. The transfer used is direct transfer (as opposed to consultative transfer). Documentation is here.

You will find [poor] screen video captures in attachment.

Here is the first scenario (failed_to_abandon.mp4)

 

  1. 00:02 The bot calls a user (let's call him 'A') from its tenant.
  2. 00:04 'A' answers the call.
  3. 00:07 The bot transfers the call to an other user (let's call him 'B'), 'B' is ringing.
  4. 00:13 'A' decides to interrupt the transfer and click on the quit button inside Microsoft Teams.
  5. 00:13 The Microsoft Teams call window disappears on 'A' side, while 'B' is still ringing.
  6. 00:18 If 'B' answers the call, 'A' and 'B' are connected by phone. 'A' can't drop the call, 'B' can.

 

Here is the second scenario (call_window_closed.mp4).

 

  1. 00:02 The bot calls a user (let's call him 'A') from its tenant.
  2. 00:04 'A' answers the call.
  3. 00:07 The bot transfers the call to an other user (let's call him 'B'), 'B' is ringing.
  4. 00:10 'B' answers the call.
  5. 00:12 The Microsoft Teams call window disappears on 'A' side.

 

Regards,

 

David CHOLLET

  • Mad_hatter - Could you please share bot side log (especially the call chain id and repro time in UTC) for both scenarioes to investigate further?

    • Mad_hatter's avatar
      Mad_hatter
      Brass Contributor

      Nivedipa-MSFT- Hello, I didn't see your message, then I went on vacation, sorry for that.

      Here is a full log extraction of all JSON communications between my public web site and microsoft cloud for the first scenario, except for token acquisition.

      All timestamps are UTC.

       

      <<<<<<<<<< is a HTTP communication from microsoft cloud to my web site.

      >>>>>> is a HTTP communication from my web site to microsoft cloud.

      <<<<<< is a HTTP response from microsoft cloud

       

       

      220502;07:30:35.200;[00410];021;APP_CALL;CREATE_CALL;D90D;RestRequest;GetWebRequest;T;>>>>>> request type=CreateCallRequest uri=https://graph.microsoft.com/v1.0/communications/calls method=POST content=application/json raw={"tenantId":"ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ","callbackUri":"https://preprod.YYYYYYY.cloud:8544/callback/call","mediaConfig":{"@odata.type":"#microsoft.graph.serviceHostedMediaConfig","preFetchMedia":[]},"source":{"identity":{"applicationInstance":{"displayName":"CLICK_N_DIAL","id":"e8571c8b-2b94-4441-a2dd-92e7f6c6c715"}}},"targets":[{"identity":{"user":{"displayName":"David CHOLLET","id":"a75f8483-9fb4-4e07-8e41-6ef5d1e928b0","userPrincipalName":"dchollet@YYYYYYY.com"}}}]}
      220502;07:30:35.421;[00429];021;APP_CALL;CREATE_CALL_ACK;D90D;RestRequest;Read;T;<<<<<< request type=CreateCallRequest response={"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#communications/calls/$entity","id":"741f5c00-9659-4ddf-a6f6-21abf8ddfb91","state":"establishing","transferState":null,"terminationReason":null,"direction":"outgoing","ringingTimeoutInSeconds":null,"subject":null,"callbackUri":"https://preprod.YYYYYYY.cloud:8544/callback/call","requestedModalities":[],"activeModalities":[],"routingPolicies":[],"tenantId":"ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ","myParticipantId":"f1e51f6e-aed6-49bc-a737-80d82266ed9d","callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146","mediaHostedRegion":null,"mediaState":null,"resultInfo":null,"answeredBy":null,"chatInfo":null,"meetingInfo":null,"transcription":null,"callOptions":null,"meetingCapability":null,"breakoutDetails":null,"pstnDetails":null,"toneInfo":null,"incomingContext":null,"terminationSender":null,"meetingGroupDetails":null,"callRoutes":[],"source":{"endpointType":null,"region":null,"languageId":null,"countryCode":null,"participantId":null,"identity":{"user":null,"phone":null,"guest":null,"encrypted":null,"onPremises":null,"applicationInstance":{"id":"e8571c8b-2b94-4441-a2dd-92e7f6c6c715","displayName":"CLICK_N_DIAL","tenantId":null,"registrantId":null},"application":null,"device":null}},"targets":[{"endpointType":null,"replacesCallId":null,"hidden":null,"removeFromDefaultAudioRoutingGroup":null,"participantId":null,"identity":{"phone":null,"guest":null,"encrypted":null,"onPremises":null,"applicationInstance":null,"application":null,"device":null,"user":{"id":"a75f8483-9fb4-4e07-8e41-6ef5d1e928b0","displayName":"David CHOLLET","tenantId":null,"registrantId":null,"userPrincipalName":"dchollet@YYYYYYY.com"}}}],"mediaConfig":{"@odata.type":"#microsoft.graph.serviceHostedMediaConfig","preFetchMedia":[]}}
      220502;07:30:35.480;[00760];028;SERVER;CALLBACK_CALL_ACK;7854;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"establishing","callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:37.563;[00760];028;SERVER;CALLBACK_CALL_ACK;E9C1;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"established","direction":"outgoing","callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:37.628;[00760];028;SERVER;CALLBACK_CALL_ACK;C0DD;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"established","mediaState":{"@odata.type":"#microsoft.graph.callMediaState","audio":"active"},"callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:38.143;[00410];021;APP_CALL;TRANSFER;9F76;RestRequest;GetWebRequest;T;>>>>>> request type=TransferRequest uri=https://graph.microsoft.com/v1.0/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91/transfer method=POST content=application/json raw={"transferTarget":{"endpointType":"default","identity":{"phone":{"id":"XXXXXXXXXX"}}}}
      220502;07:30:38.203;[00760];028;SERVER;CALLBACK_CALL_ACK;9378;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"transferring","callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:38.207;[00429];021;APP_CALL;TRANSFER_ACK;9F76;RestRequest;Read;T;<<<<<< request type=TransferRequest response=
      220502;07:30:38.460;[00760];028;SERVER;CALLBACK_CALL_ACK;76B6;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"hold","mediaState":{"@odata.type":"#microsoft.graph.callMediaState","audio":"inactive"},"callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:38.569;[00760];028;SERVER;CALLBACK_CALL_ACK;42C5;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"transferAccepted","callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146"}}]}
      220502;07:30:41.880;[00760];028;SERVER;CALLBACK_CALL_ACK;3239;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"established","resultInfo":{"@odata.type":"#microsoft.graph.resultInfo","code":481,"subcode":10021,"message":"Call/Transaction Does Not Exist Or Has Ended. DiagCode: 481#10021.@"},"callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146","replacesContext":"aHR0cHM6Ly9jYy1ldXdlLTA3LmNjLnNreXBlLmNvbS9jYy92MS9jYWxsUGFydGljaXBhbnQvZWIyMjYxZTQtMTIzOC00MmE4LWFiZWUtY2NkNzY5ZGU3YjQxLzI0L2syLzEzNC9yZXBsYWNlbWVudD9ydD1lOTcxNTljY2E2MDY0MWQ0OTA3MmZjNGRkM2MxMTRmZCZyYz1leUp5ZEdsa0lqb2lPRHB2Y21kcFpEcGhOelZtT0RRNE15MDVabUkwTFRSbE1EY3RPR1UwTVMwMlpXWTFaREZsT1RJNFlqQWlMQ0p5ZEd4cElqb2labkl0Wm5JaUxDSnlkSEp6SWpvaVJXNTBaWEp3Y21selpWQnliM2g1SW4wJTI1M2QmaT03OSZlPTYzNzg2NzU2NTI0NzE5Mzk0OQ=="}}]}
      220502;07:30:41.940;[00760];028;SERVER;CALLBACK_CALL_ACK;F1D1;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"deleted","resource":"/app/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceUrl":"/communications/calls/741f5c00-9659-4ddf-a6f6-21abf8ddfb91","resourceData":{"@odata.type":"#microsoft.graph.call","state":"terminated","resultInfo":{"@odata.type":"#microsoft.graph.resultInfo","code":200,"subcode":0,"message":"The conversation has ended"},"callChainId":"2f0a2ba2-f2c8-4af5-a10e-de1c984de146","terminationSender":{"@odata.type":"#microsoft.graph.identitySet","user":{"@odata.type":"#microsoft.graph.identity","id":"a75f8483-9fb4-4e07-8e41-6ef5d1e928b0","displayName":"David CHOLLET","identityProvider":"AAD"}}}}]}

       

      Best Regards,

       

      David CHOLLET

       

    • Mad_hatter's avatar
      Mad_hatter
      Brass Contributor

      Nivedipa-MSFT- Here are the logs for the second scenario

       

      220502;09:17:28.494;[00410];021;APP_CALL;CREATE_CALL;7B08;RestRequest;GetWebRequest;T;>>>>>> request type=CreateCallRequest uri=https://graph.microsoft.com/v1.0/communications/calls method=POST content=application/json raw={"tenantId":"ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ","callbackUri":"https://preprod.YYYYYYY.cloud:8544/callback/call","mediaConfig":{"@odata.type":"#microsoft.graph.serviceHostedMediaConfig","preFetchMedia":[]},"source":{"identity":{"applicationInstance":{"displayName":"CLICK_N_DIAL","id":"e8571c8b-2b94-4441-a2dd-92e7f6c6c715"}}},"targets":[{"identity":{"user":{"displayName":"David CHOLLET","id":"a75f8483-9fb4-4e07-8e41-6ef5d1e928b0","userPrincipalName":"dchollet@YYYYYYY.com"}}}]}
      220502;09:17:29.231;[00429];021;APP_CALL;CREATE_CALL_ACK;7B08;RestRequest;Read;T;<<<<<< request type=CreateCallRequest response={"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#communications/calls/$entity","id":"7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","state":"establishing","transferState":null,"terminationReason":null,"direction":"outgoing","ringingTimeoutInSeconds":null,"subject":null,"callbackUri":"https://preprod.YYYYYYY.cloud:8544/callback/call","requestedModalities":[],"activeModalities":[],"routingPolicies":[],"tenantId":"ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ","myParticipantId":"8ae7814a-8c47-4b2f-9432-583b63d784fa","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5","mediaHostedRegion":null,"mediaState":null,"resultInfo":null,"answeredBy":null,"chatInfo":null,"meetingInfo":null,"transcription":null,"callOptions":null,"meetingCapability":null,"breakoutDetails":null,"pstnDetails":null,"toneInfo":null,"incomingContext":null,"terminationSender":null,"meetingGroupDetails":null,"callRoutes":[],"source":{"endpointType":null,"region":null,"languageId":null,"countryCode":null,"participantId":null,"identity":{"user":null,"phone":null,"guest":null,"encrypted":null,"onPremises":null,"applicationInstance":{"id":"e8571c8b-2b94-4441-a2dd-92e7f6c6c715","displayName":"CLICK_N_DIAL","tenantId":null,"registrantId":null},"application":null,"device":null}},"targets":[{"endpointType":null,"replacesCallId":null,"hidden":null,"removeFromDefaultAudioRoutingGroup":null,"participantId":null,"identity":{"phone":null,"guest":null,"encrypted":null,"onPremises":null,"applicationInstance":null,"application":null,"device":null,"user":{"id":"a75f8483-9fb4-4e07-8e41-6ef5d1e928b0","displayName":"David CHOLLET","tenantId":null,"registrantId":null,"userPrincipalName":"dchollet@YYYYYYY.com"}}}],"mediaConfig":{"@odata.type":"#microsoft.graph.serviceHostedMediaConfig","preFetchMedia":[]}}
      220502;09:17:29.332;[00760];028;SERVER;CALLBACK_CALL_ACK;12ED;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"establishing","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:31.040;[00760];028;SERVER;CALLBACK_CALL_ACK;8FDF;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"established","direction":"outgoing","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:31.191;[00760];028;SERVER;CALLBACK_CALL_ACK;47BF;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"established","mediaState":{"@odata.type":"#microsoft.graph.callMediaState","audio":"active"},"callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:31.696;[00410];021;APP_CALL;TRANSFER;07DA;RestRequest;GetWebRequest;T;>>>>>> request type=TransferRequest uri=https://graph.microsoft.com/v1.0/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f/transfer method=POST content=application/json raw={"transferTarget":{"endpointType":"default","identity":{"phone":{"id":"XXXXXXXXXX"}}}}
      220502;09:17:31.979;[00429];021;APP_CALL;TRANSFER_ACK;07DA;RestRequest;Read;T;<<<<<< request type=TransferRequest response=
      220502;09:17:32.011;[00760];028;SERVER;CALLBACK_CALL_ACK;DEB9;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"transferring","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:32.315;[00760];028;SERVER;CALLBACK_CALL_ACK;0DBC;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"hold","mediaState":{"@odata.type":"#microsoft.graph.callMediaState","audio":"inactive"},"callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:32.735;[00760];028;SERVER;CALLBACK_CALL_ACK;5CB4;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"updated","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"transferAccepted","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}
      220502;09:17:39.203;[00760];028;SERVER;CALLBACK_CALL_ACK;4483;QServer;EndOp;X;<<<<<<<<<< {"@odata.type":"#microsoft.graph.commsNotifications","value":[{"@odata.type":"#microsoft.graph.commsNotification","changeType":"deleted","resource":"/app/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceUrl":"/communications/calls/7f1f5b00-b323-4b38-bd41-a2e0850e2d0f","resourceData":{"@odata.type":"#microsoft.graph.call","state":"terminated","resultInfo":{"@odata.type":"#microsoft.graph.resultInfo","code":200,"subcode":7015,"message":"The conversation has ended. DiagCode: 0#7015.@"},"terminationReason":"AppTransferred","callChainId":"750ae201-cc8f-48e9-94cc-a99f93cedba5"}}]}

       

       

       

      Regards,

       

      David CHOLLET

Resources