Sponsored Content
The Lounge What is on Your Mind? PubNub Live Chat Beta Testing Post 303034872 by pubnubcraig on Wednesday 8th of May 2019 11:54:48 AM
Old 05-08-2019
I don't use Vue.js and I have never heard of the debounce API. Neither is specific PubNub and there are dozens of JS frameworks out there so not possible, or necessary, to know them all.

I still think PubNub needs a new configuration parameter in subscribe() which sets the polling interval for presence, but let me take another look tomorrow since you have made some changes in our configuration and see if I set subscribe presence to TRUE in my code (it is current set to FALSE), if it keeps polling and polling like crazy.

Subscribe already has an interval, it is the subscribeTimeout config, that you can set in the PubNub init, but please do not. It should only be changed for very specific reasons, that I will not get into right now. You will only cause your app to have increased transactions at no additional upside or cause your app to break depending on whether you set it shorter or longer. The default subscribeTimeout is 280s, and this is exactly the same for listening to presence events because it is on the subscribe connection. The hereNow is a completely different API and a different connection which does not work on the subscribe connection.

When you subscribe withPresence:true, you are just adding presence channels (with the -pnpres suffix) to the list of subscribed channels. When another person subscribes to that channel, those listening to presence events (withPresence:true) on that channel will receive that presence event, in realtime, not on some polling cycle.

But see my response about Announce Max. The increased transaction were self-inflicted Smilie Not that you would have known the side effects but rarely does anyone change that setting.

And I just checked the chat app again. It appears you upgraded to lastest PubNub JS SDK version - cheers - and I see that the client is not having the 10s interval response anymore. At most it will be 280s or everytime someone joins, leaves, timeouts, or a message is published and therefore received.

Cheers
Craig
This User Gave Thanks to pubnubcraig For This Post:
 

4 More Discussions You Might Find Interesting

1. Solaris

Live Chat For Solaris?

Does anyone know of any online live chat discussion groups for Solaris? If so, please let me know... Thanks! Rob Sandifer (3 Replies)
Discussion started by: RobSand
3 Replies

2. What is on Your Mind?

A Quick Video Overview of PubNub Live Chat @UNIX.com (version 0.7614)

A number of people have asked me to make some videos, so I just got my first condenser microphone and so I can make some amateurish screen casts. I will try to do better in the future. A quick overview of PubNub Live Chat @unix.com The video is best is you set the Quality to HD 1080. The... (0 Replies)
Discussion started by: Neo
0 Replies

3. What is on Your Mind?

Live Chat (Alpha) in UserCP SF 0.7517

Interesting.... I am still working on the kinks for Live Chat here at unix.com using a publish-subscribe API from PubNub. Two days ago while working on it, a new user joined the live chat and asked about how to post a new thread in the forum. Then today, one of the members of the PubNub team... (23 Replies)
Discussion started by: Neo
23 Replies

4. What is on Your Mind?

Update: UserCP Screeching Frog 0.7641 - Changed Live Chat to Live Updates

Update: UserCP Screeching Frog 0.7641 - Changed Live Chat to Live Updates In this version of the UserCP, I have changed "Live Chat" to "Live Updates" by disabling the ability to post in the "live chat" area and changed the name to "Live Updates" The reason for this change is that experienced... (6 Replies)
Discussion started by: Neo
6 Replies
IPC::PubSub(3pm)					User Contributed Perl Documentation					  IPC::PubSub(3pm)

NAME
IPC::PubSub - Interprocess Publish/Subscribe channels SYNOPSIS
# A new message bus with the DBM::Deep backend # (Other possible backends include Memcached and PlainHash) my $bus = IPC::PubSub->new(DBM_Deep => '/tmp/pubsub.db'); # A channel is any arbitrary string my $channel = '#perl6'; # Register a new publisher (you can publish to multiple channels) my $pub = $bus->new_publisher("#perl6", "#moose"); # Publish a message (may be a complex object) to those channels $pub->msg("This is a message"); # Register a new subscriber (you can subscribe to multiple channels) my $sub = $bus->new_subscriber("#moose"); # Publish an object to channels $pub->msg("This is another message"); # Set all subsequent messages from this publisher to expire in 30 seconds $pub->expiry(30); $pub->msg("This message will go away in 30 seconds"); # Simple get: Returns the messages sent since the previous get, # but only for the first channel. my @msgs = $sub->get; # Simple get, with an explicit channel key (must be among the ones # it initially subscribed to) my @moose_msgs = $sub->get("#moose"); # Complex get: Returns a hash reference from channels to array # references of [timestamp, message]. my $hash_ref = $sub->get_all; # Changing the list of channels we subscribe to $sub->subscribe('some-other-channel'); $sub->unsubscribe('some-other-channel'); # Changing the list of channels we publish to $pub->publish('some-other-channel'); $pub->unpublish('some-other-channel'); # Listing and checking if we are in a channel my @sub_channels = $sub->channels; my @pub_channels = $pub->channels; print "Sub is in #moose" if $sub->channels->{'#moose'}; print "Pub is in #moose" if $pub->channels->{'#moose'}; # Raw cache manipulation APIs (not advised; use ->modify instead) $bus->lock('channel'); $bus->unlock('channel'); my @timed_msgs = $bus->fetch('key1', 'key2', 'key3'); $bus->store('key', 'value', time, 30); # Atomic updating of cache content; $_ is stored back on the # end of the callback. my $rv = $bus->modify('key' => sub { delete $_->{foo} }); # Shorthand for $bus->modify('key' => sub { $_ = 'val' }); $bus->modify('key' => 'val'); # Shorthand for $bus->modify('key' => sub { $_ }); $bus->modify('key'); # Disconnect the backend connection explicitly $bus->disconnect; DESCRIPTION
This module provides a simple API for publishing messages to channels and for subscribing to them. When a message is published on a channel, all subscribers currently in that channel will get it on their next "get" or "get_all" call. Currently, it offers four backends: "DBM_Deep" for on-disk storage, "Memcached" for possibly multi-host storage, "Jifty::DBI" for database- backed storage, and "PlainHash" for single-process storage. Please see the tests in t/ for this distribution, as well as "SYNOPSIS" above, for some usage examples; detailed documentation is not yet available. SEE ALSO
IPC::DirQueue, where the subscribers divide the published messages among themselves, so different subscribers never see the same message. AUTHORS
Audrey Tang <cpan@audreyt.org> COPYRIGHT
Copyright 2006, 2007 by Audrey Tang <cpan@audreyt.org>. This software is released under the MIT license cited below. The "MIT" License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. perl v5.10.0 2008-12-13 IPC::PubSub(3pm)
All times are GMT -4. The time now is 12:56 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy