-
-
![](/{{ alias }}/uploads/avatar/{{ user.avatar}})
-
-
- {{ user.lastname }} {{ user.firstname }}
+
+
+
+
![](/{{ alias }}/uploads/avatar/{{ member.user.avatar}})
+
+
+ {%if member.fgmanager%}{%endif%}
+ {{ member.user.lastname }} {{ member.user.firstname }}
+
+
{% endfor %}
diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/config/services.yml b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/config/services.yml
index afd6cf98..e90421bd 100644
--- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/config/services.yml
+++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/config/services.yml
@@ -1,4 +1,9 @@
services:
+ cadoles.websocket.pushmessage:
+ public: true
+ class: Cadoles\WebsocketBundle\Service\messageService
+ arguments: ['@service_container','@doctrine.orm.entity_manager','%websocket_activate%']
+
cadoles.websocket.topic:
class: Cadoles\WebsocketBundle\Topic\WebsocketTopic
arguments: ['@gos_web_socket.websocket.client_manipulator','@doctrine.orm.entity_manager','@service_container']
diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/views/Chat/client.html.twig b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/views/Chat/client.html.twig
index c3731080..681c7831 100644
--- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/views/Chat/client.html.twig
+++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Resources/views/Chat/client.html.twig
@@ -79,25 +79,12 @@
var dateoptions = {weekday: "long", year: "numeric", month: "long", day: "numeric", hour: "2-digit", minute: "2-digit" };
- {% if app.user %}
+ {% if websocket_activate and app.user %}
var _WS_URI = "wss://{{ gos_web_socket_server_host }}:{{ gos_web_socket_server_port }}";
- var _WS_URI = "wss://{{ gos_web_socket_server_host }}:5555";
var webSocket = WS.connect(_WS_URI);
- webSocket.on("socket/connect", function (session) {
-
- session.call("websocket/rpc/update_connection_data", {"userkey": "{{userkey}}" }).then(
- function (result)
- {
- //console.log("RPC Valid!", result);
- },
- function (error, desc)
- {
- //console.log("RPC Error", error, desc);
- }
- );
-
+ webSocket.on("socket/connect", function (session) {
//the callback function in "subscribe" is called everytime an event is published in that channel.
session.subscribe("websocket/channel/{{groupid}}", function (uri, payload) {
if(payload.msg) {
@@ -134,7 +121,7 @@
$( "#sendbtn" ).click(function() {
var data = CKEDITOR.instances["chat_message"].getData();
if(data) {
- event={type: "add", message: data};
+ event={mykey: "{{userkey}}", type: "add", message: data};
session.publish("websocket/channel/{{groupid}}", event);
CKEDITOR.instances["chat_message"].setData('');
@@ -145,7 +132,7 @@
$(document).on('click', '.delmessage', function(){
id=$(this).data("id");
- event={type: "del", id: id};
+ event={mykey: "{{userkey}}", type: "del", id: id};
session.publish("websocket/channel/{{groupid}}", event);
diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Service/messageService.php b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Service/messageService.php
new file mode 100644
index 00000000..0ca4c6b3
--- /dev/null
+++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Service/messageService.php
@@ -0,0 +1,27 @@
+container = $container;
+ $this->em = $em;
+ $this->activate_websocket = $activate_websocket;
+ }
+
+ public function send($key,$userid,$groupid,$message) {
+ $pusher = $this->container->get('gos_web_socket.wamp.pusher');
+ $pusher->push(['mykey' => $key, 'type' => 'add', 'message' => $message], 'websocket_topic', ['group' => $groupid]);
+ $pusher->push(['userid' => $userid, 'type' => 'add', 'group' => $groupid], 'websocket_counter');
+ }
+}
diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketCounter.php b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketCounter.php
index 5cb07ff4..7b4b8e59 100644
--- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketCounter.php
+++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketCounter.php
@@ -70,7 +70,8 @@ class WebsocketCounter implements TopicInterface
*/
public function onPublish(ConnectionInterface $connection, Topic $topic, WampRequest $request, $event, array $exclude, array $eligible)
{
- $userid=$connection->userid;
+ if(!is_array($event)) $event=json_decode($event, true);
+ $userid=$event["userid"];
$user=$this->em->getRepository("CadolesCoreBundle:User")->find($userid);
if(!$user)
@@ -80,13 +81,13 @@ class WebsocketCounter implements TopicInterface
if(!$group)
return;
+ /*
$usergroup=$this->em->getRepository("CadolesCoreBundle:UserGroup")->findOneBy(["user"=>$user,"group"=>$group]);
if(!$usergroup)
return;
-
+ */
+
$topic->broadcast([$event["type"] => 1, "group" => $event["group"] , "from" =>$userid]);
-
-
}
/**
diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketTopic.php b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketTopic.php
index f7756de7..0076fa01 100644
--- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketTopic.php
+++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Topic/WebsocketTopic.php
@@ -69,17 +69,18 @@ class WebsocketTopic implements TopicInterface
*/
public function onPublish(ConnectionInterface $connection, Topic $topic, WampRequest $request, $event, array $exclude, array $eligible)
{
- $userkey=$connection->userkey;
$groupid=$request->getAttributes()->get('group');
+ if(!is_array($event)) $event=json_decode($event, true);
$group=$this->em->getRepository("CadolesCoreBundle:Group")->find($groupid);
if(!$group) {
$topic->broadcast(['log' => 'group NOT FIND']);
}
- $usergroup=$this->em->getRepository("CadolesCoreBundle:UserGroup")->findOneBy(['keyvalue'=> $userkey]);
+ $usergroup=$this->em->getRepository("CadolesCoreBundle:UserGroup")->findOneBy(['keyvalue'=>$event["mykey"]]);
if(!$usergroup) {
- $topic->broadcast(['log' => 'user NOT IN GROUP']);
+ $topic->broadcast(['log' => $event]);
+ $topic->broadcast(['log' => 'user '.$event["mykey"].' NOT IN GROUP '.$groupid]);
}
else {
$user=$usergroup->getUser();
diff --git a/tmpl/ninegate-template.yml b/tmpl/ninegate-template.yml
index 846ba35f..9e470262 100644
--- a/tmpl/ninegate-template.yml
+++ b/tmpl/ninegate-template.yml
@@ -38,10 +38,14 @@ parameters:
%end if
%if %%getVar("ninegate_activate_websocket", 'non') == "oui"
websocket_activate: true
- websocket_port: 5555
+ websocket_host: %%ninegate_websocket_url
+ websocket_port: %%ninegate_websocket_portexterne
+ websocket_portinterne: %%ninegate_websocket_portinterne
%else
websocket_activate: false
- websocket_port: 5555
+ websocket_host:
+ websocket_port:
+ websocket_portinterne:
%end if
%if %%getVar("ninegate_activate_portal", 'non') == "oui"
portal_activate: true