Making Callers (Phone) anonymous

259 views
Skip to first unread message

James MacLean

unread,
Dec 5, 2019, 6:16:11 PM12/5/19
to BigBlueButton-dev
Callers via phone enter the BBB session with their phone number or caller ID.

Is it possible to not have this information get to BBB sessions? We have students that we offer anonymous help to, but, if we enable the phone in option, they will have their phone number registered and recorded in the session.

I've tried using set and export in the dialplan check_if_conference_active extension with variables including:

   <action application="export" data="caller_id_number=1000"/>
   <action application="export" data="caller_id_name=Student"/>
   <action application="export" data="username=Student2"/>
   <action application="export" data="user_name=Student3"/>
   <action application="export" data="effective_caller_id_name=Student4"/>
   <action application="export" data="effective_caller_id_number=1001"/>
   <action application="export" data="origination_privacy=hide_name:hide_number"/>
   <action application="export" data="privacy_hide_name=true"/>
   <action application="export" data="privacy_hide_number=true"/>

BBB session still took the original phone number or caller id.

Thanks,
JES

Richard Alam

unread,
Dec 5, 2019, 6:25:46 PM12/5/19
to BigBlueButton-dev
Hi,

BBB session still took the original phone number or caller id.

Thanks,
JES

--
You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bigbluebutton-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bigbluebutton-dev/7ffcddc8-2f79-49fb-a8ba-c8fa09d9b116%40googlegroups.com.


--

James MacLean

unread,
Dec 5, 2019, 6:39:35 PM12/5/19
to BigBlueButton-dev
Hi Richard,

Thanks for the suggestion, but, it was already one in the list of variables below I had tried without success.

JES


On Thursday, 5 December 2019 19:25:46 UTC-4, Richard Alam wrote:
Hi,

On Thu, Dec 5, 2019 at 6:16 PM James MacLean <macl...@gmail.com> wrote:
Callers via phone enter the BBB session with their phone number or caller ID.

Is it possible to not have this information get to BBB sessions? We have students that we offer anonymous help to, but, if we enable the phone in option, they will have their phone number registered and recorded in the session.

I've tried using set and export in the dialplan check_if_conference_active extension with variables including:

   <action application="export" data="caller_id_number=1000"/>
   <action application="export" data="caller_id_name=Student"/>
   <action application="export" data="username=Student2"/>
   <action application="export" data="user_name=Student3"/>
   <action application="export" data="effective_caller_id_name=Student4"/>
   <action application="export" data="effective_caller_id_number=1001"/>
   <action application="export" data="origination_privacy=hide_name:hide_number"/>
   <action application="export" data="privacy_hide_name=true"/>
   <action application="export" data="privacy_hide_number=true"/>


Try this.


Richard 
 
BBB session still took the original phone number or caller id.

Thanks,
JES

--
You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bigblueb...@googlegroups.com.

James MacLean

unread,
Dec 6, 2019, 7:04:37 AM12/6/19
to BigBlueButton-dev
Throwing in an update in case anyone has more suggestions.

I have also tried doing it in the conference startup extension area bbb_conferences in bbb_conference.xml and with conference specific settings:


       <action application="set" data="conf_caller_id_name=${conference($1 set caller_id_name ThePhone)}"/>
       <action application="set" data="conf_caller_id_number=${conference($1 set caller_id_number $1)}"/>

which I can confirm in the log get actioned and do not throw any errors. 

Still, the conference is joined with either the original caller id or caller phone number.

Another one that has me stumped :(.

Cheers,
JES

James MacLean

unread,
Dec 6, 2019, 7:25:08 AM12/6/19
to BigBlueButton-dev
For now I am just going to override bigbluebutton-html5/imports/api/users/server/modifiers/addDialInUser.js and voiceOnlyUser -> name: to 'Phone' :).

JES

Richard Alam

unread,
Dec 6, 2019, 7:52:49 AM12/6/19
to BigBlueButton-dev
You can also try using lua to setup your dialplan instead of the xml. You modify the callerid on the script.

We use xml_curl to handle dial-in users where we xhange the last few digits to xxxx.

To unsubscribe from this group and stop receiving emails from it, send an email to bigbluebutton-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bigbluebutton-dev/a9303ee0-5659-4a4b-9e15-ed046be826f5%40googlegroups.com.

Richard Alam

unread,
Dec 6, 2019, 5:54:09 PM12/6/19
to BigBlueButton-dev
On Fri, Dec 6, 2019 at 7:52 AM Richard Alam <ritz...@gmail.com> wrote:
You can also try using lua to setup your dialplan instead of the xml. You modify the callerid on the script.

We use xml_curl to handle dial-in users where we xhange the last few digits to xxxx.

Here is the callerid masking in ruby.

# Do caller ID phone number masking
cid_name = params['Caller-Caller-ID-Name']
cid_hide_name = params['Caller-Privacy-Hide-Name']
cid_hide_number = params['Caller-Privacy-Hide-Number']
if cid_name.present?
if /^\d+$/.match?(cid_name) # It's actually a number
if cid_hide_number.blank? || (cid_hide_number != 'true')
masked_number = cid_name[0..-5]
masked_number += 'X' * (cid_name.length - masked_number.length) if masked_number.length < cid_name.length # rubocop:disable BlockNesting, LineLength
@caller_id = masked_number
end
elsif cid_hide_name.blank? || (cid_hide_name != 'true')
@caller_id = cid_name
end
end
@caller_id = 'Unavailable' if @caller_id.blank?

James MacLean

unread,
Dec 7, 2019, 2:36:25 PM12/7/19
to BigBlueButton-dev
Hi Richard,

May I ask if you also make your conference call from ruby, or do you return back to the XML and let it occur there? 

I am asking as I am starting to think it might work if it all happens within the scripting. I have a python IVR frontend but it hands back to XML. If yours works withing Ruby then it would be worth the time for me to try it there.

Thanks,
JES

Richard Alam

unread,
Dec 7, 2019, 10:04:20 PM12/7/19
to BigBlueButton-dev
Hi James,

On Sat, Dec 7, 2019 at 2:36 PM James MacLean <macl...@gmail.com> wrote:
Hi Richard,

May I ask if you also make your conference call from ruby, or do you return back to the XML and let it occur there? 

I am asking as I am starting to think it might work if it all happens within the scripting. I have a python IVR frontend but it hands back to XML. If yours works withing Ruby then it would be worth the time for me to try it there.

You can have the dialplan be generated by your python scripts instead of the xml dialplan that comes with BBB. You can remove them and replace with dynamically generated dialplans using your python IVR frontend.

In our case, we still use the xml dialplan that comes with BBB because we make changes to the callerid on another FS to receive calls from our sip trunk provider. This FS instance uses xml curl to determine which BBB server the meeting is running on and route the call there. 

Richard
 
To unsubscribe from this group and stop receiving emails from it, send an email to bigbluebutton-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bigbluebutton-dev/05817ccf-bc25-41d7-aea3-12c7ae93a445%40googlegroups.com.

HostBBB.com

unread,
Jan 6, 2020, 5:22:53 PM1/6/20
to BigBlueButton-dev

Here is some code to mask a telephone number all in the dialplan logic.

 

This takes the number and only shows the last 4 digits,  so  xxx-xxx-3963, its for 10 digit us/can numbers but can be adapted for any number.

Bash is your friend 😊

 

Add the 2 bolded lines below to public dialplan block right before the transfer action.

 

Then at shell to reload changes

 

/opt/freeswitch/bin/fs_cli -x "reloadxml"

 

    <action application="play_and_get_digits" data="5 5 3 7000 # conference/conf-pin.wav ivr/ivr-that_was_an_invalid_entry.wav pin \d+"/>

 

    <action application="set" data="MASK=${system echo ${caller_id_name} | grep -o -P '.{0,4}$' | sed 's/^/xxx-xxx-/' }"/>

    <action application="set_profile_var" data="caller_id_name=${MASK}"/>

 

    <action application="transfer" data="SEND_TO_CONFERENCE XML public"/>

 

Let me know if you have issues.

 

Regards,

Stephen

Reply all
Reply to author
Forward
0 new messages