AngularJS Chat
Habilite experiências de mensagens para aplicativos da Web, iOS e Android. Em breve AngularJs e as melhores estruturas Ionic, Pubnub, PhoneGap
npm install angular-chatbower install angular-chatInclua os arquivos de bate -papo angular em seu modelo.
< script src =" bower_components/angular/angular.js " > </ script >
< script src =" bower_components/rltm/web/rltm.js " > </ script >
< script src =" bower_components/angular-chat/angular-chat.js " > </ script > var chat = angular . module ( 'BasicChat' , [ 'chat' ] ) ; Para usar o AngularJS-Chat, você deve configurar uma conexão com um serviço em tempo real. Esta biblioteca inclui o RLTM.JS como uma dependência que permite alternar entre provedores de serviços em tempo real como Socket.io e Pubnub facilmente. Recomendamos a instalação do Pubnub para começar rapidamente e escalar para o Infinity.
angular . module ( 'chat' ) . constant ( 'config' , {
rltm : {
service : "pubnub" ,
config : {
"publishKey" : "demo" ,
"subscribeKey" : "demo"
}
}
} ) ; O módulo de bate -papo expõe um objeto chamado Messages que inclui um método send e receive .
chat . controller ( 'chat' , [ 'Messages' , '$scope' , function ( Messages , $scope ) {
// Message Inbox
$scope . messages = [ ] ;
// Receive Messages
Messages . receive ( function ( message ) {
$scope . messages . push ( message ) ;
} ) ;
// Send Messages
$scope . send = function ( ) {
Messages . send ( {
data : $scope . textbox
} ) ;
} ;
} ] ) ; Neste controlador, mantemos uma lista de mensagens em $scope.messages e empurram uma nova mensagem sempre que a chamada de chamada Messages.receive() é chamada.
Para enviar uma mensagem pela Internet, usamos o método Messages.send() e o conectamos a `` $ SCOPE.SEND () `` `` para que possamos chamar Bind It to the DOM.
Utilizamos o método $scope.send() e $scope.messages Variable em nossa visão.
< div ng-app =" BasicChat " >
< div ng-controller =" chat " >
< div ng-repeat =" message in messages " >
< strong > {{message.user.name}}: </ strong >
< span > {{message.data}} </ span >
</ div >
< form ng-submit =" send() " >
< input ng-model =" textbox " >
</ form >
</ div >
</ div >Defina alguma identificação para este usuário.
Messages . user ( { id : MY_USER_ID , name : sillyname ( ) } ) ;Envie uma mensagem para outro usuário.
Messages . send ( { to : target_user_id , data : message_body } ) ;Se você deseja IDs de usuário aleatórios transitórios ... você pode publicar a lista de usuários no canal "global" e receber cada usuário que entrou on -line.
Confira /examples/basic/index.html para um exemplo de sala de chat em que todo visitante pode conversar.
Check-out /examples/support-chat/index.html e /examples/support-chat/admin.html para um exemplo de uma sala de bate-papo de suporte incorporada. A página index.html só pode conversar com o usuário no admin.html . A página admin.html cria uma nova instância de uma sala de bate -papo para cada novo usuário no index.html .