diff --git a/coreapi/help/java/org/linphone/core/tutorials/TutorialBuddyStatus.java b/coreapi/help/java/org/linphone/core/tutorials/TutorialBuddyStatus.java
index 1c6c6715c..79f541ac5 100644
--- a/coreapi/help/java/org/linphone/core/tutorials/TutorialBuddyStatus.java
+++ b/coreapi/help/java/org/linphone/core/tutorials/TutorialBuddyStatus.java
@@ -155,6 +155,7 @@ public class TutorialBuddyStatus implements LinphoneCoreListener {
// create proxy config
LinphoneProxyConfig proxyCfg = lcFactory.createProxyConfig(mySipAddress, domain, null, true);
+ proxyCfg.enablePublish(true);
lc.addProxyConfig(proxyCfg); // add it to linphone
lc.setDefaultProxyConfig(proxyCfg);
while (!proxyCfg.isRegistered()) {
diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h
index 84e9ee3df..872616737 100644
--- a/coreapi/linphonecore.h
+++ b/coreapi/linphonecore.h
@@ -303,6 +303,13 @@ void linphone_proxy_config_enable_register(LinphoneProxyConfig *obj, bool_t val)
#define linphone_proxy_config_enableregister linphone_proxy_config_enable_register
void linphone_proxy_config_edit(LinphoneProxyConfig *obj);
int linphone_proxy_config_done(LinphoneProxyConfig *obj);
+/**
+ * Indicates either or not, PUBLISH must be issued for this #LinphoneProxyConfig .
+ *
In case this #LinphoneProxyConfig has been added to #LinphoneCore, follows the linphone_proxy_config_edit() rule.
+ * @param obj object pointer
+ * @param val if true, publish will be engaged
+ *
+ */
void linphone_proxy_config_enable_publish(LinphoneProxyConfig *obj, bool_t val);
void linphone_proxy_config_set_dial_escape_plus(LinphoneProxyConfig *cfg, bool_t val);
void linphone_proxy_config_set_dial_prefix(LinphoneProxyConfig *cfg, const char *prefix);
diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc
index 50787d7e2..10fde26fa 100644
--- a/coreapi/linphonecore_jni.cc
+++ b/coreapi/linphonecore_jni.cc
@@ -725,7 +725,15 @@ extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_setDialPrefix(JNI
linphone_proxy_config_set_dial_prefix((LinphoneProxyConfig*)proxyCfg,prefix);
env->ReleaseStringUTFChars(jprefix, prefix);
}
-
+extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_enablePublish(JNIEnv* env
+ ,jobject thiz
+ ,jlong proxyCfg
+ ,jboolean val) {
+ linphone_proxy_config_enable_publish((LinphoneProxyConfig*)proxyCfg,val);
+}
+extern "C" jboolean Java_org_linphone_core_LinphoneProxyConfigImpl_publishEnabled(JNIEnv* env,jobject thiz,jlong proxyCfg) {
+ return linphone_proxy_config_publish_enabled((LinphoneProxyConfig*)proxyCfg);
+}
//Auth Info
diff --git a/coreapi/proxy.c b/coreapi/proxy.c
index b77ad9422..f49c59f12 100644
--- a/coreapi/proxy.c
+++ b/coreapi/proxy.c
@@ -215,7 +215,6 @@ void linphone_proxy_config_expires(LinphoneProxyConfig *obj, int val){
void linphone_proxy_config_enable_publish(LinphoneProxyConfig *obj, bool_t val){
obj->publish=val;
}
-
/**
* Starts editing a proxy configuration.
*
diff --git a/java/common/org/linphone/core/LinphoneProxyConfig.java b/java/common/org/linphone/core/LinphoneProxyConfig.java
index 729fd249d..441ad51cf 100644
--- a/java/common/org/linphone/core/LinphoneProxyConfig.java
+++ b/java/common/org/linphone/core/LinphoneProxyConfig.java
@@ -112,5 +112,18 @@ public interface LinphoneProxyConfig {
* @return the route set for this proxy configuration.
*/
public String getRoute();
+ /**
+ * Indicates either or not, PUBLISH must be issued for this #LinphoneProxyConfig .
+ *
In case this #LinphoneProxyConfig has been added to #LinphoneCore, follows the linphone_proxy_config_edit() rule.
+ * @param obj object pointer
+ * @param val if true, publish will be engaged
+ *
+ */
+ public void enablePublish(boolean enable);
+ /**
+ * returns publish state for this proxy config (see {@link #enablePublish(boolean)} )
+ */
+ public boolean publishEnabled();
+
}
diff --git a/mediastreamer2 b/mediastreamer2
index bc6aeef2e..28a6e7f22 160000
--- a/mediastreamer2
+++ b/mediastreamer2
@@ -1 +1 @@
-Subproject commit bc6aeef2ee689c5efe5222c2e696bd1f42a4846c
+Subproject commit 28a6e7f22fbdd93a01676fc9cc47a2605c846d75