<!-- Name of the db to use for this profile -->
<!--<param name="dbname" value="share_presence"/>-->
<param name="presence-hosts" value="$${domain},$${local_ip_v4}"/>
+ <param name="presence-privacy" value="$${presence_privacy}"/>
<!-- ************************************************* -->
<!-- This setting is for AAL2 bitpacking on G726 -->
<X-PRE-PROCESS cmd="set" data="default_areacode=918"/>
<X-PRE-PROCESS cmd="set" data="default_country=US"/>
+ <!-- if false or undefined, the destination number is included in presence NOTIFY dm:note.
+ if true, the destination number is not included -->
+ <X-PRE-PROCESS cmd="set" data="presence_privacy=false"/>
+
<X-PRE-PROCESS cmd="set" data="be-ring=%(1000,3000,425)"/>
<X-PRE-PROCESS cmd="set" data="ca-ring=%(2000,4000,440,480)"/>
<X-PRE-PROCESS cmd="set" data="cn-ring=%(1000,4000,450)"/>
PFLAG_AUTO_NAT,
PFLAG_SIPCOMPACT,
PFLAG_SQL_IN_TRANS,
+ PFLAG_PRESENCE_PRIVACY,
PFLAG_PASS_CALLEE_ID,
PFLAG_LOG_AUTH_FAIL,
PFLAG_FORWARD_MWI_NOTIFY,
char *record_template;
char *record_path;
char *presence_hosts;
+ char *presence_privacy;
char *challenge_realm;
char *rtcp_audio_interval_msec;
char *rtcp_video_interval_msec;
profile->user_agent_filter = switch_core_strdup(profile->pool, val);
} else if (!strcasecmp(var, "max-registrations-per-extension")) {
profile->max_registrations_perext = atoi(val);
+ } else if (!strcasecmp(var,"presence-privacy")) {
+ profile->presence_privacy = switch_core_strdup(profile->pool, val);
} else if (!strcasecmp(var, "rfc2833-pt")) {
profile->te = (switch_payload_t) atoi(val);
} else if (!strcasecmp(var, "cng-pt") && !(sofia_test_pflag(profile, PFLAG_SUPPRESS_CNG))) {
} else if (switch_true(val)) {
profile->pres_type = PRES_TYPE_FULL;
}
+ } else if (!strcasecmp(var, "presence-privacy")) {
+ if (switch_true(val)) {
+ sofia_set_pflag(profile, PFLAG_PRESENCE_PRIVACY);
+ }
} else if (!strcasecmp(var, "manage-shared-appearance")) {
if (switch_true(val)) {
sofia_set_pflag(profile, PFLAG_MANAGE_SHARED_APPEARANCE);
} else if (!strcmp(astate, "confirmed")) {
if (!zstr(op)) {
- //switch_snprintf(status_line, sizeof(status_line), "On The Phone");
- //} else {
- switch_snprintf(status_line, sizeof(status_line), "Talk %s", op);
+ if (sofia_test_pflag(profile, PFLAG_PRESENCE_PRIVACY)) {
+ switch_snprintf(status_line, sizeof(status_line), "On The Phone");
+ } else {
+ switch_snprintf(status_line, sizeof(status_line), "Talk %s", op);
+ }
+ } else {
+ switch_snprintf(status_line, sizeof(status_line), "On The Phone");
}
rpid = "on-the-phone";