anchor.diff:      {Id, Packet} = nksip_stun:binding_request(),
       case gen_udp:send(Socket, Ip, Port, Packet) of
           ok -> 
  +            ?debug(AppId, "sent STUN request to ~p", [{Ip, Port}]),
               Stun = #stun{
                   id = Id,
                   dest = {Ip, Port},
  
positive.code: %% @private Sends a STUN binding request
  send_stun(Pid, Ip, Port) ->
      case catch gen_server:call(Pid, {send_stun, Ip, Port}, 30000) of
          {ok, List} -> 
              case nksip_lib:get_value(xor_mapped_address, List) of
                  {StunIp, StunPort} -> 
                      {ok, StunIp, StunPort};
                  _ ->
                      case nksip_lib:get_value(mapped_address, List) of
                          {StunIp, StunPort} -> {ok, StunIp, StunPort};
                          _ -> error
                      end
              end;
          _ ->
              error
      end.
  
  
  
negative.code:     {noreply, do_stun_retrans(Stun1, State#state{stuns=Stuns1})};
     
  handle_info({timeout, Ref, conn_refresh}, #state{conns=Conns}=State) ->
      State1 = case lists:keyfind(Ref, #conn.refresh_timer, Conns) of
          #conn{}=Conn -> do_connect_refresh(Conn, State);
          false -> State
      end,
      {noreply, State1};
  