Buenas,
Estoy jugando un poco con el presence. Configuré el modulo, etc. La
tabla "watchers" es "poblada", etc. por openser. Pero hay varias cosas que
no entiendo bien.
1.- ¿Relamente, para qué sirve el presence? He estado leyendo y
aparentemente sirve un poco como un a especie de "follow-me"... ejemplo:
Estoy en mi ofi, me pongo en "no disponible" y tengo hecho un forward a
otro softphone... ¿es ésto cierto? No lo entiendo muy bien.
2.- He leído de gente que configura 2 telf y cuando uno se pone en "away",
el otro "lo ve"... ¿Cómo lo ve?
3.- Cuando cambio mi status en un teléfono, no se actualiza el status en
ninguna tabla. Openser recibe el cambio de status:
en la tabla presentity aparece el record con lo siguiente:
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:pp="urn:ietf:params:xml:ns:pidf:person"
xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple"
xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person"
xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status"
xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid"
entity="sip:8889990@sip99.yip.com">
<pp:person>
<status>
<ep:activities>
<ep:activity>busy</ep:activity>
</ep:activities>
</status>
</pp:person>
<note>Busy</note>
<tuple id="t1">
<contact priority="1">sip:8889990@sip99.yip.com</contact>
<status>
<basic>open</basic>
</status>
</tuple>
</presence>
Pero nunca se actualiza en watchers, active_watchers o alguna otra.
Muchas gracias..
David
On Jan 16, 2008 6:39 PM, Iñaki Baz Castillo <ibc(a)in.ilimit.es> wrote:
> On Wednesday 16 January 2008 18:18:08 David Villasmil wrote:
>
> > el comando:
> >
> > select balance, DATE_FORMAT(now(),'%a, %e %b %Y %H:%i:%s EST') from
> > clients where number = 'XXXXXX'
> > Está bien, Hace el query correcto... he agregado fecha y me da esto:
> >
> > Results: <null> - Wed, 16 Jan 2008 12:16:36 EST
>
>
> Esa no es la misma query que antes. En ésta pides dos campos en vez de
> uno, y
> no sé si tiene sentido pedir 2 campos y almacenarlos en un AVP (no estoy
> seguro).
> Haz la prueba con un sólo campo.
>
No, no es el mismo, sólo quiero ver si me da la información... pero tengo
dos campos y dos avp
avp_db_query("select balance, DATE_FORMAT(now(),'%a, %e %b %Y %H:%i:%s EST')
from dbname.clients where number = '$au';","$avp(i:10001);$avp(s:fecha)");
log
3(30519) select balance, DATE_FORMAT(now(),'%a, %e %b %Y %H:%i:%s EST')
from dbname.clients where number = '8114074';
3(30519)
MYSQL Query executed
Results: <null> - Wed, 16 Jan 2008 12:56:44 EST
si me da ese
en mysql ejecuto el mismo query:
mysql> select balance, DATE_FORMAT(now(),'%a, %e %b %Y %H:%i:%s EST') from
dbname.clients where number = '8114074';
+---------+------------------------------------------------+
| balance | DATE_FORMAT(now(),'%a, %e %b %Y %H:%i:%s EST') |
+---------+------------------------------------------------+
| 0.0100 | Wed, 16 Jan 2008 13:00:53 EST |
+---------+------------------------------------------------+
1 row in set (0.00 sec)
mysql>
A ver si alguien me puede ayudar con ésto, no encuentro solución. Tel UA
está cerrado y no lo puedo configurar. El user/pass/realm está bien en el
openser, aquí un trace
OPENSER:
3(29410) SIP Request:
3(29410) method: <REGISTER>
3(29410) uri: <sip:my.domain.com>
3(29410) version: <SIP/2.0>
3(29410) parse_headers: flags=2
3(29410) Found param type 235, <rport> = <n/a>; state=6
3(29410) Found param type 232, <branch> = <z9hG4bK30055>; state=16
3(29410) end of header reached, state=5
3(29410) parse_headers: Via found, flags=2
3(29410) parse_headers: this is the first via
3(29410) After parse_msg...
3(29410) preparing to run routing scripts...
3(29410) parse_headers: flags=100
3(29410) DEBUG:parse_to:end of header reached, state=10
3(29410) DBUG:parse_to: display={}, ruri={sip:123456@my.domain.com}
3(29410) DEBUG: get_hdr_field: <To> [29]; uri=[sip:123456@my.domain.com]
3(29410) DEBUG: to body [<sip:123456@my.domain.com>
]
3(29410) get_hdr_field: cseq <CSeq>: <1> <REGISTER>
3(29410) DEBUG:maxfwd:is_maxfwd_present: value = 70
3(29410) parse_headers: flags=200
3(29410) DEBUG: get_hdr_body : content_length=0
3(29410) found end of header
3(29410) find_first_route: No Route headers found
3(29410) loose_route: There is no Route HF
3(29410)
New Registration
3(29410) parse_headers: flags=4000
3(29410) pre_auth(): Credentials with given realm not found
3(29410) parse_headers: flags=14000
3(29410) xl_get_authattr: Error while parsing headers
3(29410)
Registration FAILED! CLIENT:
3(29410) build_auth_hf(): 'WWW-Authenticate: Digest realm="my.domain.com",
nonce="478bd983f7e6d37c2be680092b6ce99fa0fb5c56"
'
3(29410) parse_headers: flags=ffffffffffffffff
3(29410) check_via_address(1.2.3.4.5, 192.168.1.94, 0)
3(29410) DEBUG:destroy_avp_list: destroying list 0x77bf2e80
3(29410) receive_msg: cleaning up
Un trace tshark:
Session Initiation Protocol
Request-Line: REGISTER sip:sip99.yip.com SIP/2.0
Method: REGISTER
[Resent Packet: False]
Message Header
Via: SIP/2.0/UDP 192.168.1.94:3060;rport;branch=z9hG4bK8843
Transport: UDP
Sent-by Address: 192.168.1.94
Sent-by port: 3060
RPort: rport
Branch: z9hG4bK8843
From: <sip:123456@my.domain.com>;tag=23419
SIP from address: sip:123456@my.domain.com
SIP tag: 23419
To: <sip:123456@my.domain.com>
SIP to address: sip:123456@my.domain.com
Call-ID: 28466(a)192.168.1.94
CSeq: 1 REGISTER
Sequence Number: 1
Method: REGISTER
Contact: <sip:123456@192.168.1.94:3060>
Contact Binding: <sip:123456@192.168.1.94:3060>
URI: <sip:123456@192.168.1.94:3060>
SIP contact address: sip:123456@192.168.1.94:3060
Max-Forwards: 70
User-Agent: Koncept KU2000 3.1.4.781
Expires: 3600
Content-Length: 0
Me da siempre UNAUTHORIZED.
gracias.
Buenas noches a todos.
¿Alguien ha usado el núevo módulo siptrace de la serie 1.3.x?
Estoy intentando montar un guión que permita mediante un parámetro avp
cargado desde usr_preferences, hacer tracing de los mensajes de un
usuario en concreto.
El tema es que nada más activar la carga de siptrace .. empieza a
guardar todo en la base de datos y eso que he puesto el parámetro
trace_on a 0, que se supone que desactiva globalmente el tracing.
Estos son los parámetros que le paso al módulo:
loadmodule "siptrace.so"
modparam("siptrace", "db_url", "postgres://openser:XXX@localhost/openser")
modparam("siptrace", "table", "sip_trace")
modparam("siptrace", "trace_on", 0)
modparam("siptrace", "trace_flag", 31)
modparam("siptrace", "traced_user_avp", "$avp(s:caller_uuid)")
En el guión aún no he modificado nada, pero la intención, como ya he
dicho es que desde avpops, se cargen los avp desde la base de datos y
entre ellos tener un avp llamado sip_trace que permita activar o
desactivar el tracing de los mensajes de un usuario concreto.
¿Creéis que es un método óptimo para hacer el tracing de los mensajes?
¿se os ocurre algo mejor?
Saludos
--
Raúl Alexis Betancor Santana
Dimensión Virtual S.L.
Hola a todos ...
Para ponernos en situación, tengo 2 Openser 1.3.0 a los que los
usuarios atacan por DSN round-robin ó registros SRV, hasta aquí todo
ok.
Ahora ... tengo esto puesto en guión del openser para la
autenticación:
########################################################################
# Request route 'base-route-register'
# ########################################################################
route[11]
{
sl_send_reply("100", "Trying");
if(!www_authorize("", "subscriber"))
{
xlog("L_INFO", "Register authentication failed - M=$rm
RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
www_challenge("", "0");
exit;
}
if(!check_to())
{
xlog("L_INFO", "Spoofed To-URI detected - M=$rm
RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
sl_send_reply("403", "Spoofed To-URI Detected");
exit;
}
consume_credentials();
if(!search("^Contact:[ ]*\*") && nat_uac_test("19"))
{
fix_nated_register();
setbflag(6);
}
if(!save("location"))
{
xlog("L_ERR", "Saving contact failed - M=$rm RURI=$ru
F=$fu T=$tu IP=$si ID=$ci\n");
sl_reply_error();
exit;
}
if(!src_ip==sbc02)
{
t_replicate("sip:sbc02","5060");
};
xlog("L_INFO", "Registration successful - M=$rm RURI=$ru F=$fu
T=$tu IP=$si ID=$ci\n");
exit;
}
**********
¿Es correcto el formato de la llamada a t_replicate()?, lo pregunto
porque según la documentación ese "sip:" sobra .. pero sino lo pongo
el openser se queja en el log de que no puede parsear la uri.
Luego a parte está el tema de que si hago un openserctl ul show .. no
veo que se hayan replicado los registers en ambos servidores.
Agradecería cualquier indicación al respecto del uso de t_replicate()
puesto que la información disponible en la web de openser es harto
inútil sobre esta función.
Saludos
--
Raúl Alexis Betancor Santana
Dimensión Virtual S.L.
Estoy haciendo las pruebas con NAT y estoy con alguna dificultad,
detallo
procedimiento de invite para NAT.
if (is_method("INVITE")) {
if(nat_uac_test("19"))
{
fix_nated_contact();
setbflag(6);
rewritehostport("192.168.0.7:5060");
t_relay();
}
>----Mensaje original----
>De: andresdb(a)adinet.com.uy
>Fecha: 15/01/2008 17:01
>Para: <users-es(a)lists.openser.org>
>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
openser a Asterisk
>
>Les pido disculpas, es que estoy con un web mail.
>
>Saludos,
>
>>----Mensaje original----
>>De: ibc(a)aliax.net
>>Fecha: 15/01/2008 16:03
>>Para: <users-es(a)lists.openser.org>
>>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
>openser a Asterisk
>>
>>Andrés, ninguno de tus correos cuelga del hilo correspondiente, ¿ya
>pulsas
>>en "Responder" cuando respondes a un correo de la lista? es que los
>veo todos
>>como si fuesen nuevos hilos y es imposible seguir el hilo (nunca
>mejor
>>dicho).
>>
>>Entiendo que no pulsas "Responder" ya que no veo la cabecera "In-
>Reply-To" en
>>tus correos, por mucho "Re:" que ponga delante del asunto.
>>
>>¿Qué cliente de correo usas?
>>
>>
>>--
>>Iñaki Baz Castillo
>>
>>_______________________________________________
>>Users-es mailing list
>>Users-es(a)lists.openser.org
>>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>>
>
>
>
>_______________________________________________
>Users-es mailing list
>Users-es(a)lists.openser.org
>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>
Les pido disculpas, es que estoy con un web mail.
Saludos,
>----Mensaje original----
>De: ibc(a)aliax.net
>Fecha: 15/01/2008 16:03
>Para: <users-es(a)lists.openser.org>
>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
openser a Asterisk
>
>Andrés, ninguno de tus correos cuelga del hilo correspondiente, ¿ya
pulsas
>en "Responder" cuando respondes a un correo de la lista? es que los
veo todos
>como si fuesen nuevos hilos y es imposible seguir el hilo (nunca
mejor
>dicho).
>
>Entiendo que no pulsas "Responder" ya que no veo la cabecera "In-
Reply-To" en
>tus correos, por mucho "Re:" que ponga delante del asunto.
>
>¿Qué cliente de correo usas?
>
>
>--
>Iñaki Baz Castillo
>
>_______________________________________________
>Users-es mailing list
>Users-es(a)lists.openser.org
>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>
Por lo que veo en los logs nunca le llega un paquete al asterisk que
este en la lan, SER no sabe hacer llegar un paquete desde la ip PUBLICA
a la ip PRIVADA de la lan de asterisk.
Saludos,
>----Mensaje original----
>De: ibc(a)in.ilimit.es
>Fecha: 15/01/2008 14:50
>Para: <users-es(a)lists.openser.org>
>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
openser a Asterisk
>
>On Tuesday 15 January 2008 18:33:25 andresdb(a)adinet.com.uy wrote:
>> Revisando con tcpdump desde el asterisk nunca le llega un paquete,
no
>> sabe rutear
>> desde la ip publica a la privada,
>
>¿Tal vez querías decir justo lo contrario? O sea:
>"asterisk no sabe rutar de la privada a la pública"
>¿es así? confírmalo ya que la diferencia es importante.
>
>
>--
>Iñaki Baz Castillo
>ibc(a)in.ilimit.es
>
>_______________________________________________
>Users-es mailing list
>Users-es(a)lists.openser.org
>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>
Hola Jesus,
Tu dices que si o si esto se soluciona con nathelper y rtpproxy,
porque el primer
paso que quiero dar es que por lo menos haga ringing sin llegar al
intercambio de rtp. Si no me equivoco el intercambio de RTP es cuando
se atiende la llamada correcto?
Saludos,
>----Mensaje original----
>De: jesusr(a)voztele.com
>Fecha: 15/01/2008 14:36
>Para: "Lista de usuarios de OpenSER"<users-es(a)lists.openser.org>
>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
openser a Asterisk
>
>Hola,
>
>
>> On Tuesday 15 January 2008 17:36:32 andresdb(a)adinet.com.uy wrote:
>>> Adjunto output de ngrep.
>>
>>
>> Fíjate que cuando OpenSer envía el INVITE a Asterisk nunca recibe
>> respuesta y
>> lo reenvía una y otra vez:
>>
>> U 2008/01/15 14:43:54.789503 200.40.xxx.xxx:5060 -> 192.168.0.7:
5060
>> INVITE sip:751@192.168.0.7:5060 SIP/2.0
>> Record-Route: <sip:200.40.xxx.xxx;lr=on;ftag=426df431>
>> Via: SIP/2.0/UDP 200.40.xxx.xxx;branch=z9hG4bK7eaa.c54b1b32.0
>> Via: SIP/2.0/UDP
>> 190.132.174.235:19352;branch=z9hG4bK-d87543-ad46ba1a844e6f5e-1--
>> d87543-;rport=19352
>>
>>
>> - Lo relevante de ahí es que OpenSer tiene dos IP's, la pública y
la
>> privada.
>>
>> - OpenSer envía el INVITE a Asterisk por la eth privada pero
indica
>> en el Via
>> la IP pública (y el UAS receptor, Asterisk) debe responder a la
IP
>> en el Via.
>>
>> - Intuyo un conflicto de rutado. ¿Es la máquina OpenSer también
el
>> router y
>> puerta de enlace de los equipos de la LAN?
>
>
>Por lo que he visto en la configuración, no estás usando ni
nathelper
>ni rtpproxy y en este caso los necesitarás para que Openser pueda
>gestionar correctamente los dos interfaces.
>
>
>Saludos
>JesusR.
>
>------------------------------------
>Jesus Rodriguez
>VozTelecom Sistemas, S.L.
>jesusr(a)voztele.com
>http://www.voztele.com
>Tel. 902360305
>-------------------------------------
>
>
>
>
>
>_______________________________________________
>Users-es mailing list
>Users-es(a)lists.openser.org
>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>
Revisando con tcpdump desde el asterisk nunca le llega un paquete, no
sabe rutear
desde la ip publica a la privada, en este caso el INVITE desde openser
tendria
que ser desde la ip privada, por lo cual no se cual funcion utilizar
como lo indicas Iñaki. Desde el SER puedo llegar al Asterisk ip
192.168.0.7 con icmp.
La pc de SER tiene una ruta para poder llegar a la lan del Asterisk.
Estoy de acuerdo que la solución es que el invite sea por la ip
privada del SER,
si alguien se acuerda de cual es la función se agradece, voy a estar
leyendo documentación para ver si lo podemos sacar.
Alguien tiene esta topología armada, cual sería la recomendación en el
caso de
exponer un asterisk a Internet? lo que queremos es que nuestros
usuarios de asterisk puedan usar la PBX fuera de la oficina, la
solución mas segura que encontré es un proxy con openser.
Saludos,
>----Mensaje original----
>De: ibc(a)in.ilimit.es
>Fecha: 15/01/2008 14:10
>Para: <users-es(a)lists.openser.org>
>Asunto: Re: [OpenSER-Users-ES] Problemas Forward de llamadas de
openser a Asterisk
>
>On Tuesday 15 January 2008 17:36:32 andresdb(a)adinet.com.uy wrote:
>> Adjunto output de ngrep.
>
>
>Fíjate que cuando OpenSer envía el INVITE a Asterisk nunca recibe
respuesta y
>lo reenvía una y otra vez:
>
>U 2008/01/15 14:43:54.789503 200.40.xxx.xxx:5060 -> 192.168.0.7:5060
>INVITE sip:751@192.168.0.7:5060 SIP/2.0
>Record-Route: <sip:200.40.xxx.xxx;lr=on;ftag=426df431>
>Via: SIP/2.0/UDP 200.40.xxx.xxx;branch=z9hG4bK7eaa.c54b1b32.0
>Via: SIP/2.0/UDP
>190.132.174.235:19352;branch=z9hG4bK-d87543-ad46ba1a844e6f5e-1--
d87543-;rport=19352
>
>
>- Lo relevante de ahí es que OpenSer tiene dos IP's, la pública y la
privada.
>
>- OpenSer envía el INVITE a Asterisk por la eth privada pero indica
en el Via
>la IP pública (y el UAS receptor, Asterisk) debe responder a la IP en
el Via.
>
>- Intuyo un conflicto de rutado. ¿Es la máquina OpenSer también el
router y
>puerta de enlace de los equipos de la LAN?
>
>- También hay que ver cómo reacciona Asterisk porque o bien ni
siquiera
>responde o bien la respuesta es enviada pero no llega a la máquina
OpenSer de
>ninguna forma (no se ve en el ngrep). Para ello habilita el sip debug
en
>Asterisk:
> CLI>sip set debug on
> CLI>core set debug 4
> CLI>core set verbose 4
>y captura lo que ocurre en el INVITE fallido.
>
>- Por cierto, el peer de OpenSer en Asterisk, ¿está definido con
nat=yes?
>
>
>
>Creo que la solución es que OpenSer ponga en el Via la IP privada por
la que
>sale y creo que existe alguna función para ello, pero no sé ahora
cuál.
>
>
>
>
>--
>Iñaki Baz Castillo
>ibc(a)in.ilimit.es
>
>_______________________________________________
>Users-es mailing list
>Users-es(a)lists.openser.org
>http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>