Nori

Enviado por mourules el Lun, 08/10/2007 - 13:16.
Tipo de licencia:
Apache 2.0
Descripción:

Entorno para la gestión y desarrollo de aplicaciones sobre interfaces WWAN (Wireless WAN). Nori SDK para Windows Vista permite escribir aplicaciones y gadgets para vista sobre este entorno. Podrás controlar todo tipo de tarjetas de datos 2G, 3G y HSDPA y HSUPA.

Enlaces relacionados:

Página del proyecto en Google Code http://code.google.com/p/nori/

AdjuntoTamaño
NoriSDK.pdf118.07 KB

10 comentarios - escribe el tuyo

Estoy haciendo pruebas con Nori y me encuentro problemas con el gadget que se adjunta. ¿Qué datos hay que ponerle para su correcto funcionamiento?. He probado diferentes opciones y no logro que funcione el gadget. Muchas gracias.

Enviado por DarkJJ el Mar, 26/02/2008 - 11:33.

¿A qué problemas te refieres exactamente?. Tienes que tener desactivado el UAC (control de acceso a usuarios) para que funcione; quizá sea ese tu problema.

Enviado por Davizzz el Lun, 03/03/2008 - 15:38.

Hola.

Si, lo tengo desactivado para que pueda funcionar. Probando el Escritorio Movistar el modem 3G funciona correctamente y se conecta. Pero ya con el Nori, no parece funcionar la cosa.

Probando he podido comprobar que la detección del dispositivo y el apagado funciona, pero no consigo establecer conexión. Usando el Gadget de ejemplo, tampoco nada de nada... imagino, más bien supongo, que se debe a los campos de conexión (usuario y pass). Adjunto captura de pantalla.

Pide unos datos que aparecen por defecto como MOVISTAR, supongo que esos datos habrá que cambiarlos por los específicos de usuario (¿nº teléfono?) y pass (¿el que se tiene usando el 770?)... imitando al Escritorio.

Mi duda es esa, muchas gracias.

 

 

 

Enviado por DarkJJ el Mar, 04/03/2008 - 14:31.

Hola,

 

Los parámetros que vienen por defecto son válidos para establecer la conexión. Los campos usuario/contraseña no son los correspondientes a tu usuario del 770. El único que debes incorporar es el del PIN. Si ves que tienes problemas, prueba a desactivar el PIN de tu tarjeta. ¿Te llega a registrar en la red y mostrarte el nivel de cobertura?.

 Un saludo.

Enviado por Davizzz el Mié, 05/03/2008 - 08:09.

Hola.

Gracias por la respuesta. 

Si, lo que es detectar el dispositivo y mostrar la cobertura si he logrado conseguirlo...  pero empleando un código de ejemplo de la conferencia de Barcamp. Lo que es el gadget aun nada.

Los parametros los tengo tal cual salen en el gadget una vez que lo activas y con el PIN puesto, pero no parece que no conecta. He probado con la UPA apagada, el firewall desactivado... y nada.

Para lo de desactivar el PIN, ¿como puedo hacerlo?. Te refieres a que, por ejemplo, en el teléfono al encenderlo no lo solicite sino que directamente se active el mismo, ¿es eso?.

Gracias. 

 

Enviado por DarkJJ el Lun, 10/03/2008 - 15:14.

Hola,

 

Efectivamente, me refería a que no te pida el PIN, de modo que cuando lo "enciendes" se registra directamente. Por simplicidad, puedes desactivar el PIN usando tu teléfono móvil.

El gadget usa código JS y VBS para manejar Nori. Aquí tienes un código de ejemplo para usar desde el IExplorer (ActiveX), realizado por los mismos que han creado el gadget. Si esto te funciona, te debería funcionar el gadget.

Por cierto, ¿qué modem estás utilizando?; supongo que con el Escritorio movistar sí que te conectas....

 

<!DOCTYPE html
     PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>Nori test</title>
    <meta name="GENERATOR" content="Microsoft Visual Studio .NET 8.0" />
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
    <style type="text/css">
        body    {
            width:200px;
            height:300px;
        }
    </style>
<!-- otra forma, pero para recibir eventos no parece funcionar
<script type = "text/javascript">
var nori = new ActiveXObject("Nori.NoriApp");
</script>
-->

    <script type="text/vbscript">

Dim timerID

Sub SetEstado(text)
   Dim elem
   Set elem = document.getElementById("estado_dispositivo")
   elem.innerText = text
End Sub

Sub DisableBtnConnect(disable)
   Dim elem
   Set elem = document.getElementById("boton_conectar")
   if (disable=True) then
     elem.style.visibility = "hidden"
   else
     elem.style.visibility = "inherit"
   end if
End Sub

Sub DisableBtnDisconnect(disable)
   Dim elem
   Set elem = document.getElementById("boton_desconectar")
   if (disable=True) then
     elem.style.visibility = "hidden"
   else
     elem.style.visibility = "inherit"
   end if
End Sub

Sub SetCobertura(strength)
   Dim elem
   Set elem = document.getElementById("cobertura")
   elem.innerText = strength
End Sub

Sub SetOperadora()
   Dim operador, el
   operador = nori.GetNetworkOperator()
   Set el = document.getElementById("operador_red")
   el.innerText = operador
End Sub

Sub SetStatistics()
   Dim bytessent, bytesreceived, segsduration, el
   nori.GetConnectionStatistics bytessent, bytesreceived, segsduration
   Set el = document.getElementById("conexion_tiempo")
   el.innerText = segsduration
   Set el = document.getElementById("conexion_enviado")
   el.innerText = bytessent
   Set el = document.getElementById("conexion_recibido")
   el.innerText = bytesreceived
End Sub

Sub nori_DeviceState(status)
    Dim lock_status
    disable_btn_connect = True
    disable_btn_disconnect = True
    select case status
      case 0
        SetEstado "Dispositivo no detectado"
      case 1
        SetEstado "Inicializando dispositivo"
      case 2
        lock_status = nori.GetDeviceLockStatus()
        If lock_status=2 Then
          SetEstado "Error con la SIM!"
        Elseif lock_status=3 Then
          SetEstado "Introduciendo PIN"
          nori.UnlockDevice 3, "4590", ""
        Elseif lock_status=4 Then
          SetEstado "Se necesita PUK"
        End If
      case 3
        SetEstado "Buscando red..."
        SetOperadora()
      case 4
        SetEstado "Conectando..."
        disable_btn_disconnect = False
      case 5
        SetEstado "Autenticando..."
        disable_btn_disconnect = False
      case 6
        SetEstado "Conectado!"
        disable_btn_disconnect = False
        timerID = SetInterval("SetStatistics", 1000)
      case 7
        SetEstado "Dispositivo preparado"
        SetOperadora()
        disable_btn_connect = False
        ClearInterval(timerID)
        SetStatistics()
      case 8
        SetEstado "Dispositivo apagado"
        SetOperadora()
      case 9
        SetEstado "Apagando dispositivo"
      case 10
        SetEstado "Error en el dispositivo, puerto ocupados o algo así!"
    end select

    DisableBtnConnect disable_btn_connect
    DisableBtnDisconnect disable_btn_disconnect
End Sub

Sub nori_SignalStrength(strength)
   SetCobertura strength
End Sub
    </script>

    <script type="text/javascript">
function QueryLockStatus()
{
  var nori = document.getElementById("nori");
  var lock_status= nori.GetDeviceLockStatus();
  alert("lock status:"+lock_status);
}
function QueryDevStatus()
{
  var nori = document.getElementById("nori");
  var dev_status= nori.GetDeviceStatus();
  alert("device status:"+dev_status);
}
function Shutdown()
{
  var boton = document.getElementById("boton_apagar");
  var nori = document.getElementById("nori");

  var status = nori.GetDeviceStatus();
  if (status==8){
    nori.SwitchOnDevice();
    boton.value = "Shutdown"
  }
  else if (status!=0){
    nori.ShutdownDevice();
    boton.value = "SwitchOn"
  }
}
function Connect()
{
    var connection = new ActiveXObject("Nori.NoriConnection");
    connection.Username = "MOVISTAR";
    connection.Password = "MOVISTAR";
    connection.APN = "movistar.es";
    connection.UseDNS = 1;
    connection.PrimaryDNS = 0xC2B30164; // 194.179.1.100
    connection.SecondaryDNS = 0xC2B30165; // 194.179.1.101
    connection.UseIPAddress = 0;
    connection.NoAllowPAP = 0;

    nori.Connect("movistar 3G", connection);
}
function Disconnect()
{
    nori.Disconnect();
}
    </script>

</head>
<body>
    <p>
        Test Nori!</p>
    <span>Estado dispositivo:</span> <span id="estado_dispositivo"></span>
    <br />
    <span>Operador red:</span> <span id="operador_red"></span>
    <br />
    <span>Cobertura:</span> <span id="cobertura">0</span>
    <br />
    <span>Tiempo de conexión:</span> <span id="conexion_tiempo">0</span>
    <br />
    <span>Enviado:</span> <span id="conexion_enviado">0</span>
    <br />
    <span>Recibido:</span> <span id="conexion_recibido">0</span>
    <p>
        <input id="boton_conectar" type="button" value="Connect" onclick="Connect()" />
        <input id="boton_desconectar" type="button" value="Disconnect" onclick="Disconnect()" />
    </p>
    <p>
        <input id="boton_apagar" type="button" value="Shutdown" onclick="Shutdown()" />
    </p>
    <object id="nori" width="0" height="0" classid="CLSID:524AF294-422F-4E87-B875-ED51F3E4DA4A">
    </object>
</body>

<script type="text/vbscript">
  nori_DeviceState(nori.GetDeviceStatus())
</script>

</html>
 

Enviado por Davizzz el Mié, 12/03/2008 - 13:12.

Hola.

Muchas gracias por la ayuda, el modem es Huawei E270.

Lo raro es que a pesar de instalarlo con el Escritorio, cada vez que lo vuelvo a conectar me toca "reinstalarlo" porque solo me detecta "Almacenanmiento masivo". Lo que hago es instalarlo desde el Escritorio, ¿sabes donde puedo bajar los drivers?.

El PIN esta inhabilitado, entra directo el asunto... por seguridad lo pongo en los datos del gadget, pero no creo que sea necesario. 

Lo he estado probando con IExplorer, creo que el ultimo pero no logro verle la version. 

Con el escritorio Movistar conecto, por eso no problema creo... debe ser algo que tenía en el código o algo.

Muchas gracias por la ayuda... al final me llamas "pelota" de tanto dártelas.  

 

Enviado por DarkJJ el Mié, 12/03/2008 - 16:32.

Hola,

 No hay problema, si podemos ayudar en algo....

Ese equipo sólo funciona si instalas la versión de EM que tiene embebida. Si lo que haces es instalar el EM descargado de la web y seleccionas los drivers de Huawei, se te va a quedar cuando lo conectes como "Almacenamiento masivo". Para que conmute a módem deberías desinstalar manualmente la interfaz mass storage y CD-ROM. Esto lo tendrías que hacer cada vez que lo conectes. Por eso te recomiendo que dejes que se autoinstale el equipo. Para ello desinstala la versión que te has instalado por tu cuenta.

Por otro lado, para que te funcione el gadget y demas código que hagas, tienes que tener cerrada la aplicación EM (creo que eso no lo habíamos comentado aún), aunque sí puedes mantener en paralelo todas las aplicaciones que te crees usando la API de Nori.

Un saludo

 

Enviado por Davizzz el Vie, 14/03/2008 - 07:40.

Se me pasó comentarte que en la web de movistar

http://www.movistar.es/particulares/servicios/descargaaplicaciones

 

podrás encontrar una sección de actualización de dispositivos. En unos días podrás encontrar una para el E270 que te permitirá actualizar el contenido para que autoinstale la versión 6.1 de EM.

Enviado por Davizzz el Vie, 14/03/2008 - 08:03.

Hola.

Muchas gracias por la ayuda, ya logré hacer funcionar el ejemplo de prueba que acompaña al gadget de Nori y va perfecto.

El único problema es con los drivers, como comentaba. Aun no ha salido en la página que comentas, pero iré fijándome. 

 Muchas gracias por todo, y disculpa la tardanza en contestar. 

Enviado por DarkJJ el Vie, 25/04/2008 - 09:16.