标签: pubnub

如何在Android应用程序中使用PubNub?

我正在尝试为社交媒体共享开发Android应用.我知道PubNub如何使用云服务器以快速的速度和安全性共享数据.我想在我的应用程序中使用它.如果有API,请告诉我它是如何工作的.

android pubnub

5
推荐指数
1
解决办法
4228
查看次数

使用Parse和PubNub进行Android聊天应用程序指导

我正在尝试创建一个简单的Android聊天应用程序,用户可以在其中注册并拥有一个朋友列表来开始对话.我打算在数据库后端使用Parse,在实际的聊天频道使用PubNub.

我对这种应用程序没有多少经验.我知道需要做什么,但只想得到有经验的人的意见.

这是我计划实施的模型:

  • 注册页面上收集的用户配置文件信息将存储在Parse数据库的表中
  • 所有用户 - 朋友关联都将存储在Parse的表中
  • 一旦用户选择朋友开始聊天,就应该打开一个新的PubNub频道,并且该频道名称应该存储在Parse中的一个表中(该表包含所有活动频道/聊天)

这看起来像是朝着正确的方向前进吗?或者可以做得更好?或者我可以使用任何其他服务?

android chat backend pubnub parse-platform

5
推荐指数
1
解决办法
4846
查看次数

Android pubnub聊天使用解析提供不正确的身份验证密钥错误

我正在开发一个Android应用程序.在我的应用程序中,我必须与parse.com实现pubnub聊天.我找到了以下代码. github链接

在Android studio中成功集成项目.登录后,当我开始聊天消息时,我没有发送消息

Error sending message:[Error: 112-0] : Authentication Failure. Incorrect Authentication Key.

如果我们再次登录,那么我可以看到我发送的所有邮件但无法发送新邮件.请帮我修复此问题.

android chat pubnub parse-platform

5
推荐指数
1
解决办法
398
查看次数

想使用PubNub将实时更新发送到用户的Web浏览器

寻找使用PubNub将实时更新发送到用户的Web浏览器.

我查看了他们的网站和资料.看起来他们有几个不同的选择.

我们希望使用它将实时更新发送到用户正在查看的网页.这些信息很简单,比如"刚刚收到消息".我们不是试图实施聊天程序或类似的东西.

PubNub是一个很好的解决方案吗?如果是这样,应该使用哪个版本的服务?

我们在Heroku服务器上运行Django.

非常感谢!

python django heroku real-time-updates pubnub

4
推荐指数
2
解决办法
2874
查看次数

Parse vs. StackMob与其他推送通知服务(Appcelerator应用程序)

我们在Appcelerator中完成了一个非常基本的应用程序(iOS/Android),每周都会收到一次更新.此更新将发送给订阅推送通知服务的所有用户.

到目前为止,我们上个月在此应用程序上安装了约35,000个活动用户,但有7,000名活跃用户.我们一直在为所有推送通知评估两种服务:

  • StackMob
  • 解析

Appcelerator云服务很好,但我们不愿意支付那么多.Parse和StackMob的价格低于Appcelerator Cloud服务,通过我们的分析,我们甚至可以在两种服务上使用免费服务(StackMob = 60k推送通知+ 60k api调用,Parse 1M api调用+ 1M推送).

如果我们要使用Parse,我们需要从Marketplace购买Android和iOS模块(每个30美元/年).哪个好.在对应方面,我认为我们可以使用StackMob上的REST API来订阅推送服务.

问题:

  • 您对这两项服务有何看法?您更喜欢哪一个?为什么?
  • 您是否使用StackMob REST API订阅推送通知?
  • 你如何检索Android的令牌?
  • 这些服务是否有任何(成本效益)替代方案?我还评论了PubNub,它看起来很棒,但成本高于StackMob和Parse.

提前致谢.

更新

我在Appcelerator论坛上问了同样的问题.过了一段时间,用户回来时有几个答案和用户使用Parse.com.

我结束了Parse.com的实现,使用Appcelerator Market上的Android和iOS插件非常简单.

appcelerator push-notification stackmob pubnub

4
推荐指数
1
解决办法
4391
查看次数

如何从pubnub订阅创建一个observable

我正在努力如何使用rxjs lib将以下内容转换为observable.

var client = PUBNUB.init({
  publish_key: 'pubkey',
  subscribe_key: 'subkey'
});

client.subscribe({
  channel: 'admin:posts',
  message: function(message, env, channel){console.log("Message");},
  connect: function(){console.log("Connected");},
  disconnect: function(){console.log("Disconnected");},
  reconnect: function(){console.log("Reconnected");},
  error: function(){console.log("Network Error");}, 
 });
Run Code Online (Sandbox Code Playgroud)

我希望将消息回调转换为observable以及其余的回调.

关于如何做到这一点的任何想法?

谢谢

更新 - 2015年4月29日

以下是我最终使用它来实现这一目标.我应该补充一点,我需要在用户登录并清理注销后才订阅pubnub.

如果这是一个好方法,请告诉我:

var self = this;

var logins = Rx.Observable.create(function (obs) {
  //Using a session manager in ember.
  self.get('session').on('sessionAuthenticationSucceeded', function(e){
    var data = {
      token:this.content.secure.token,
      email:this.content.secure.email
    }

    obs.onNext(data);
  });
  self.get('session').on('sessionAuthenticationFailed', function(e){obs.onError(e)});
  return function(){
    self.get('session').off('sessionAuthenticationSucceeded', function(e){obs.onNext(e)});
    self.get('session').off('sessionAuthenticationFailed', function(e){obs.onError(e)});
  }
});

var logouts = Rx.Observable.create(function (obs) {
  self.get('session').on('sessionInvalidationSucceeded', …
Run Code Online (Sandbox Code Playgroud)

rxjs pubnub

4
推荐指数
1
解决办法
641
查看次数

Pubnub频道组历史记录

我已经通过了pubnub频道组设计模式,http: //scalabl3.github.io/pubnub-design-patterns/2015/08/11/Advanced-Channel-Groups-Friend-Lists-Status-Feed-And-Presence . HTML

但仍然存在一些实施群聊的疑虑

考虑我有GP1,GP2组

GP1 - A,B,C(成员)GP2 - A,D,E(成员)

  • 这里我需要订阅2组,如果2我需要在两者中添加A吗?或者通过过滤使用ABCDE的1组
  • 如何通过单个api调用获取所有组历史记录(假设GP1有超过100个朋友)

谢谢

java android pubnub

4
推荐指数
1
解决办法
719
查看次数

如何从 PubNub 频道的历史记录中检索 100 多条消息?

关于PubNub History API的页面指出

history() 函数返回最多 100 条消息、开始时间标记和结束时间标记的列表。

有没有办法检索超过 100 条消息?

我目前不是 PubNub 的付费客户。

history pubnub

3
推荐指数
1
解决办法
3516
查看次数

PubNub中的聊天消息订购策略

我们正在使用Android构建聊天应用程序,并且很难确定消息的消息排序策略。到目前为止,我们一直在将设备时间用于已发送的消息,并将服务器时间用于已接收的消息。我们意识到,如果设备时间与服务器时间不同步,该策略很容易失败。

作为替代方案,我们计划使用设备时间来发送和接收消息,以保持正确的顺序。考虑到可能会错误地设置设备时间的情况,如果在Publish回调中收到的PubNub timetoken与用户的设备时间相去甚远,我们计划向用户展示祝酒词。下面的代码段:

这是消息排序的可接受策略吗?是否有更好的选择。

public void successCallback(String channel,
                                        Object message) {
                if (channel.equals(getUserChannel())) {

                    JSONArray messageDetails = (JSONArray) message;

                    if(messageDetails.length() >2)
                        try {
                            long timeToken = Long.parseLong(messageDetails.getString(2));

                            timeToken = timeToken / 10000;

                            changeMessageStatus(chatMessage.getMobileId(), Status.SENT);

                            long diffValue = timeToken - Calendar.getInstance().getTimeInMillis();

                            if(Math.abs(diffValue) > Constants.TIME_DIFF_THRESHOLD)
                            {
                                applicationHandler.post(new Runnable() {
                                    @Override
                                    public void run() {
                                        Toast.makeText(getApplicationContext(), getString(R.string.incorrect_time), Toast.LENGTH_SHORT).show();
                                    }
                                });

                            }

                            Log.d(Constants.TAG,"Diff Time: " + String.valueOf(diffValue));

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                }

                pubnub.unsubscribeAll();
            }
Run Code Online (Sandbox Code Playgroud)

time android pubnub

3
推荐指数
1
解决办法
1016
查看次数

PubNub webrtc仅适用于本地网络

我以前问过这个问题,但没有任何运气..我在本教程后遇到问题https://www.pubnub.com/blog/2014-10-21-building-a-webrtc-video-and-voice-chat - 应用/.我写了代码,它在本地网络上完美运行,但是当我尝试连接远程客户端(即不在同一网络上)时,代码不再起作用了.它只显示一个黑屏,客户端的视频应该是.

phone.receive(function(session){
    session.connected(function(session){
        $("#vid-box").append(session.video); //outputs black screen
    });

    session.ended(function(session) {alert("Call ended: "+session.number});
});
Run Code Online (Sandbox Code Playgroud)

我甚至联系了PubNub,但他们无法提供帮助.有人有什么想法吗?

javascript stun webrtc pubnub turn

3
推荐指数
1
解决办法
1132
查看次数