anchor.diff:  
   reg_sub_session(SessionId) ->
           gen_server:call(?MODULE, {reg_sub_session, SessionId}).
  +
  +send_message(SessionId, TopicId, Text) ->
  +        gen_server:call(?MODULE, {send_message, {SessionId, TopicId, Text}}).
   
   % gen_server callbacks
   init(_Args) ->
  
positive.code: % API
  -export([start_link/0, stop/0]).
  -export([reg_sub_session/1]).
  
  % gen_server callbacks
  -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]).
  
negative.code:                         Pid
                       end,
          erlchat_session:reg_sub_session(SessionPid, From),
          {reply, {ok, SessionPid}, State};
  
  handle_call({send_message, {SessionId, TopicId, Text}}, _From, State) ->
          SessionPid = gproc:lookup_local_name(SessionId),
          {reply, ok, State}.
  
  handle_cast(_Request, State) ->
          {noreply, State}.
  