twilio / twilio-voice-react-native

Other
62 stars 22 forks source link

Version 1.0.0 - How to use `displayName` with new approach for call push notifications? #352

Open dev3whistlebiz opened 3 months ago

dev3whistlebiz commented 3 months ago

Issue

No clear statement about how to use new approach with call push notifications incoming_call_caller_name_text, outgoing_call_caller_name_text and answered_call_caller_name_text instead of displayName.

Pre-submission Checklist

Description

After reading docs, spending some time in issues section and java code pull request for push notifications still not sure how to use this new approach for setting caller name instead of number. Since

Custom functionality around the displayName TwiML parameter has been removed

then what to use instead of displayName?

Reproduction Steps

It is more question about documentation and example of using new approach with push notifications than a bug.

Expected Behavior

Documentation providing more information about new way of using push notifications with some examples.

Actual Behavior

Currently there is very little of information about push notifications (please see changelog)

Reproduction Frequency

Please refer to Reproduction Steps section.

Software and Device Information

Please refer to Reproduction Steps section.

Additional Context

N/A

mhuynh5757 commented 3 months ago

Hi @dev3whistlebiz thanks for bringing this to our attention. Are you targeting both iOS and Android, or just Android? We're always looking to improve our docs. Do you think that a code snippet on how and where to put those string resources would be sufficient?

jgozner commented 3 months ago

@mhuynh5757 I was also looking for documentation on this for both Android and IOS

dev3whistlebiz commented 3 months ago

Hello @mhuynh5757 . Thanks for response! I am targeting both iOS and Android. Before the update I was using client.parameter({name: displayName, value: 'my string value'}) but now it is not working. I tried to put those 3 values that are mentioned in changelog into strings.xml file in android directory but still no luck, it shows just a number. I am just confused on how to use it, should I pass those as params in client.parameter on back end part or update strings.xml file in android directory? In second case how should I pass 'my string value' then? Thanks in advance for the response!

P.S. As I mentioned before I am targeting both Android and iOS. Just want to make it work on Android and then look at iOS.

dev3whistlebiz commented 3 months ago

Any updates?

mhuynh5757 commented 3 months ago

Hi all, I'm currently working on improving our documentation. I'll be sure to cover this topic, please stay tuned for it!

dev3whistlebiz commented 2 months ago

Hello, any updates for this ticket?

mhuynh5757 commented 2 months ago

Hi @dev3whistlebiz the improved documentation has been prioritized and is being worked on. Please stay tuned and thanks for your patience!

hieulamblackbird commented 2 months ago

iOS app working perfect for new method CallInvite.updateCallerHandle() with Twilio Voice SDK 1.0.0

hieulamblackbird commented 2 months ago

hi @mhuynh5757

in Android , how we can set caller name with incoming_call_caller_name_text for incoming call notifications in string resource on app running ? As this link Change value of R.string programmatically we cannot edit string resources on Android app running . Thanks in advance for the response

dev3whistlebiz commented 2 months ago

Any updates?

dev3whistlebiz commented 2 months ago

Hello @mhuynh5757 ! Thanks for making PR with update for docs!

After reading this pull request I can't seem to figure out how to set ${from} or ${to} params as for example John, Smith. Could you please provide more information about that?

mhuynh5757 commented 2 months ago

Hi @dev3whistlebiz thanks for reaching out. The From and To values are inherent to a call, for example, making a call from a JS client with the identity alice to a device using the RN SDK registered as bob will see those values being client:alice and client:bob respectively. You bring up a good point in that there are no other specially considered parameters, is that a use case that you will need?

dev3whistlebiz commented 2 months ago

Hello @mhuynh5757 ! Thanks for the response! In my case I was using displayName that I was making based on phone number. So in my case From field was an actual phone number, but server was getting a name by this phone number and passing it to the client side via displayName. With new approach I tried but was not able to figure out how should I pass a custom name instead of passing whatever comes in From field. Any suggestions on it will be very much appreciated! Thank you!

jgozner commented 2 months ago

@mhuynh5757 I also have the same requirement. Instead of displaying a phone number I would like to display the person's name that is calling. Was there a reason that displayName was removed as a supported parameter? The previous workflow was perfect.

Additionally, I think adding the following code back to IOS will support setting the caller id to "client:Bob Will" because right now when I try to use that as a caller id the name shows up as "client: Bob Will"

  NSString *handleName = callInvite.from;
  if ([[handleName substringToIndex:7] isEqualToString:@"client:"]) {
      [handleName = handleName stringByReplacingCharactersInRange:NSMakeRange(0, 7) withString:@""];
  }
periabyte commented 2 months ago

Any update on this?

mhuynh5757 commented 2 months ago

Hi all, thanks for the incredible feedback. This kind of feedback is invaluable for us in order to improve the SDK for everyone. I have filed an internal ticket to support this feature, I'll leave the ticket open for now but please rest assured that we're going to discuss this.

dev3whistlebiz commented 2 months ago

Hello! Any updates on this one?

dev3whistlebiz commented 2 months ago

Hello @mhuynh5757!

It has been a while since any updates.. Could you share any new info about this one?

periabyte commented 1 month ago

@dev3whistlebiz I just used patch-package to temporarily support this. I reverted the changes from this PR

https://github.com/twilio/twilio-voice-react-native/pull/339

mhuynh5757 commented 1 month ago

Hi all, thanks for the great community discussion and problem solving. Unfortunately the team has not had a chance to get around to this issue. I understand that using patches is a very unfavorable solution, and I apologize that you have to resort to that for now. Thank you all for your patience!

SebassCoates commented 2 weeks ago

Is there a chance that the displayName functionality can be brought back? For us, it was a surefire way to avoid displaying PHI/PII as part of the push notification and to avoid logging that in the iOS call history as well. The provided workarounds are not flexible enough and I'm having a hard time understanding why this feature was removed at all? We're unable to upgrade to the latest release and will be stuck on a beta version.