2016-04-15 5 views
0

Существует проект, в котором есть функция чата, которая была выполнена с помощью PubNub. Я прошел через учебник, предоставленный PubNub, и включил в проект проект pubnub.framework и CocoaLumberjack. И добавил закодированный в shown in this tutorialPubnub для чата в ios

Мои вопросы:

  1. Должен ли я создать другой канал для общения с различными друзьями? Или как работает канал в PubNub? Я хочу сделать только один-один чат. Я не хочу выполнять какие-либо групповые чаты. Согласно моему исследованию от using PubNub for multi users chatting, каждый пользователь имеет свой собственный канал. Но в этом случае, как я могу загрузить непрочитанное количество сообщений или сообщений, когда я в сети.

  2. Каков процесс установки сервера PubNub на моем серверном сервере? Я использую backend как PHP Laravel.

ответ

2
  1. вы можете создавать неограниченное количество каналов, поэтому для 1-1 чатов, каждый пользователь подписывается на их собственный канал. чтобы общаться с вами, я публикую сообщение на ваш частный канал. here - это запись, которая описывает это более подробно. за короткие промежутки времени (менее 10 минут) вы можете положиться на catch-up mechanism (убедитесь, что вы это настроили). для извлечения фактических сообщений во время автономной работы вы можете использовать функцию history() для Storage & Playback. получение только количество непрочитанных сообщений требует логики на вашем конце ... возможно, подсчета количества сообщений, публикуемых для каждого канала в вашей базе данных, а затем клиенты могут сделать запрос REST на ваш сервер для получения этого счета.

  2. У PubNub есть PHP SDK, который вы можете использовать ... что вы планируете делать с сервером backend?

+0

Благодарим вас за ответ. У меня был ответ и принятый ответ –

2

@Alex правильно и вот еще какая-то ясность в том, что:

Каждый пользователь должен иметь въездного канал, который они подписываются и всех, кто хочет пригласить их в привате публикует введите сообщение с именем нового канала чата 1-1 в этом сообщении. Если приглашенные пользователи согласятся, этот пользователь будет подписаться на новый канал 1-1, иначе сообщение может быть отправлено на входящий канал пользователя-приглашающего.

Для любого канала, в котором пользователю необходимо знать количество пропущенных сообщений в автономном режиме (или просто не активно подписываться на канал), вам необходимо указать call history on those channels с timetoken последнего полученного сообщения на этом канале. Это приведет к извлечению сообщений, и вы можете просто получить размер массива возвращенных сообщений, чтобы отобразить это сообщение .

PubNub сервер для установки. Ваше приложение/скрипт сервера PHP будет использовать сеть PubNub во многом так же, как ваши клиентские приложения iOS.Существует только PHP SDK, который вы должны загрузить и требуют установки:

  • PubNub PHP Composer
  • PubNub PHP (non-Composer)
  • PubNub PHP Larvel (Примечание: третья сторона - PubNub не может обеспечить поддержку для этого, но она может дать некоторое представление с использованием PubNub с Laravel)

Вы можете думать как о своем сервере, так и о ваших клиентских приложениях как о клиентах сети PubNub. Однако ваше PHP-приложение, скорее всего, опубликует сообщения на канале, но не подписаться на каналы. Если вы думаете, что вам нужно подписаться на каналы из вашего PHP-приложения, пожалуйста, свяжитесь с PubNub Support с подробной информацией о вашем случае использования.

+0

Спасибо за подробное объяснение. Я поднял тебя. –