問題タブ [pubnub]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 一度統合してプッシャー、パブナブ、またはフェイのいずれかを使用できるように、抽象化レイヤーはありますか?
Rails 3アプリでリアルタイム通知を使用することを検討していますが、速度が問題になり始めた場合は、fayeから始めて、後でプッシャーまたはパブナブを切り替えることができるようにしたいと考えています。これを抽象化するのに役立つ宝石や何かがありますか? 実際にクライアント側で更新を行うことができるように、JavaScriptも必要になると思います。
qooxdoo - qooxdooとPubNubを統合する方法は?
PubNubは、次のように指定したコールバック関数を呼び出すことで機能します 。http ://www.pubnub.com/account-javascript-api-include
これをQooxdooJSフレームワークと適切に統合するにはどうすればよいですか?Qooxdooアプリケーションは次のようになります: http ://demo.qooxdoo.org/current/playground/#Hello%20World-ria
外部JSライブラリをロードして、グローバルな「PUBNUB」を利用できるようにするにはどうすればよいですか?
c# - PubNub JSON シリアル化コードはサンプル プロジェクトでは機能するが、私のプロジェクトでは機能しない
HTTP 経由で再生中の曲の詳細を Web ページに送信する単一の機能を持つ Winamp プラグインを作成しています。
これは次のように機能します: Winamp の曲イベントがトリガーされます -> 新しい曲をチェックします -> PubNub (C# API) を使用して Web ページに公開します。
これまでのところ、JSON に公開するために渡すオブジェクトをシリアル化しない PubNub コードを除いて、すべてが想定どおりに機能する段階に達しました。PubNub コンソールに表示されるのは{}
、空の JSON オブジェクトだけです。
プロジェクト構造の背景:
C# で Winamp プラグインを作成できるカスタム ライブラリであるSharpampを使用しています。PubNub C# APIも使用しています。gen_notifier_cs プロジェクトは、Sharpamp によって作成された C++ プラグイン ラッパーです。notifier_cs は、すべてのコードが存在する場所です。他の 2 つのプロジェクトは自明だと思います。私は notifier_cs で PubNub API を参照しており、notifier_cs と PubNub API の両方で Sharpamp も参照しています。
したがって、シリアル化する必要があるオブジェクトはSong
、Sharpamp で定義されているクラスのものです。
たとえば、song
曲データを含むオブジェクトがある場合、それpubnub.publish("winamp_pipe", song);
を公開すると、PubNub が自動的にデータを JSON にシリアル化します。しかし、それは私のソリューションではうまくいきません。
シリアル化されない理由をテストするために、そのクラスをPubNub APIのサンプル コード ファイルにコピーしました。Visual Studio はクラスを次のように変更しました (public Song() メソッドに注意してください)。
同じサンプル ファイルで、いくつかの値を使用してデフォルトの曲オブジェクトを開始しました。
そしてそれを公開しました:pubnub.publish("winamp_pipe", song);
そしてそれはうまくいきました!PubNub チャンネルで JSON オブジェクトを取得しました。
{"Album":"albumname","Artist":"artistname","Filename":null,"HasMetadata":true,"Title":"songtitle","Year":"2012"}
そこで、「新しい」Song
クラスを Sharpamp で定義された元のクラスに置き換えてみました。notifier_cs プロジェクトに別のクラス定義を追加しようとしましたが、それは私が依存しなければならない Sharpamp のものと衝突します。思いつく限り、たくさんのことを試してきました。言うまでもなく、どれも勝てませんでした。それでも、空の JSON オブジェクトしか取得できません。
これは、 PubNub APIの publish メソッド内でシリアル化を行うコードです。このコードは、PubNub のサンプル ファイルでは機能しますが、私のプロジェクトでは機能しないことを思い出してください。
私は最後の日のために髪を引っ張っています。この投稿が非常に長いことは承知していますが、ご意見をお寄せいただきありがとうございます。
ruby-on-rails - 非同期コールバック-PubNub、EventMachine、Rails
EventMachineを介してPubNubチャネルをサブスクライブしていますが、現在、チャネルに投稿されたメッセージは1つだけです。
言い換えれば、私はコールバックを「もっと」非同期にする方法を探しています。私はそれをperiodic_timerでラップすることができたと思いますが、私はこのアプローチについて悪い気持ちを持っています。この分野で今私がすべきベストプラクティスはありますか?
編集: 私の問題の解決策は、まず、サブスクライブループに「returntrue」を追加して、リッスンを継続することでした。しかし、もっと重要なことは、必要なチャネルをリッスンする新しいスレッドでEMを生成し、クライアントがリッスンする1つのチャネルにすべてをディスパッチすることです。これにより、サーバーまたはクライアントのフリーズ/タイムアウト/オーバーフローなしで複数のチャネルを処理する際の問題が解決しました。http://www.pubnub.com/blog/ruby-push-apiを参照してください。
javascript - Angular.js を Pusher や PubNub などのリアルタイム メッセージング サービスと統合するにはどうすればよいですか?
Pusher または PubNub を Angular Service として定義することはできますか? 誰かがそのような統合のコード例を持っていますか?
jquery - pubnub: DOM 要素の値は変わりますが、ビジュアルは変わりません
Railsサーバーからajax経由でjsonデータを取得するAndroidフォンでテストアプリを作成しています。PUBNUB を使用して、Rails と Android フォンの間でリアルタイム プッシュ機能をセットアップしました。Rails サーバーがパブリッシャーで、Android フォンがサブスクライバーです。
問題: 携帯電話はリアルタイム データを json 形式で取得します。しかし、問題は私ができないことですmultiple DOM manipulation INSIDE THE PUBNUB success callback
。これは絶対に奇妙に思えます。
リアルタイムの更新がある場合に何が起こるべきか。
バックグラウンド:
- ヘッダー画像、UI バー、コンテンツ領域、フッターがあります。
- UI-Bar には通知イメージがあります。新しいオファーがある場合は緑色に点灯し、そうでない場合は赤色のままです。
何が起こるべきか
そのため、リアルタイムでプッシュされる新しいオファーがあり、新しいオファーがリストの先頭に追加され、通知イメージが緑色に点灯するはずです。
実際に起こったこと
Scenario 1
- コンテンツが空の場合、最初のプッシュでは、アイテムが正常にプッシュされ、同時に通知イメージが正常に緑色に変わります。サブスクリプションから受け取った json データを使用し、それを $('#some_id').html('some html tags with data received from subscription'); などの html タグで使用します。
Scenario 2
たとえば、通知を確認すると、赤に戻ります。ここで、新しいシナリオは次のとおりです。既に 1 つのアイテムがプッシュされており、通知イメージは既に確認されています (赤信号)。
- これで、2 番目のアイテムが押されると、アイテムは正常に押されますが、通知イメージは青信号に変わりません。画面領域のどこかを押すと、緑色のライトに変わります。
Scenario 3
番号 2 と同じシナリオ、つまり、リスト内の 1 つのオファーと通知が既に承認されています。
- ユーザーは、次の 4 回のリアルタイム プッシュ (リスト内で 5 回のプッシュ) の後にのみ、緑色のライトを見ることができます。5 つ目は、電話のフッターに触れます。その後、リアルタイム更新は正常に機能します。アイテムをリストの先頭に追加し、プッシュするたびに通知画像が緑色に変わります (以前は赤色だった場合)。
Scenario 4
- リストに何もプッシュしようとせず、プッシュが成功するたびに通知イメージが適切に機能するかどうかのみをテストすると、まったく問題なく動作します。
TEST
シナリオ 2 では、DOM 操作の前後に通知イメージを表示するアラート ステートメントを配置しました。アラート ステートメントは値の変化を示しますが、the visual does not change
.
以下は、HTML ページからのスクリプト タグのスニペットです。
push-notification - PubNub プッシュ通知
だから私はプッシュ通知の設定をしています。複数のクライアントが接続し、メッセージがプッシュされると、他の各クライアントがメッセージを受信します。これは良いことですが、私が必要としているのは、Pubnub がメッセージの送信者にもプッシュすることです。これについてどうすればよいですか?
この機能を使って聞いています。通知を受け取るように指定できるオプションはありますか?
ruby-on-rails-3 - プレゼンス、PubNub + Ruby
PubNubのプレゼンス機能を使用して、受信した情報を通常のメッセージとして中継しようとしています。以下は、正常に機能しているサブスクライブ関数と、何も表示されないhere_nowです。私が疑問に思っているのは、それらがどのように、そしてなぜ異なるのかということだと思います。適切な実装に関するポインタも非常に価値があります。
gwt - 再利用可能なgwtライブラリ/ウィジェットにサードパーティのJavaScriptライブラリを含めるにはどうすればよいですか?
移行がうまくいくかどうかを確認するために、GWTで足を濡らそうとしています。私は通常、プロジェクトを完了できることを確認するために、最初に難しい部分を試します。私のプロジェクトで最も難しい部分は、サードパーティのJSライブラリを参照することです。この例では、プラットフォームの多くがPubNubを使用しているため、PubNubを使用しようとしています。
私がやりたいのは、PubNubを必要とする他のGWTプロジェクトで使用できる再利用可能なオブジェクトを作成することです。簡単な小さなテストが正常に実行されています(つまり、JNSIの基本が機能しています)が、私の質問は->ライブラリ/モジュールを適切に作成するためにサードパーティのスクリプトへの参照をどこに置くかです?
今のところ、プロジェクトのHTMLページに外部スクリプトへの参照を配置していますが、このライブラリは他のプロジェクトで使用されるため、再利用性の観点からは正しくないことは間違いありません。ベースHTMLページ。
参照をgwt.xmlファイルに入れようとしましたが、参照が失われているようです(つまり、スクリプトがHTMLページにあるときのようにテストプロジェクトが機能しなくなりました)
再利用可能なGWTライブラリ/ウィジェットにサードパーティのライブラリを含める方法に関するヒントはありますか?
gwt - PubNub での GWT スクリプト インジェクションの失敗
GWT は初めてですが、今のところ気に入っています。再現しやすい問題があります。PubNub 用の GWT モジュール (内部で使用するユーティリティ) を作成したいので、これは大きな問題です。
カプセル化をテストするデモ プロジェクトを作成したところ、ScriptInjector/Pubnub に関する興味深い問題が見つかりました。
最初は、PubNub の指示に従いました。注: テスト アカウント用のキーを含めました。それらを自由に使用してください。
指示に従って、これら 2 つの項目を GWT プロジェクトの html ファイルに入れます (キーを指定して):
これを行うと、JSNI を使用して pubnub にアクセスできます。それはすべてうまくいきます。
ここでタグを削除し、代わりに次のコードでスクリプトを挿入するとうまくいきません。成功メッセージが表示され、Chrome の開発者ツールでスクリプトが表示されるため、スクリプトが挿入されることがわかります。
これは、遅延スクリプトを使用して DOM にアクセスすることに何らかの形で関連しているに違いないと思います。または、スクリプトが DOM の一部ではないためです。setup divにアクセスしようとしていますが、できません...(私の推測です)
何かご意見は?他の大きなプロジェクトで使用するためにこのプロジェクトをモジュール化する必要があるため、アイテムを html ファイルから移動する必要があります。どんな助けでも大歓迎です。
(PS、html ウィジェットも作成して EntryPoint に追加しようとしました。これにより、Chrome の開発者ツールでのブラウジングに基づいてページにタグが追加されますが、ScriptInjector が失敗するのと同じように機能しません。)
編集:これは、問題をデモするために作成できるのと同じくらい簡単なプロジェクトです:
html ファイル:
body 終了タグの上:
pubnubWrapper.js (基本的には pubnub Web サイトにあるもの):
ScriptTest.java:
これはすべてそのまま機能します。
html ファイルから pubnub スクリプトを削除し、スクリプト インジェクターで追加すると失敗します。スクリプトを gwt.xml ファイルに追加すると、失敗します。
何か案は?