2012-04-18 14 views
5

antes de empezar Me doy cuenta de que este problema se ha planteado anteriormente en este foro porque encontré el hilo. Sin embargo, la pregunta no fue respondida.Deseo enviar una notificación DESDE mi iPhone a otro iPhone

Estoy construyendo un sistema usando iPhones como máquinas de trabajo. Lo pronuncio de esta manera porque quiero enfatizar que el teléfono no es un producto de Apple sino un equipo que puede o no realizar una tarea determinada.

Tengo jailbroken ambos teléfonos que estoy usando y los utilizaré exclusivamente para lograr una solución al problema que el sistema se propone resolver. Mi sistema será utilizado por mí y por mí solo, por lo que la cuestión de cómo Apple pretendía que se utilizaran estos dispositivos, la experiencia del usuario, etc. es irrelevante para mí.

Ok, habiendo dicho todo eso, voy a resumir brevemente el sistema. Dos iPhones, uno con sus agallas en un cuadro de proyecto de electrónica clavado sobre mi puerta principal, cámara frente a los visitantes. Otro iPhone, intacto y en mi bolsillo. He enganchado los pines 1 & 11 al botón de timbre de la puerta y alertar al teléfono de que lo esté presionando al monitorear el cambio de ruta de audio. Necesito una aplicación en mi teléfono de bolsillo que será despertado por una notificación enviada por el teléfono de la puerta. El teléfono de la puerta también enviará una imagen una vez que haya aceptado la notificación en mi teléfono de bolsillo. Aquí no hay internet, pero tengo un enrutador wifi al que están conectados ambos teléfonos.

Así que ese es el sistema, he buscado alto y bajo para encontrar el código que me puede ayudar a obtener el teléfono de la puerta para generar una notificación automática y enviarla a mi teléfono de bolsillo, todo lo que he encontrado hasta ahora es https://github.com/stefanhafeneger/PushMeBaby que es lo que necesito solo está escrito para mac, no para iPhone y soy nuevo en Objective C, por lo que portar archivos es muy difícil.

Por favor alguien podría darme una mano para lograr lo que estoy tratando de hacer, sé que Apple no tenía la intención de usar su producto como yo, pero tampoco lo hacen muchos fabricantes, pero los aficionados todavía se las arreglan para usar de maneras cada vez más creativas e innovadoras independientemente. Actualmente estoy usando una PC y una cámara web para ver quién está en la puerta y usa mucha electricidad, el nuevo sistema es mucho mejor si solo puedo hacer que funcione, por favor, si tienes la capacidad/el conocimiento para ayudar a continuación, publico una respuesta y estaré eternamente agradecido. Gracias, Richard.

Respuesta

0

Par los teléfonos con Bluetooth usando GameKit

He aquí un SO pregunta sobre cómo emparejamiento Bluetooth dos iPhones:. How to use bluetooth to connect two iPhone?

La forma más sencilla es utilizar el GameKit muy opaco He aquí un ejemplo de aplicaciones de Apple que logra esto: http://developer.apple.com/library/ios/#samplecode/GKTank/Introduction/Intro.html

Y desde ese ejemplo este recorte que envía los paquetes (en TankViewController.m):

- (void)sendNetworkPacket:(GKSession *)session packetID:(int)packetID withData:(void *)data ofLength:(int)length reliable:(BOOL)howtosend { 
    // the packet we'll send is resued 
    static unsigned char networkPacket[kMaxTankPacketSize]; 
    const unsigned int packetHeaderSize = 2 * sizeof(int); // we have two "ints" for our header 

    if(length < (kMaxTankPacketSize - packetHeaderSize)) { // our networkPacket buffer size minus the size of the header info 
     int *pIntData = (int *)&networkPacket[0]; 
     // header info 
     pIntData[0] = gamePacketNumber++; 
     pIntData[1] = packetID; 
     // copy data in after the header 
     memcpy(&networkPacket[packetHeaderSize], data, length); 

     NSData *packet = [NSData dataWithBytes: networkPacket length: (length+8)]; 
     if(howtosend == YES) { 
      [session sendData:packet toPeers:[NSArray arrayWithObject:gamePeerId] withDataMode:GKSendDataReliable error:nil]; 
     } else { 
      [session sendData:packet toPeers:[NSArray arrayWithObject:gamePeerId] withDataMode:GKSendDataUnreliable error:nil]; 
     } 
    } 
} 
+0

Ok, gracias por el consejo . Lo he aceptado como la respuesta, pero el bluetooth normalmente está apagado en mi teléfono. Sin embargo, no parece haber ninguna forma de hacer esto. No soy un desarrollador de pago de Apple y solo puedo ejecutar mis aplicaciones en mi teléfono porque lo transfiero y uso un tutorial para que pueda implementarlo en mi teléfono desde xcode. La limitación de Internet se ha eliminado ahora, ya que un vecino amable me ha permitido usar su wifi, pero incluso si quisiera usar servidores de Apples, no creo que pueda, ya que no he pagado. Todo parece tan complicado cuando se trata de Apple. –

0

No puedo pensar en una forma fácil de enviar un mensaje directamente de un teléfono al otro. (Aunque no estoy acostumbrado a cosas jailbreak, entonces quién sabe ...). En cualquier caso, esto es lo que haría:

Configure un servidor web simple para la interfaz entre los dos dispositivos. Usted dice que no tiene internet, por lo que ejecutar Apache o lo que sea en una computadora local en la red debería ser el truco. Siempre que quiera enviar un mensaje, el teléfono que lo envía publica algo en el servidor. Desafortunadamente, si no puedes/no quieres usar el servicio de notificación push de Apple, creo que el teléfono receptor tendrá que monitorear constantemente el servidor para ver si hay mensajes nuevos. . :(

+0

Hola Numegil, gracias por la respuesta.Lamentablemente, esto requeriría que una PC esté encendida todo el tiempo y estoy tratando de evitar el uso constante de equipos tanto como sea posible. He leído el proceso de envío de una notificación push aquí http://www.raywenderlich.com/3443 y me parece que, siempre que pueda registrar mi token de dispositivo de teléfono de bolsillo con el teléfono de la puerta, entonces podré generar una notificación de inserción usando el teléfono de la puerta, por favor corrígeme si estoy desviado. Tengo problemas para entender por qué si una PC puede enviar una notificación de inserción, ¿por qué no puede un iphone? :( –

+0

Ok, me parece que me parece imposible enviar una notificación automática de un teléfono a otro, así que tendré que tener una PC en la red todo el tiempo. Todavía no tengo conexión a Internet, así que mi siguiente pregunta es: ¿Cómo voy a enviar una notificación de inserción de la PC al teléfono sin usar los servidores Apples APSN, es decir, me gustaría que mi PC genere la notificación y la envíe directamente a mi teléfono. Codigo en C# para el trabajo y así lo haría Sería genial si pudiera tener mi propio APNS escrito en C#, ¿es esto posible? –

+1

No he profundizado demasiado en esto, por lo que puede o no terminar trabajando para usted, pero podría ser posible conectarse a través de Bluetooth: vea https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/GameKitConcepts/GameKitConcepts.html y http://stackoverflow.com/questions/1427250/how-to-use-bluetooth-to -connect-two-iphone – numegil

Cuestiones relacionadas