我在CentOs上安装了openfire,它使用外部数据库进行身份验证和用户列表.
我根据用户表和朋友列表管理组,以便每个用户也是一个管理员组,并填充了(朋友)用户.
外部用户和身份验证工作正常.
问题是,只有在组管理中选中"启用联系人列表组共享openfire"时才会填充好友列表.
我想始终启用此选项,以便用户可以在他们的好友列表中看到对方.
这是一个现存的问题openfire问题
有没有可能的解决方案或替代方案.
编辑:
换句话说,我想避免在ofGroupProp表中添加以下三行:
name sharedRoster.displayName groupname
name sharedRoster.groupList
name sharedRoster.showInRoster onlyGroup
Run Code Online (Sandbox Code Playgroud) 我正在使用Android Design支持库中的TabLayout。我正在使用材料设计主题。下面是代码
activity_scrollable_Tab.xml
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabMode="scrollable"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
scrollableTabActivity.java
public class ScrollableTabsActivity extends AppCompatActivity {
private Toolbar toolbar;
private TabLayout tabLayout;
private ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_scrollable_tabs);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
viewPager = (ViewPager) findViewById(R.id.viewpager);
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
}
private void setupViewPager(ViewPager viewPager) {
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFrag(new OneFragment(), "ONE");
adapter.addFrag(new TwoFragment(), "TWO");
.....
adapter.addFrag(new …Run Code Online (Sandbox Code Playgroud) 我的socket.io版本1.3.5
我想获得特定房间中的客户数量。
这是我的代码。
socket.on('create or join', function (numClients, room) {
socket.join(room);
});
Run Code Online (Sandbox Code Playgroud)
我使用此代码让客户进入房间:
console.log('Number of clients',io.sockets.clients(room));
Run Code Online (Sandbox Code Playgroud) 我正在使用Kurento Utils与 Kurento 媒体服务器(版本 5.x)进行 WebRTC 连接
在初始化期间的 kurento-utils-js 库内部,简化代码如下所示:
if (!this.pc) {
this.pc = new RTCPeerConnection(server, options);
}
var ended = false;
pc.onicecandidate = function(e) {
// candidate exists in e.candidate
if (e.candidate) {
ended = false;
return;
}
if (ended) {
return;
}
var offerSdp = pc.localDescription.sdp;
console.log('ICE negotiation completed');
self.onsdpoffer(offerSdp, self);
ended = true;
};
Run Code Online (Sandbox Code Playgroud)
我的问题是,它似乎正在等待onicecandidate传递“null”值,这表示该过程已结束,从而能够继续创建 SDP 报价,但我在 WebRTC 规范中找不到这种行为?
我的下一个问题是,我们还能如何知道寻找ice候选人的过程已经结束?
我办公室的一台电脑无法访问该代码console.log('ICE negotiation completed');,因为未传递空值。
首先,我的问题是不同的.
我已经使用listen 443 default ssl;也listen 443 ssl;和注释掉#,但似乎没有什么工作.端口80工作正常但在端口443上我收到此错误.
目前这是nginx的默认文件.
server {
listen 80;
listen 443 ssl;
#listen 443 default ssl;
server_name .******.org;
keepalive_timeout 70;
#ssl on;
ssl_certificate /etc/ssl/private/lol/www.*******.crt;
ssl_certificate_key /etc/ssl/private/lol/www.********.key;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers RC4:HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
Run Code Online (Sandbox Code Playgroud)
在ssl_protocols我也尝试只使用SSLv3 TLSv1但相同.我的nginx版本是1.2.1.我在这里经历了很多在线网站,但我认为我的问题并没有被不同极客提到的任何方法解决.
所以最后我在这里.有什么建议?
PS:我正在使用cloudflare,但我已经将Universal SSL关闭,因为我想使用其他ssl.